Nodes Browser
ComfyDeploy: How qq-nodes-comfyui works in ComfyUI?
What is qq-nodes-comfyui?
Nodes:Any List, Image Accumulator Start, Image Accumulator End, Load Lines From Text File, XY Grid Helper, Slice List, Axis To String/Int/Float/Model, ...
How to install it in ComfyDeploy?
Head over to the machine page
- Click on the "Create a new machine" button
- Select the
Edit
build steps - Add a new step -> Custom Node
- Search for
qq-nodes-comfyui
and select it - Close the build step dialig and then click on the "Save" button to rebuild the machine
qq-nodes-comfyui
Custom nodes for comfyui
Install
Clone repo into your custom_nodes folder in comfyui
XY Grid
Required custom mode packages
- https://github.com/LEv145/images-grid-comfy-plugin ( used behind the scene through node expansion )
- https://github.com/WASasquatch/was-node-suite-comfyui ( for this specific workflow example, can be used without it )
Workflow example
XY Grid over prompt and cfg value
Usage instructions
Click the reset button in the XY Grid Helper node before starting a run to make a grid. Queue up prompts equal to the number of images required in the grid. The reset button in the XY Grid helper node will show the total amount of images in the grid after the first Prompt is queued up and what the current count is up to so queue up prompts until the counter and total are the same. For instance (4 of 4).
Additional workflow examples
Sampler Grid Using combo widgets in the grid, like sampler_name
Axis Packing Grid Using axis packing to pass multiple items into an axis, in this case a unet, clip and vae
Custom AxisTo converters
If you want to use other input/output types then the ones already supported by the library through the AxisToXXX converter nodes you can add the type you want to the custom-axis-config-json file locally and it will automatically generate a AxisTo converter node for this type.
Nodes
XY Grid Helper
The node takes in a LIST for the row values and column values each and will iterate through each combination of them. To be able to use the row and column value output since the type of them are unknown one of the "Axis To X" nodes has to be used to convert to the correct type that can be connected to whatever other node you want to send the values to.
"row_prefix, "column_prefix" you can set text that will be added before related label in the grid
"page_size" sets how many rows to generate before outputting the grid image, grids can become very large with high resolution images so can be a good idea to split them into smaller grids using this
"label_length" sets the max character length before the label will be broken into multiple lines
"font_size" font size for the labels of the grid axis
"grid_gap" size of the gap between images in the grid
Click the reset button before starting a new run to make a XY grid, as you queue up prompts it will show how many images need to be queued to finish the grid
XY Grid Accumulator
Accumulates images for the grid and stop the execution of the downstream connected nodes until the grid is finished.
Uses node expansion to inject the images-grid-comfy-plugin nodes behind the scene to generate the grid.
As images are generated the node will show a preview of all images generated so far so you can inspect them.
Grid nodes
Refer to https://github.com/LEv145/images-grid-comfy-plugin for more information
Any List
Convert any type into a LIST of that type
Text Splitter
Simple node that just takes a string and splits it on some delimiter into a LIST that can be passed into a row/col. Use Axis to String on the output side and then convert the string to whatever type you need using for instance WAS nodes.
Load Lines From Text File
Utility node to make it easier to load prompts etc directly from a text file into a LIST for use with the XY Grid Helper. Put text file in your comfyui input/ folder
Axis Packing
If you want to change multiple things in a row or column you can use the Axis Pack node to pack all the values you want to use and send that into the AnyList. On the output side of the XYGridHelper you then use Axis Unpack node to split the row/column into its components again.
Axis Pack node also allows you to set the label that will be used in the final grid image. So you can also use the node with just 1 input if you want to control the label
Any to Any
WARNING: this is very hacky and disables all type checking in comfy so if you send in anything wrong you will not get any warnings and behaviour might be pretty random depening on what node you connect to.
This node should be able to take in any value (does not work with primitive node or reroute nodes) and connect to any other node regardless of if the types are compatible or not.