Hello there and thanks for checking out this workflow!
What's new in v27? : Major rework with new SubGraphs to streamline and compact the workflow even more, removal of outdated/broken nodes + fixes and optimizations all over!
—Purpose—
Built to provide an advanced, versatile and modular workflow for Flux with focus on efficiency, structure and information.
It comes with many notes explaining node settings and recommendations, as well as general guides from instructions to troubleshooting.
—Features—
Convenient loaders for all common versions of Flux and Clip models
Full metadata; recognized by CivitAI
LoRA support
SageAttention, EasyCache + Model Compile acceleration
ControlNet with Union support
Flux Tools LoRAs Canny + Depth (alt. to CNet based on LoRA)
Flux Redux (similar to IPAdapter)
PuLID (SVDQuant version only)
Wildcard prompting
Installation and download guide for models and nodes
multiple passes with optional upscales
— 1st : Detail Daemon + Variation Seed
— 2nd : DD. + Tiled Diffusion / UltimateSDUpscale
— ADetailer with dedicated LoRA Loader
— Inpainting
—Custom Nodes—
ComfyUI-nunchaku — SVDQuant version only
All of which can be installed through the ComfyUI-Manager
—Troubleshooting—
If nodes show up red (failing to load), check the 'Install Missing Custom Nodes' tab of the ComfyUI Manager for the missing node packs and install them.
Please check if all custom node packs load properly after installing, i.e. no
(IMPORT FAILED)messages next to any of them in the console upon ComfyUI startup.Always reload/drag'n'drop the original, downloaded workflow file into ComfyUI to reload an intact version of the workflow.
→ The last opened workflow that appears on startup shows a cached version of the workflow, "remembering" group nodes that failed due to missing nodes as failed, keeping them broken even after having everything installed correctly.
—Thanks—
The workflow would not be possible as is without these custom node packs. If you want to support the custom node creators, give them a ⭐ on their github repos! Thank you!
Feel free to ask questions, share improvements and suggestions in the comment section!
Let me know if you encounter confusing points I can elaborate on in the next update!
Description
v18
— rework of 1st Pass; replaced NInjA with Detail Daemon Sampling
— addition of randomized image loaders for Redux and PuLID
— custom node pack changes :
+ : ComfyUI-Detail-Daemon
FAQ
Comments (17)
In different versions there are errors when loading llama, and problem VLM and
ding the graph, the following node types were not found
StructuredOutput
SimpleText
workflowLLava Loader
workflowSampler — Detail Daemon
Errors console:
ERROR: llama_cpp_python-0.3.5-metal-cp312-cp312-win_amd64.whl is not a valid wheel filename.
------------
ERROR: Exception:
Traceback (most recent call last):
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\cli\base_command.py", line 105, in runwrapper
status = innerrun()
^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\cli\base_command.py", line 96, in innerrun
return self.run(options, args)
^^^^^^^^^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\cli\req_command.py", line 67, in wrapper
return func(self, options, args)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\commands\install.py", line 379, in run
requirement_set = resolver.resolve(
^^^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\resolution\resolvelib\resolver.py", line 95, in resolve
result = self._result = resolver.resolve(
^^^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_vendor\resolvelib\resolvers.py", line 546, in resolve
state = resolution.resolve(requirements, max_rounds=max_rounds)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_vendor\resolvelib\resolvers.py", line 397, in resolve
self._add_to_criteria(self.state.criteria, r, parent=None)
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_vendor\resolvelib\resolvers.py", line 173, in addto_criteria
if not criterion.candidates:
^^^^^^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_vendor\resolvelib\structs.py", line 156, in bool
return bool(self._sequence)
^^^^^^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\resolution\resolvelib\found_candidates.py", line 174, in bool
return any(self)
^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\resolution\resolvelib\found_candidates.py", line 162, in <genexpr>
return (c for c in iterator if id(c) not in self._incompatible_ids)
^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\resolution\resolvelib\found_candidates.py", line 53, in iterbuilt
candidate = func()
^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\resolution\resolvelib\factory.py", line 187, in makecandidate_from_link
base: Optional[BaseCandidate] = self._make_base_candidate_from_link(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\resolution\resolvelib\factory.py", line 233, in makebase_candidate_from_link
self._link_candidate_cache[link] = LinkCandidate(
^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\resolution\resolvelib\candidates.py", line 304, in init
super().__init__(
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\resolution\resolvelib\candidates.py", line 159, in init
self.dist = self._prepare()
^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\resolution\resolvelib\candidates.py", line 236, in _prepare
dist = self._prepare_distribution()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\resolution\resolvelib\candidates.py", line 315, in preparedistribution
return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\operations\prepare.py", line 527, in prepare_linked_requirement
return self._prepare_linked_requirement(req, parallel_builds)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\operations\prepare.py", line 642, in preparelinked_requirement
dist = getprepared_distribution(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\operations\prepare.py", line 72, in getprepared_distribution
abstract_dist.prepare_distribution_metadata(
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\distributions\sdist.py", line 56, in prepare_distribution_metadata
self._install_build_reqs(finder)
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\distributions\sdist.py", line 126, in installbuild_reqs
build_reqs = self._get_build_requires_wheel()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\distributions\sdist.py", line 103, in getbuild_requires_wheel
return backend.get_requires_for_build_wheel()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_internal\utils\misc.py", line 701, in get_requires_for_build_wheel
return super().get_requires_for_build_wheel(config_settings=cs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_vendor\pyproject_hooks\_impl.py", line 166, in get_requires_for_build_wheel
return self._call_hook('get_requires_for_build_wheel', {
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_vendor\pyproject_hooks\_impl.py", line 321, in callhook
raise BackendUnavailable(data.get('traceback', ''))
pip._vendor.pyproject_hooks._impl.BackendUnavailable: Traceback (most recent call last):
File "F:\ComfyUI\python_embeded\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 77, in buildbackend
obj = import_module(mod_path)
^^^^^^^^^^^^^^^^^^^^^^^
File "importlib\__init__.py", line 90, in import_module
File "<frozen importlib._bootstrap>", line 1387, in gcdimport
File "<frozen importlib._bootstrap>", line 1360, in findand_load
File "<frozen importlib._bootstrap>", line 1310, in findand_load_unlocked
File "<frozen importlib._bootstrap>", line 488, in callwith_frames_removed
File "<frozen importlib._bootstrap>", line 1387, in gcdimport
File "<frozen importlib._bootstrap>", line 1360, in findand_load
File "<frozen importlib._bootstrap>", line 1324, in findand_load_unlocked
ModuleNotFoundError: No module named 'scikit_build_core'
Hey there, when starting ComfyUI up, does your console log show any (IMPORT FAILED) errors next to any of the custom node packs?
@redpinkretro yes (IMPORT FAILED): F:\ComfyUI\ComfyUI\custom_nodes\ComfyUI_VLM_nodes-main
66.3 seconds (IMPORT FAILED): F:\ComfyUI\ComfyUI\custom_nodes\ComfyUI_VLM_nodes
@psy_krivedko468 I just took a look at the github issues and one was just opened a couple of hours before with a problem that looks like the issue you're facing.
Install issue invalid wheel name...
Until the node pack author has a fix for that, you could revert back to an earlier snapshot, if you had it installed already, or deleting the section out of the workflow, which has no repercussions for any other parts of the workflow.
To compensate for the missing functionality, you could temporarily outsource the prompting assistance to something like the free to use GPT-4o mini
@redpinkretro thanks, I'll wait
Hey brother,
First of all, thank you for the effort you put into all those workflows.
I’m encountering a small issue with custom nodes—some of them seem to be missing, probably due to naming discrepancies in the workflow file.
Here’s what the Missing Node Types tab says:
"workflowStats Preview III
workflowSampler — Detail Daemon
workflowSampler — Tiled Diffusion —OR— Ultimate Upscale IV
workflowADetailer — AIO
workflowInpainting — AIO
workflowFlux Redux — AIO
workflowFlux Tools — Canny + Depth
workflowControlNet — AIO II
workflowCore Settings III"
I’ve checked, and I do have all of these installed.
The good news is that I can manually replace them directly in the UI, but I might need a full screenshot of the v18 (latest) workflow if possible.
I’ve uploaded screenshots of the red nodes I need to replace: https://we.tl/t-FsN9taksG5 .However, I think it might be easier for you to take a full screenshot instead.
And one more question: Is there a list of all the checkpoints, models, LoRA, and other files you’re using so that everything can work on my side instantly?
I really like the realistic photos from your profile, such as these:
- https://civitai.com/images/38919074
- https://civitai.com/images/42284410
- https://civitai.com/images/40523482
Realistic photos with my face LoRA and clear detailed background is what I'm trying to achieve.
Thanks in advance!
Hey there, thank you for the kind words 🙏
By the looks of it all you need to do is to reload the original downloaded workflow file and you should be fine. 👌
About checkpoints/LoRAs: I use Jib Mix Flux a lot, which does a great job at detailed and matte skin that doesn't look artificially glossy, which is an issue Flux often has with multiple passes especially. Also extremely noticeable on the Schnell version.
But in general a lot comes down to prompts and settings. I try to have accurate metadata on my uploads, so you can see the way I prompt and which LoRAs I used. But things like Flux Tools Redux or PuLID are not caught by that of course unfortunately.
Something you can do is look through images of various checkpoints and check every one you like, in hopes of it having metadata, and look for patterns like used LoRAs or prompting styles/phrases etc.
Flux is really great at realism in general. I find it takes more effort to create drawn/painted styles.
Another thing I also did was to have vision models caption images I liked to potentially find some new words/expressions to try prompting with.
I had almost exactly the same list of nodes that would not load on startup. I just assume it is me and try to figure it out. Have you ever found why certain nodes won't load and have to be readded?
@redpinkretro You were absolutely right about reloading the workflow 😅. Everything is "green" now, and I’ll test it soon. Thank you for the Jib Mix Flux checkpoint! I didn’t have this one in my models yet, but I’ll add it now.
Regarding captioning, yes, I was previously using Joy Caption to align closely with the reference images I like. It works really well with ControlNet and depth.
I’ll send you a tip now to support your work.
Cheers, mate! 😃
@dmskilla3652 When nodes fail to load it's usually due to node packs missing or failing to import. In case of (IMPORT FAILED) errors next to the custom nodes, you can take a look at their respective github repositories for potential extra installation instructions and also check the issues for potential reports on the same issue you're facing and eventual fixes or temporary solutions.
In the case above all node packs were installed and imported correctly.
What happened there was a weird ComfyUI behavior occuring when group nodes fail to load. This example shows the issue:
workflowCore Settings III
which should be:
workflow>Core Settings III
When you start Comfy up it loads the last workflow from cache, which in case of failed group nodes results in the > symbol being dropped for whatever reason, causing the nodes to continue missing even despite having everything necessary in place.
Manually adding the nodes from the menu does not really work unfortunately, as all values are reset, even ones preset by me when I built and saved the group node, so it will only produce a dummy version of the node in question.
@Hogar315 Glad to hear that!
Well, you got to thank J1B for it, when you're pleased with the results 😀
Yes, Joy Caption works great for that, better than Florence2 in most cases!
Thank you very much for the support! 🙏🙌
@redpinkretro thank you for that very through explanation, it 'magically' started working and I have learned so much from how you put this workflow together. Thank you for all you have done. Sorry for thread jacking :)
@dmskilla3652 That's great! Comfy giveth and Comfy taketh sometimes 😄
The group node issue even happened to myself once just a couple minutes after building them, so that kind of magic goes both ways unfortunately.
Thank you for the kind words! Glad it's helpful 🙌
@redpinkretro I attempted to launch your workflow, but ComfyUI is unable to locate the following nodes:
InversionDemoLazyIndexSwitch
(In group node 'workflow > ControlNet — AIO II')
workflow > ControlNet — AIO II
InversionDemoLazySwitch
(In group node 'workflow > Proc. Preview')
workflow>Proc. Preview
workflow>Stats Preview III
workflow>Core Settings III
workflow>Sampler — Tiled Diffusion —OR— Ultimate Upscale IV
workflow>Flux Redux — AIO
workflow>Flux Tools — Canny + Depth
workflow>ControlNet — AIO
workflow>Stats Preview
workflow>Core Settings
workflow>Sampler — Tiled Diffusion —OR— Ultimate Upscale
workflow>ADetailer — AIO
workflow>Inpainting — AIO
workflow>Sampler — Detail Daemon
It seems that many essential nodes are missing. I understand I'm not the only one encountering this issue, but could you kindly guide a beginner on how to resolve this?
I’ve already tried using the Install Missing Custom Nodes feature, update all, restart, but it did not resolve the issue. A Google search led me to this comment.
I would greatly appreciate it if you could provide step-by-step instructions or a clear explanation on how to make the workflow operational.
Thank you in advance for your help!
@Uberkoly Hey there, thank you for the feedback. I am working on a general troubleshooting article to navigate all the common pitfalls of ComfyUI that will hopefully be concise yet detailed enough to be of use. 🤞
About your issue:
1.) Are all the nodes listed under the Custom Nodes section installed?
→ Note that not all node packs are picked up automatically by the missing nodes check and some require manual installation as described in the Custom Nodes section.
2.) Do the nodes load correctly, i.e. no (IMPORT FAILED) messages next to the node pack names when looking through the ComfyUI console during startup?
3.) Make sure to load the originally downloaded workflow file manually upon restarting ComfyUI, when fixing issues like this.
v18 is working perfectly. I havent tried all the options yet but the basics are just great! Good work man!
Thank you very much! Glad you like it 🙏



















