diff --git a/backend/data/workflow_rewrite_expert.json b/backend/data/workflow_rewrite_expert.json index f0387d6..97a838b 100644 --- a/backend/data/workflow_rewrite_expert.json +++ b/backend/data/workflow_rewrite_expert.json @@ -27,7 +27,7 @@ { "name": "flux风格特征迁移", "description": "当用户在使用flux的工作流并提及风格特征迁移时优先推荐该节点,该类节用途主要应用于flux工作流的图片风格特征迁移和提取,风格转换,两张图片参考迁移,重绘遮罩区域或重绘背景,使用时请先分析是否为flux工作流", - "content": "{\n \"1\": {\n \"inputs\": {\n \"downsampling_factor\": 3,\n \"downsampling_function\": \"area\",\n \"mode\": \"center crop (square)\",\n \"weight\": 1,\n \"autocrop_margin\": 0.1,\n \"style_model\": [\n \"2\",\n 0\n ],\n \"clip_vision\": [\n \"3\",\n 0\n ]\n },\n \"class_type\": \"ReduxAdvanced\",\n \"_meta\": {\n \"title\": \"ReduxAdvanced\"\n }\n },\n \"2\": {\n \"inputs\": {\n \"style_model_name\": \"flux1-redux-dev.safetensors\"\n },\n \"class_type\": \"StyleModelLoader\",\n \"_meta\": {\n \"title\": \"Load Style Model\"\n }\n },\n \"3\": {\n \"inputs\": {\n \"clip_name\": \"sigclip_vision_patch14_384.safetensors\"\n },\n \"class_type\": \"CLIPVisionLoader\",\n \"_meta\": {\n \"title\": \"Load CLIP Vision\"\n }\n }\n}" + "content": "需要注意:Flux_redux是多个节点连接的组合,针对reduxadvanced节点中condition、style_model、clip_vision这三类属于必须连接项、image可以选择加载图片或从vaedeconde后面接入、mask类型属于选择性连接,当用户提到遮罩或限定区域重绘时需要连接,其他情况请按照下述json进行参考改写。\n{\n \"1\": {\n \"inputs\": {\n \"downsampling_factor\": 3,\n \"downsampling_function\": \"area\",\n \"mode\": \"center crop (square)\",\n \"weight\": 1,\n \"autocrop_margin\": 0.1,\n \"style_model\": [\n \"2\",\n 0\n ],\n \"clip_vision\": [\n \"3\",\n 0\n ]\n },\n \"class_type\": \"ReduxAdvanced\",\n \"_meta\": {\n \"title\": \"ReduxAdvanced\"\n }\n },\n \"2\": {\n \"inputs\": {\n \"style_model_name\": \"flux1-redux-dev.safetensors\"\n },\n \"class_type\": \"StyleModelLoader\",\n \"_meta\": {\n \"title\": \"Load Style Model\"\n }\n },\n \"3\": {\n \"inputs\": {\n \"clip_name\": \"sigclip_vision_patch14_384.safetensors\"\n },\n \"class_type\": \"CLIPVisionLoader\",\n \"_meta\": {\n \"title\": \"Load CLIP Vision\"\n }\n }\n}" }, { "name": "sdxl特征迁移", @@ -36,8 +36,8 @@ }, { "name": "扩图", - "description": "给我一个扩图链路(包括图像加载和图像输出)", - "content": "{\n \"1\": {\n \"inputs\": {\n \"image\": \"01.JPG\"\n },\n \"class_type\": \"LoadImage\",\n \"_meta\": {\n \"title\": \"$image.image!:The image to analyze, must be a url\"\n }\n },\n \"2\": {\n \"inputs\": {\n \"model\": \"runwayml/stable-diffusion-xl-base-1.0\",\n \"precision\": \"fp16\",\n \"attention\": \"sdpa\"\n },\n \"class_type\": \"DownloadAndLoadModel\",\n \"_meta\": {\n \"title\": \"DownloadAndLoadModel\"\n }\n },\n \"3\": {\n \"inputs\": {\n \"prompt\": \"A beautiful girl with long hair and a white dress\",\n \"image\": [\n \"1\",\n 0\n ],\n \"model\": [\n \"2\",\n 0\n ]\n },\n \"class_type\": \"StableDiffusionXLRun\",\n \"_meta\": {\n \"title\": \"StableDiffusionXLRun\"\n }\n },\n \"4\": {\n \"inputs\": {\n \"image\": [\n \"3\",\n 0\n ]\n },\n \"class_type\": \"easy showImage\",\n \"_meta\": {\n \"title\": \"Show Image\"\n }\n }\n}" + "description": "对图片进行外补扩充,使其图片可以扩充到指定的尺寸大小且外扩像素的内容能够跟原图风格保持一致,常应用于场景图片扩充、将图片外扩填充,当用户提及到扩图、图片外补、将图片扩充到指定尺寸等需求时优先推荐该类工作流", + "content": "这里要注意参考一下几个节点的值,加载的图片输入必须连接到pad image for outpaintng和Getresolution两个节点上面,输入的方式可以为load_image或者从当前画布的图片输出中连接。针对于图片的上下左右四个方向进行自定义支持计算根据用户描述进行对应的数值换算,除此之外,该工作流以Flux_fiil作为扩图原理,详细的流程请参考一下json,结合用户需求来进行改写,当使用该经验时严格按照一下上述描述和以下json流程进行改写。\n{\n \"id\": \"79aace38-7851-4b96-bd56-af64f0d7dfab\",\n \"revision\": 0,\n \"last_node_id\": 23,\n \"last_link_id\": 28,\n \"nodes\": [\n {\n \"id\": 2,\n \"type\": \"FluxGuidance\",\n \"pos\": [\n 2872.55078125,\n 689.3768310546875\n ],\n \"size\": [\n 220,\n 58\n ],\n \"flags\": {},\n \"order\": 7,\n \"mode\": 0,\n \"inputs\": [\n {\n \"label\": \"条件\",\n \"name\": \"conditioning\",\n \"type\": \"CONDITIONING\",\n \"link\": 1\n }\n ],\n \"outputs\": [\n {\n \"label\": \"条件\",\n \"name\": \"CONDITIONING\",\n \"type\": \"CONDITIONING\",\n \"slot_index\": 0,\n \"links\": [\n 18\n ]\n }\n ],\n \"properties\": {\n \"cnr_id\": \"comfy-core\",\n \"ver\": \"0.3.51\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"FluxGuidance\"\n },\n \"widgets_values\": [\n 30\n ]\n },\n {\n \"id\": 3,\n \"type\": \"CLIPTextEncode\",\n \"pos\": [\n 2887.37939453125,\n 797.4251708984375\n ],\n \"size\": [\n 210,\n 76\n ],\n \"flags\": {},\n \"order\": 0,\n \"mode\": 0,\n \"inputs\": [\n {\n \"label\": \"CLIP\",\n \"name\": \"clip\",\n \"type\": \"CLIP\",\n \"link\": null\n }\n ],\n \"outputs\": [\n {\n \"label\": \"条件\",\n \"name\": \"CONDITIONING\",\n \"type\": \"CONDITIONING\",\n \"links\": [\n 1,\n 16\n ]\n }\n ],\n \"properties\": {\n \"cnr_id\": \"comfy-core\",\n \"ver\": \"0.3.51\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"CLIPTextEncode\"\n },\n \"widgets_values\": [\n \"\"\n ]\n },\n {\n \"id\": 6,\n \"type\": \"VAEDecode\",\n \"pos\": [\n 3464.810791015625,\n 875.4022827148438\n ],\n \"size\": [\n 140,\n 46\n ],\n \"flags\": {},\n \"order\": 18,\n \"mode\": 0,\n \"inputs\": [\n {\n \"label\": \"Latent\",\n \"name\": \"samples\",\n \"type\": \"LATENT\",\n \"link\": 4\n },\n {\n \"label\": \"VAE\",\n \"name\": \"vae\",\n \"type\": \"VAE\",\n \"link\": 5\n }\n ],\n \"outputs\": [\n {\n \"label\": \"图像\",\n \"name\": \"IMAGE\",\n \"type\": \"IMAGE\",\n \"slot_index\": 0,\n \"links\": [\n 28\n ]\n }\n ],\n \"properties\": {\n \"cnr_id\": \"comfy-core\",\n \"ver\": \"0.3.51\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"VAEDecode\"\n }\n },\n {\n \"id\": 7,\n \"type\": \"KSampler\",\n \"pos\": [\n 3449.30126953125,\n 561.646728515625\n ],\n \"size\": [\n 272.61431884765625,\n 262\n ],\n \"flags\": {},\n \"order\": 17,\n \"mode\": 0,\n \"inputs\": [\n {\n \"label\": \"模型\",\n \"name\": \"model\",\n \"type\": \"MODEL\",\n \"link\": 6\n },\n {\n \"label\": \"正面条件\",\n \"name\": \"positive\",\n \"type\": \"CONDITIONING\",\n \"link\": 7\n },\n {\n \"label\": \"负面条件\",\n \"name\": \"negative\",\n \"type\": \"CONDITIONING\",\n \"link\": 8\n },\n {\n \"label\": \"Latent\",\n \"name\": \"latent_image\",\n \"type\": \"LATENT\",\n \"link\": 9\n }\n ],\n \"outputs\": [\n {\n \"label\": \"Latent\",\n \"name\": \"LATENT\",\n \"type\": \"LATENT\",\n \"slot_index\": 0,\n \"links\": [\n 4\n ]\n }\n ],\n \"properties\": {\n \"cnr_id\": \"comfy-core\",\n \"ver\": \"0.3.51\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"KSampler\"\n },\n \"widgets_values\": [\n 422431662489005,\n \"randomize\",\n 8,\n 1,\n \"euler\",\n \"normal\",\n 1\n ]\n },\n {\n \"id\": 8,\n \"type\": \"SimpleMath+\",\n \"pos\": [\n 3060.9716796875,\n 1245.92236328125\n ],\n \"size\": [\n 315,\n 98\n ],\n \"flags\": {},\n \"order\": 11,\n \"mode\": 0,\n \"inputs\": [\n {\n \"name\": \"a\",\n \"shape\": 7,\n \"type\": \"*\",\n \"link\": 10\n },\n {\n \"name\": \"b\",\n \"shape\": 7,\n \"type\": \"*\",\n \"link\": 11\n },\n {\n \"name\": \"c\",\n \"shape\": 7,\n \"type\": \"*\",\n \"link\": null\n }\n ],\n \"outputs\": [\n {\n \"name\": \"INT\",\n \"type\": \"INT\",\n \"slot_index\": 0,\n \"links\": [\n 14\n ]\n },\n {\n \"name\": \"FLOAT\",\n \"type\": \"FLOAT\",\n \"links\": null\n }\n ],\n \"properties\": {\n \"cnr_id\": \"comfyui_essentials\",\n \"ver\": \"cf703edb47ba65bc67507139a7d802b30d151343\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"SimpleMath+\"\n },\n \"widgets_values\": [\n \"a-b\"\n ]\n },\n {\n \"id\": 9,\n \"type\": \"SimpleMath+\",\n \"pos\": [\n 3060.9716796875,\n 1385.92236328125\n ],\n \"size\": [\n 315,\n 98\n ],\n \"flags\": {},\n \"order\": 10,\n \"mode\": 0,\n \"inputs\": [\n {\n \"name\": \"a\",\n \"shape\": 7,\n \"type\": \"*\",\n \"link\": 12\n },\n {\n \"name\": \"b\",\n \"shape\": 7,\n \"type\": \"*\",\n \"link\": 13\n },\n {\n \"name\": \"c\",\n \"shape\": 7,\n \"type\": \"*\",\n \"link\": null\n }\n ],\n \"outputs\": [\n {\n \"name\": \"INT\",\n \"type\": \"INT\",\n \"slot_index\": 0,\n \"links\": [\n 15\n ]\n },\n {\n \"name\": \"FLOAT\",\n \"type\": \"FLOAT\",\n \"links\": null\n }\n ],\n \"properties\": {\n \"cnr_id\": \"comfyui_essentials\",\n \"ver\": \"cf703edb47ba65bc67507139a7d802b30d151343\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"SimpleMath+\"\n },\n \"widgets_values\": [\n \"a-b\"\n ]\n },\n {\n \"id\": 10,\n \"type\": \"SimpleMath+\",\n \"pos\": [\n 3400.9716796875,\n 1135.92236328125\n ],\n \"size\": [\n 315,\n 98\n ],\n \"flags\": {},\n \"order\": 14,\n \"mode\": 0,\n \"inputs\": [\n {\n \"name\": \"a\",\n \"shape\": 7,\n \"type\": \"*\",\n \"link\": 14\n },\n {\n \"name\": \"b\",\n \"shape\": 7,\n \"type\": \"*\",\n \"link\": null\n },\n {\n \"name\": \"c\",\n \"shape\": 7,\n \"type\": \"*\",\n \"link\": null\n }\n ],\n \"outputs\": [\n {\n \"name\": \"INT\",\n \"type\": \"INT\",\n \"slot_index\": 0,\n \"links\": [\n 24,\n 25\n ]\n },\n {\n \"name\": \"FLOAT\",\n \"type\": \"FLOAT\",\n \"links\": null\n }\n ],\n \"properties\": {\n \"cnr_id\": \"comfyui_essentials\",\n \"ver\": \"cf703edb47ba65bc67507139a7d802b30d151343\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"SimpleMath+\"\n },\n \"widgets_values\": [\n \"a/2\"\n ]\n },\n {\n \"id\": 11,\n \"type\": \"SimpleMath+\",\n \"pos\": [\n 3410.9716796875,\n 1275.92236328125\n ],\n \"size\": [\n 315,\n 98\n ],\n \"flags\": {},\n \"order\": 13,\n \"mode\": 0,\n \"inputs\": [\n {\n \"name\": \"a\",\n \"shape\": 7,\n \"type\": \"*\",\n \"link\": 15\n },\n {\n \"name\": \"b\",\n \"shape\": 7,\n \"type\": \"*\",\n \"link\": null\n },\n {\n \"name\": \"c\",\n \"shape\": 7,\n \"type\": \"*\",\n \"link\": null\n }\n ],\n \"outputs\": [\n {\n \"name\": \"INT\",\n \"type\": \"INT\",\n \"slot_index\": 0,\n \"links\": [\n 26,\n 27\n ]\n },\n {\n \"name\": \"FLOAT\",\n \"type\": \"FLOAT\",\n \"links\": null\n }\n ],\n \"properties\": {\n \"cnr_id\": \"comfyui_essentials\",\n \"ver\": \"cf703edb47ba65bc67507139a7d802b30d151343\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"SimpleMath+\"\n },\n \"widgets_values\": [\n \"a/2\"\n ]\n },\n {\n \"id\": 12,\n \"type\": \"Int\",\n \"pos\": [\n 3400.9716796875,\n 1415.92236328125\n ],\n \"size\": [\n 315,\n 58\n ],\n \"flags\": {},\n \"order\": 1,\n \"mode\": 0,\n \"inputs\": [],\n \"outputs\": [\n {\n \"name\": \"INT\",\n \"type\": \"INT\",\n \"slot_index\": 0,\n \"links\": [\n 12\n ]\n }\n ],\n \"properties\": {\n \"cnr_id\": \"ComfyLiterals\",\n \"ver\": \"bdddb08ca82d90d75d97b1d437a652e0284a32ac\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"Int\"\n },\n \"widgets_values\": [\n \"768\"\n ]\n },\n {\n \"id\": 13,\n \"type\": \"DualCLIPLoader\",\n \"pos\": [\n 2580.728271484375,\n 676.0438232421875\n ],\n \"size\": [\n 300,\n 122\n ],\n \"flags\": {},\n \"order\": 2,\n \"mode\": 0,\n \"inputs\": [],\n \"outputs\": [\n {\n \"label\": \"CLIP\",\n \"name\": \"CLIP\",\n \"type\": \"CLIP\",\n \"links\": []\n }\n ],\n \"properties\": {\n \"cnr_id\": \"comfy-core\",\n \"ver\": \"0.3.51\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"DualCLIPLoader\"\n },\n \"widgets_values\": [\n \"clip_l.safetensors\",\n \"t5xxl_fp16.safetensors\",\n \"flux\",\n \"default\"\n ]\n },\n {\n \"id\": 14,\n \"type\": \"VAELoader\",\n \"pos\": [\n 2585.722900390625,\n 822.8394775390625\n ],\n \"size\": [\n 300,\n 58\n ],\n \"flags\": {},\n \"order\": 3,\n \"mode\": 0,\n \"inputs\": [],\n \"outputs\": [\n {\n \"label\": \"VAE\",\n \"name\": \"VAE\",\n \"type\": \"VAE\",\n \"slot_index\": 0,\n \"links\": [\n 5,\n 20\n ]\n }\n ],\n \"properties\": {\n \"cnr_id\": \"comfy-core\",\n \"ver\": \"0.3.51\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"VAELoader\"\n },\n \"widgets_values\": [\n \"ae.safetensors\"\n ]\n },\n {\n \"id\": 15,\n \"type\": \"ConditioningZeroOut\",\n \"pos\": [\n 2881.81982421875,\n 625.4481201171875\n ],\n \"size\": [\n 159.60000610351562,\n 26\n ],\n \"flags\": {\n \"collapsed\": false\n },\n \"order\": 8,\n \"mode\": 0,\n \"inputs\": [\n {\n \"label\": \"条件\",\n \"name\": \"conditioning\",\n \"type\": \"CONDITIONING\",\n \"link\": 16\n }\n ],\n \"outputs\": [\n {\n \"label\": \"条件\",\n \"name\": \"CONDITIONING\",\n \"type\": \"CONDITIONING\",\n \"slot_index\": 0,\n \"links\": [\n 19\n ]\n }\n ],\n \"properties\": {\n \"cnr_id\": \"comfy-core\",\n \"ver\": \"0.3.51\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"ConditioningZeroOut\"\n }\n },\n {\n \"id\": 16,\n \"type\": \"DifferentialDiffusion\",\n \"pos\": [\n 2883.218994140625,\n 554.0230102539062\n ],\n \"size\": [\n 184.8000030517578,\n 26\n ],\n \"flags\": {\n \"collapsed\": false\n },\n \"order\": 12,\n \"mode\": 0,\n \"inputs\": [\n {\n \"label\": \"模型\",\n \"name\": \"model\",\n \"type\": \"MODEL\",\n \"link\": 17\n }\n ],\n \"outputs\": [\n {\n \"label\": \"模型\",\n \"name\": \"MODEL\",\n \"type\": \"MODEL\",\n \"links\": [\n 6\n ]\n }\n ],\n \"properties\": {\n \"cnr_id\": \"comfy-core\",\n \"ver\": \"0.3.51\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"DifferentialDiffusion\"\n }\n },\n {\n \"id\": 17,\n \"type\": \"UNETLoader\",\n \"pos\": [\n 2567.580810546875,\n 538.827392578125\n ],\n \"size\": [\n 300,\n 82\n ],\n \"flags\": {},\n \"order\": 4,\n \"mode\": 0,\n \"inputs\": [],\n \"outputs\": [\n {\n \"label\": \"模型\",\n \"name\": \"MODEL\",\n \"type\": \"MODEL\",\n \"slot_index\": 0,\n \"links\": [\n 23\n ]\n }\n ],\n \"properties\": {\n \"cnr_id\": \"comfy-core\",\n \"ver\": \"0.3.51\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"UNETLoader\"\n },\n \"widgets_values\": [\n \"flux1-fill-dev.safetensors\",\n \"default\"\n ]\n },\n {\n \"id\": 18,\n \"type\": \"InpaintModelConditioning\",\n \"pos\": [\n 3103.51318359375,\n 561.2390747070312\n ],\n \"size\": [\n 302.4000244140625,\n 138\n ],\n \"flags\": {},\n \"order\": 16,\n \"mode\": 0,\n \"inputs\": [\n {\n \"label\": \"正面条件\",\n \"name\": \"positive\",\n \"type\": \"CONDITIONING\",\n \"link\": 18\n },\n {\n \"label\": \"负面条件\",\n \"name\": \"negative\",\n \"type\": \"CONDITIONING\",\n \"link\": 19\n },\n {\n \"label\": \"VAE\",\n \"name\": \"vae\",\n \"type\": \"VAE\",\n \"link\": 20\n },\n {\n \"label\": \"图像\",\n \"name\": \"pixels\",\n \"type\": \"IMAGE\",\n \"link\": 21\n },\n {\n \"label\": \"遮罩\",\n \"name\": \"mask\",\n \"type\": \"MASK\",\n \"link\": 22\n }\n ],\n \"outputs\": [\n {\n \"label\": \"正面条件\",\n \"name\": \"positive\",\n \"type\": \"CONDITIONING\",\n \"slot_index\": 0,\n \"links\": [\n 7\n ]\n },\n {\n \"label\": \"负面条件\",\n \"name\": \"negative\",\n \"type\": \"CONDITIONING\",\n \"slot_index\": 1,\n \"links\": [\n 8\n ]\n },\n {\n \"label\": \"Latent\",\n \"name\": \"latent\",\n \"type\": \"LATENT\",\n \"slot_index\": 2,\n \"links\": [\n 9\n ]\n }\n ],\n \"properties\": {\n \"cnr_id\": \"comfy-core\",\n \"ver\": \"0.3.51\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"InpaintModelConditioning\"\n },\n \"widgets_values\": [\n false\n ]\n },\n {\n \"id\": 19,\n \"type\": \"LoraLoaderModelOnly\",\n \"pos\": [\n 3100.936767578125,\n 731.5386962890625\n ],\n \"size\": [\n 317.4976806640625,\n 84.57483673095703\n ],\n \"flags\": {\n \"collapsed\": false\n },\n \"order\": 9,\n \"mode\": 0,\n \"inputs\": [\n {\n \"label\": \"model\",\n \"name\": \"model\",\n \"type\": \"MODEL\",\n \"link\": 23\n }\n ],\n \"outputs\": [\n {\n \"label\": \"MODEL\",\n \"name\": \"MODEL\",\n \"type\": \"MODEL\",\n \"slot_index\": 0,\n \"links\": [\n 17\n ]\n }\n ],\n \"properties\": {\n \"cnr_id\": \"comfy-core\",\n \"ver\": \"0.3.51\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"LoraLoaderModelOnly\"\n },\n \"widgets_values\": [\n \"FLUX.1-Turbo-Alpha.safetensors\",\n 1\n ]\n },\n {\n \"id\": 20,\n \"type\": \"ImagePadForOutpaint\",\n \"pos\": [\n 3051.916259765625,\n 916.375732421875\n ],\n \"size\": [\n 315,\n 174\n ],\n \"flags\": {},\n \"order\": 15,\n \"mode\": 0,\n \"inputs\": [\n {\n \"label\": \"图像\",\n \"name\": \"image\",\n \"type\": \"IMAGE\",\n \"link\": null\n },\n {\n \"name\": \"left\",\n \"type\": \"INT\",\n \"widget\": {\n \"name\": \"left\"\n },\n \"link\": 24\n },\n {\n \"name\": \"top\",\n \"type\": \"INT\",\n \"widget\": {\n \"name\": \"top\"\n },\n \"link\": 25\n },\n {\n \"name\": \"right\",\n \"type\": \"INT\",\n \"widget\": {\n \"name\": \"right\"\n },\n \"link\": 26\n },\n {\n \"name\": \"bottom\",\n \"type\": \"INT\",\n \"widget\": {\n \"name\": \"bottom\"\n },\n \"link\": 27\n }\n ],\n \"outputs\": [\n {\n \"label\": \"图像\",\n \"name\": \"IMAGE\",\n \"type\": \"IMAGE\",\n \"slot_index\": 0,\n \"links\": [\n 21\n ]\n },\n {\n \"label\": \"遮罩\",\n \"name\": \"MASK\",\n \"type\": \"MASK\",\n \"slot_index\": 1,\n \"links\": [\n 22\n ]\n }\n ],\n \"properties\": {\n \"cnr_id\": \"comfy-core\",\n \"ver\": \"0.3.51\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"ImagePadForOutpaint\"\n },\n \"widgets_values\": [\n 0,\n 288,\n 0,\n 288,\n 40\n ]\n },\n {\n \"id\": 21,\n \"type\": \"Get resolution [Crystools]\",\n \"pos\": [\n 2687.459228515625,\n 1054.2020263671875\n ],\n \"size\": [\n 214.20001220703125,\n 96\n ],\n \"flags\": {},\n \"order\": 6,\n \"mode\": 0,\n \"inputs\": [\n {\n \"name\": \"image\",\n \"type\": \"IMAGE\",\n \"link\": null\n }\n ],\n \"outputs\": [\n {\n \"name\": \"width\",\n \"type\": \"INT\",\n \"slot_index\": 0,\n \"links\": [\n 13\n ]\n },\n {\n \"name\": \"height\",\n \"type\": \"INT\",\n \"slot_index\": 1,\n \"links\": [\n 11\n ]\n }\n ],\n \"properties\": {\n \"cnr_id\": \"ComfyUI-Crystools\",\n \"ver\": \"0820a7560bcc405ef6d0a7c5c53a83cc02ae7db2\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"Get resolution [Crystools]\"\n }\n },\n {\n \"id\": 22,\n \"type\": \"Int\",\n \"pos\": [\n 3060.9716796875,\n 1135.92236328125\n ],\n \"size\": [\n 315,\n 58\n ],\n \"flags\": {},\n \"order\": 5,\n \"mode\": 0,\n \"inputs\": [],\n \"outputs\": [\n {\n \"name\": \"INT\",\n \"type\": \"INT\",\n \"slot_index\": 0,\n \"links\": [\n 10\n ]\n }\n ],\n \"properties\": {\n \"cnr_id\": \"ComfyLiterals\",\n \"ver\": \"bdddb08ca82d90d75d97b1d437a652e0284a32ac\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"Int\"\n },\n \"widgets_values\": [\n \"1344\"\n ]\n },\n {\n \"id\": 23,\n \"type\": \"PreviewImage\",\n \"pos\": [\n 3666.00146484375,\n 908.7727661132812\n ],\n \"size\": [\n 229.00827026367188,\n 143.92103576660156\n ],\n \"flags\": {},\n \"order\": 19,\n \"mode\": 0,\n \"inputs\": [\n {\n \"label\": \"图像\",\n \"name\": \"images\",\n \"type\": \"IMAGE\",\n \"link\": 28\n }\n ],\n \"outputs\": [],\n \"properties\": {\n \"cnr_id\": \"comfy-core\",\n \"ver\": \"0.3.51\",\n \"widget_ue_connectable\": {},\n \"Node name for S&R\": \"PreviewImage\"\n }\n }\n ],\n \"links\": [\n [\n 1,\n 3,\n 0,\n 2,\n 0,\n \"CONDITIONING\"\n ],\n [\n 4,\n 7,\n 0,\n 6,\n 0,\n \"LATENT\"\n ],\n [\n 5,\n 14,\n 0,\n 6,\n 1,\n \"VAE\"\n ],\n [\n 6,\n 16,\n 0,\n 7,\n 0,\n \"MODEL\"\n ],\n [\n 7,\n 18,\n 0,\n 7,\n 1,\n \"CONDITIONING\"\n ],\n [\n 8,\n 18,\n 1,\n 7,\n 2,\n \"CONDITIONING\"\n ],\n [\n 9,\n 18,\n 2,\n 7,\n 3,\n \"LATENT\"\n ],\n [\n 10,\n 22,\n 0,\n 8,\n 0,\n \"*\"\n ],\n [\n 11,\n 21,\n 1,\n 8,\n 1,\n \"*\"\n ],\n [\n 12,\n 12,\n 0,\n 9,\n 0,\n \"*\"\n ],\n [\n 13,\n 21,\n 0,\n 9,\n 1,\n \"*\"\n ],\n [\n 14,\n 8,\n 0,\n 10,\n 0,\n \"*\"\n ],\n [\n 15,\n 9,\n 0,\n 11,\n 0,\n \"*\"\n ],\n [\n 16,\n 3,\n 0,\n 15,\n 0,\n \"CONDITIONING\"\n ],\n [\n 17,\n 19,\n 0,\n 16,\n 0,\n \"MODEL\"\n ],\n [\n 18,\n 2,\n 0,\n 18,\n 0,\n \"CONDITIONING\"\n ],\n [\n 19,\n 15,\n 0,\n 18,\n 1,\n \"CONDITIONING\"\n ],\n [\n 20,\n 14,\n 0,\n 18,\n 2,\n \"VAE\"\n ],\n [\n 21,\n 20,\n 0,\n 18,\n 3,\n \"IMAGE\"\n ],\n [\n 22,\n 20,\n 1,\n 18,\n 4,\n \"MASK\"\n ],\n [\n 23,\n 17,\n 0,\n 19,\n 0,\n \"MODEL\"\n ],\n [\n 24,\n 10,\n 0,\n 20,\n 1,\n \"INT\"\n ],\n [\n 25,\n 10,\n 0,\n 20,\n 2,\n \"INT\"\n ],\n [\n 26,\n 11,\n 0,\n 20,\n 3,\n \"INT\"\n ],\n [\n 27,\n 11,\n 0,\n 20,\n 4,\n \"INT\"\n ],\n [\n 28,\n 6,\n 0,\n 23,\n 0,\n \"IMAGE\"\n ]\n ],\n \"groups\": [],\n \"config\": {},\n \"extra\": {\n \"ue_links\": [],\n \"ds\": {\n \"scale\": 0.2741546770739379,\n \"offset\": [\n 429.4114980165041,\n 104.68989334051173\n ]\n },\n \"frontendVersion\": \"1.24.4\",\n \"VHS_latentpreview\": false,\n \"VHS_latentpreviewrate\": 0,\n \"VHS_MetadataImage\": true,\n \"VHS_KeepIntermediate\": true\n },\n \"version\": 0.4\n}" }, { "name": "智能抠图", @@ -51,8 +51,8 @@ }, { "name": "qwen image图像生成", - "description": "基于Qwen-Image多模态大模型的文生图解决方案,支持中英文提示词,擅长生成包含复杂文本的图像内容。适用于海报设计、广告创意等需要稳定生成文字内容的场景", - "content": "添加qwen image模型,使用qwen image 文生图,创作一张海报,适合生成稳定的文字(当用户提到需要使用qwen image系列时给它提供如下的节点和模型选择:load Difussion Model节点对应qwen_image名字的模型,Load CLIP对应的clip_name:qwen_2.5_vl,type:qwen_image,Load VAE节点对应的模型为:qwen_image_vae.safetensors)" + "description": "基于Qwen-Image多模态大模型的文生图解决方案,支持中英文提示词,擅长生成包含复杂文本的图像内容。适用于海报设计、广告创意、logo生成、字体设计、人像生成,也可以直接制作PPT和多种艺术风格图片的生成,当用户提及需要上述的类似需求和qwen_image图像生成时优先推荐该类型工作流。", + "content": "这里要特别注意:qwen_image的工作流类型对应专属的模型和节点,当用户画布已经存在其他工作流时不能与其他工作流的model节点和dual_clip节点共用,需要额外加载专属节点,以下是专属的节点和模型示例:\n{\n \"3\": {\n \"inputs\": {\n \"seed\": 619243763350601,\n \"steps\": 20,\n \"cfg\": 4,\n \"sampler_name\": \"euler\",\n \"scheduler\": \"simple\",\n \"denoise\": 1,\n \"model\": [\n \"66\",\n 0\n ],\n \"positive\": [\n \"6\",\n 0\n ],\n \"negative\": [\n \"7\",\n 0\n ],\n \"latent_image\": [\n \"58\",\n 0\n ]\n },\n \"class_type\": \"KSampler\",\n \"_meta\": {\n \"title\": \"KSampler\"\n }\n },\n \"6\": {\n \"inputs\": {\n \"text\": \"cute anime girl with massive fennec ears and a big fluffy fox tail with long wavy blonde hair between eyes and large blue eyes blonde colored eyelashes chubby wearing oversized clothes summer uniform long blue maxi skirt happy sitting on the side of the road in a run down dark gritty cyberpunk city with neon and a futuristic car in the rain at night while dipping her feet in a river of water with a single street light illuminating her, she is holding a sign that says \\"ComfyUI is the best\\" in cursive\",\n \"clip\": [\n \"38\",\n 0\n ]\n },\n \"class_type\": \"CLIPTextEncode\",\n \"_meta\": {\n \"title\": \"CLIP Text Encode (Positive Prompt)\"\n }\n },\n \"7\": {\n \"inputs\": {\n \"text\": \" \",\n \"clip\": [\n \"38\",\n 0\n ]\n },\n \"class_type\": \"CLIPTextEncode\",\n \"_meta\": {\n \"title\": \"CLIP Text Encode (Negative Prompt)\"\n }\n },\n \"8\": {\n \"inputs\": {\n \"samples\": [\n \"3\",\n 0\n ],\n \"vae\": [\n \"39\",\n 0\n ]\n },\n \"class_type\": \"VAEDecode\",\n \"_meta\": {\n \"title\": \"VAE Decode\"\n }\n },\n \"37\": {\n \"inputs\": {\n \"unet_name\": \"qwen_image_fp8_e4m3fn.safetensors\",\n \"weight_dtype\": \"default\"\n },\n \"class_type\": \"UNETLoader\",\n \"_meta\": {\n \"title\": \"Load Diffusion Model\"\n }\n },\n \"38\": {\n \"inputs\": {\n \"clip_name\": \"qwen_2.5_vl_7b_fp8_scaled.safetensors\",\n \"type\": \"qwen_image\",\n \"device\": \"default\"\n },\n \"class_type\": \"CLIPLoader\",\n \"_meta\": {\n \"title\": \"Load CLIP\"\n }\n },\n \"39\": {\n \"inputs\": {\n \"vae_name\": \"qwen_image_vae.safetensors\"\n },\n \"class_type\": \"VAELoader\",\n \"_meta\": {\n \"title\": \"Load VAE\"\n }\n },\n \"58\": {\n \"inputs\": {\n \"width\": 1328,\n \"height\": 1328,\n \"batch_size\": 1\n },\n \"class_type\": \"EmptySD3LatentImage\",\n \"_meta\": {\n \"title\": \"EmptySD3LatentImage\"\n }\n },\n \"66\": {\n \"inputs\": {\n \"shift\": 3.500000000000001,\n \"model\": [\n \"37\",\n 0\n ]\n },\n \"class_type\": \"ModelSamplingAuraFlow\",\n \"_meta\": {\n \"title\": \"ModelSamplingAuraFlow\"\n }\n }\n}" }, { "name": "wan2.2图生视频", @@ -61,7 +61,7 @@ }, { "name": "qwen_image_edit", - "description": "qwen_image_edit是qwen_image文生图所延展的图片编辑功能的工作流,其功能类似于flux_kontext的能力,主要应用在对于图片的修改。当用户提及到需要对生成图进行二次编辑,修改图片内容、改变图片中的某些元素、根据图片图片中的某些特征进行二次延展时,优先推荐该类工作流。", + "description": "qwen_image_edit是qwen_image文生图所延展的图片编辑功能的工作流,其功能类似于flux_kontext的能力,主要应用在对于图片的修改。当用户提及到需要对生成图进行二次编辑、修改图片内容、改变图片中的某些元素、根据图片图片中的某些特征进行二次延展时,优先推荐该类工作流。", "content": "特别注意qwen_image_deit有特定的一套\"difussion model\"和\"clip\"、\"vae\"模型,分别是\"difussion model:qwen_image_edit.safetensor\"、\"clip:qwen_2.5vl_7b_fp8_scaled.safetensors\"和\"qwen_image type\",\"vae:qwen_image_vae\"。另外,对于qwen_image_edit的文本输入节点需要使用专属的\"textencoedqwenimageedit\"除此之外该类工作流不与画布上其他的model共用需单独添加上述专属节点和model。 {\n \"37\": {\n \"inputs\": {\n \"unet_name\": \"qwen_image_edit_fp8_e4m3fn.safetensors\",\n \"weight_dtype\": \"default\"\n },\n \"class_type\": \"UNETLoader\",\n \"_meta\": {\n \"title\": \"Load Diffusion Model\"\n }\n },\n \"38\": {\n \"inputs\": {\n \"clip_name\": \"qwen_2.5_vl_7b_fp8_scaled.safetensors\",\n \"type\": \"qwen_image\",\n \"device\": \"default\"\n },\n \"class_type\": \"CLIPLoader\",\n \"_meta\": {\n \"title\": \"Load CLIP\"\n }\n },\n \"39\": {\n \"inputs\": {\n \"vae_name\": \"qwen_image_vae.safetensors\"\n },\n \"class_type\": \"VAELoader\",\n \"_meta\": {\n \"title\": \"Load VAE\"\n }\n },\n \"66\": {\n \"inputs\": {\n \"shift\": 3,\n \"model\": [\n \"37\",\n 0\n ]\n },\n \"class_type\": \"ModelSamplingAuraFlow\",\n \"_meta\": {\n \"title\": \"ModelSamplingAuraFlow\"\n }\n },\n \"75\": {\n \"inputs\": {\n \"strength\": 1,\n \"model\": [\n \"66\",\n 0\n ]\n },\n \"class_type\": \"CFGNorm\",\n \"_meta\": {\n \"title\": \"CFGNorm\"\n }\n },\n \"76\": {\n \"inputs\": {\n \"prompt\": \"\",\n \"clip\": [\n \"38\",\n 0\n ],\n \"vae\": [\n \"39\",\n 0\n ],\n \"image\": [\n \"93\",\n 0\n ]\n },\n \"class_type\": \"TextEncodeQwenImageEdit\",\n \"_meta\": {\n \"title\": \"TextEncodeQwenImageEdit\"\n }\n },\n \"77\": {\n \"inputs\": {\n \"prompt\": \"\",\n \"clip\": [\n \"38\",\n 0\n ],\n \"vae\": [\n \"39\",\n 0\n ],\n \"image\": [\n \"93\",\n 0\n ]\n },\n \"class_type\": \"TextEncodeQwenImageEdit\",\n \"_meta\": {\n \"title\": \"TextEncodeQwenImageEdit\"\n }\n },\n \"88\": {\n \"inputs\": {\n \"pixels\": [\n \"93\",\n 0\n ],\n \"vae\": [\n \"39\",\n 0\n ]\n },\n \"class_type\": \"VAEEncode\",\n \"_meta\": {\n \"title\": \"VAE Encode\"\n }\n },\n \"93\": {\n \"inputs\": {\n \"upscale_method\": \"lanczos\",\n \"megapixels\": 1\n },\n \"class_type\": \"ImageScaleToTotalPixels\",\n \"_meta\": {\n \"title\": \"Scale Image to Total Pixels\"\n }\n }\n}" } ] \ No newline at end of file