From c84d195611e6a92ae44ab2c4898dad60fb093419 Mon Sep 17 00:00:00 2001 From: Sirshendu Ganguly Date: Thu, 28 May 2026 16:24:02 +0530 Subject: [PATCH 1/2] Added support for VTO --- modules/imageInferenceInputs.py | 15 ++++++++++++++- workflows/Runware_Image_Inference_VTO.json | 1 + 2 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 workflows/Runware_Image_Inference_VTO.json diff --git a/modules/imageInferenceInputs.py b/modules/imageInferenceInputs.py index 0a4ff6f..2ea4672 100644 --- a/modules/imageInferenceInputs.py +++ b/modules/imageInferenceInputs.py @@ -44,13 +44,20 @@ def INPUT_TYPES(cls): optionalInputs[f"Super Resolution Reference Image {i}"] = ("IMAGE", { "tooltip": f"Specifies {ordinal.capitalize()} Super Resolution Reference Image for the inputs.", }) + + optionalInputs["person"] = ("IMAGE", { + "tooltip": "Person image for inputs.person." + }) + optionalInputs["garment"] = ("IMAGE", { + "tooltip": "Garment reference image for inputs.garment." + }) return { "required": {}, "optional": optionalInputs } - DESCRIPTION = "Configure custom inputs for Runware Image Inference, including reference images (with optional type e.g. 'sketch' for illustrative style models, and strength 0-1 for sketch) that can be passed to the inference node." + DESCRIPTION = "Configure custom inputs for Runware Image Inference, including image/mask, reference images (with optional type e.g. 'sketch' for illustrative style models, and strength 0-1 for sketch), super resolution references, and person/garment images." FUNCTION = "createInputs" RETURN_TYPES = ("RUNWAREIMAGEINFERENCEINPUTS",) RETURN_NAMES = ("Inference Inputs",) @@ -60,6 +67,8 @@ def createInputs(self, **kwargs): """Create image inference inputs from provided parameters""" image = kwargs.get("image", None) mask = kwargs.get("mask", None) + person = kwargs.get("person", None) + garment = kwargs.get("garment", None) inputs = {} @@ -67,6 +76,10 @@ def createInputs(self, **kwargs): inputs["image"] = rwUtils.convertTensor2IMG(image) if mask is not None: inputs["mask"] = rwUtils.convertTensor2IMG(mask) + if person is not None: + inputs["person"] = rwUtils.convertTensor2IMG(person) + if garment is not None: + inputs["garment"] = rwUtils.convertTensor2IMG(garment) references = self._collectReferences(kwargs) if len(references) > 0: diff --git a/workflows/Runware_Image_Inference_VTO.json b/workflows/Runware_Image_Inference_VTO.json new file mode 100644 index 0000000..316ff4b --- /dev/null +++ b/workflows/Runware_Image_Inference_VTO.json @@ -0,0 +1 @@ +{"id":"3655737e-74ea-4ca7-b104-c3cea32f6ee5","revision":0,"last_node_id":6,"last_link_id":5,"nodes":[{"id":6,"type":"Runware Save Image","pos":[726.4894147644764,72.35343419027436],"size":[270,318],"flags":{},"order":5,"mode":0,"inputs":[{"localized_name":"Images","name":"Images","type":"STRING","widget":{"name":"Images"},"link":2},{"localized_name":"filenamePrefix","name":"filenamePrefix","type":"STRING","widget":{"name":"filenamePrefix"},"link":null},{"localized_name":"saveImage","name":"saveImage","type":"BOOLEAN","widget":{"name":"saveImage"},"link":null}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"IMAGE","links":null}],"properties":{"cnr_id":"ComfyUI-Runware","ver":"89495cfc137c18cd1f5fca7eb52d3870822d5a65","Node name for S&R":"Runware Save Image"},"widgets_values":["","ComfyUI",true],"bgcolor":"#5345bf"},{"id":2,"type":"Runware Image Inference Inputs","pos":[-365.2299339589291,-46.32029206152259],"size":[403.740234375,1482],"flags":{},"order":3,"mode":0,"inputs":[{"localized_name":"image","name":"image","shape":7,"type":"IMAGE","link":null},{"localized_name":"mask","name":"mask","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 1","name":"Reference Image 1","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 2","name":"Reference Image 2","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 3","name":"Reference Image 3","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 4","name":"Reference Image 4","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 5","name":"Reference Image 5","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 6","name":"Reference Image 6","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 7","name":"Reference Image 7","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 8","name":"Reference Image 8","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 9","name":"Reference Image 9","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 10","name":"Reference Image 10","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 11","name":"Reference Image 11","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 12","name":"Reference Image 12","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 13","name":"Reference Image 13","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 14","name":"Reference Image 14","shape":7,"type":"IMAGE","link":null},{"localized_name":"Super Resolution Reference Image 1","name":"Super Resolution Reference Image 1","shape":7,"type":"IMAGE","link":null},{"localized_name":"Super Resolution Reference Image 2","name":"Super Resolution Reference Image 2","shape":7,"type":"IMAGE","link":null},{"localized_name":"Super Resolution Reference Image 3","name":"Super Resolution Reference Image 3","shape":7,"type":"IMAGE","link":null},{"localized_name":"Super Resolution Reference Image 4","name":"Super Resolution Reference Image 4","shape":7,"type":"IMAGE","link":null},{"localized_name":"Super Resolution Reference Image 5","name":"Super Resolution Reference Image 5","shape":7,"type":"IMAGE","link":null},{"localized_name":"person","name":"person","shape":7,"type":"IMAGE","link":4},{"localized_name":"garment","name":"garment","shape":7,"type":"IMAGE","link":5},{"localized_name":"Reference Tag 1","name":"Reference Tag 1","shape":7,"type":"STRING","widget":{"name":"Reference Tag 1"},"link":null},{"localized_name":"Reference Type 1","name":"Reference Type 1","shape":7,"type":"STRING","widget":{"name":"Reference Type 1"},"link":null},{"localized_name":"Reference Strength 1","name":"Reference Strength 1","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 1"},"link":null},{"localized_name":"Reference Tag 2","name":"Reference Tag 2","shape":7,"type":"STRING","widget":{"name":"Reference Tag 2"},"link":null},{"localized_name":"Reference Type 2","name":"Reference Type 2","shape":7,"type":"STRING","widget":{"name":"Reference Type 2"},"link":null},{"localized_name":"Reference Strength 2","name":"Reference Strength 2","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 2"},"link":null},{"localized_name":"Reference Tag 3","name":"Reference Tag 3","shape":7,"type":"STRING","widget":{"name":"Reference Tag 3"},"link":null},{"localized_name":"Reference Type 3","name":"Reference Type 3","shape":7,"type":"STRING","widget":{"name":"Reference Type 3"},"link":null},{"localized_name":"Reference Strength 3","name":"Reference Strength 3","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 3"},"link":null},{"localized_name":"Reference Tag 4","name":"Reference Tag 4","shape":7,"type":"STRING","widget":{"name":"Reference Tag 4"},"link":null},{"localized_name":"Reference Type 4","name":"Reference Type 4","shape":7,"type":"STRING","widget":{"name":"Reference Type 4"},"link":null},{"localized_name":"Reference Strength 4","name":"Reference Strength 4","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 4"},"link":null},{"localized_name":"Reference Tag 5","name":"Reference Tag 5","shape":7,"type":"STRING","widget":{"name":"Reference Tag 5"},"link":null},{"localized_name":"Reference Type 5","name":"Reference Type 5","shape":7,"type":"STRING","widget":{"name":"Reference Type 5"},"link":null},{"localized_name":"Reference Strength 5","name":"Reference Strength 5","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 5"},"link":null},{"localized_name":"Reference Tag 6","name":"Reference Tag 6","shape":7,"type":"STRING","widget":{"name":"Reference Tag 6"},"link":null},{"localized_name":"Reference Type 6","name":"Reference Type 6","shape":7,"type":"STRING","widget":{"name":"Reference Type 6"},"link":null},{"localized_name":"Reference Strength 6","name":"Reference Strength 6","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 6"},"link":null},{"localized_name":"Reference Tag 7","name":"Reference Tag 7","shape":7,"type":"STRING","widget":{"name":"Reference Tag 7"},"link":null},{"localized_name":"Reference Type 7","name":"Reference Type 7","shape":7,"type":"STRING","widget":{"name":"Reference Type 7"},"link":null},{"localized_name":"Reference Strength 7","name":"Reference Strength 7","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 7"},"link":null},{"localized_name":"Reference Tag 8","name":"Reference Tag 8","shape":7,"type":"STRING","widget":{"name":"Reference Tag 8"},"link":null},{"localized_name":"Reference Type 8","name":"Reference Type 8","shape":7,"type":"STRING","widget":{"name":"Reference Type 8"},"link":null},{"localized_name":"Reference Strength 8","name":"Reference Strength 8","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 8"},"link":null},{"localized_name":"Reference Tag 9","name":"Reference Tag 9","shape":7,"type":"STRING","widget":{"name":"Reference Tag 9"},"link":null},{"localized_name":"Reference Type 9","name":"Reference Type 9","shape":7,"type":"STRING","widget":{"name":"Reference Type 9"},"link":null},{"localized_name":"Reference Strength 9","name":"Reference Strength 9","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 9"},"link":null},{"localized_name":"Reference Tag 10","name":"Reference Tag 10","shape":7,"type":"STRING","widget":{"name":"Reference Tag 10"},"link":null},{"localized_name":"Reference Type 10","name":"Reference Type 10","shape":7,"type":"STRING","widget":{"name":"Reference Type 10"},"link":null},{"localized_name":"Reference Strength 10","name":"Reference Strength 10","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 10"},"link":null},{"localized_name":"Reference Tag 11","name":"Reference Tag 11","shape":7,"type":"STRING","widget":{"name":"Reference Tag 11"},"link":null},{"localized_name":"Reference Type 11","name":"Reference Type 11","shape":7,"type":"STRING","widget":{"name":"Reference Type 11"},"link":null},{"localized_name":"Reference Strength 11","name":"Reference Strength 11","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 11"},"link":null},{"localized_name":"Reference Tag 12","name":"Reference Tag 12","shape":7,"type":"STRING","widget":{"name":"Reference Tag 12"},"link":null},{"localized_name":"Reference Type 12","name":"Reference Type 12","shape":7,"type":"STRING","widget":{"name":"Reference Type 12"},"link":null},{"localized_name":"Reference Strength 12","name":"Reference Strength 12","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 12"},"link":null},{"localized_name":"Reference Tag 13","name":"Reference Tag 13","shape":7,"type":"STRING","widget":{"name":"Reference Tag 13"},"link":null},{"localized_name":"Reference Type 13","name":"Reference Type 13","shape":7,"type":"STRING","widget":{"name":"Reference Type 13"},"link":null},{"localized_name":"Reference Strength 13","name":"Reference Strength 13","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 13"},"link":null},{"localized_name":"Reference Tag 14","name":"Reference Tag 14","shape":7,"type":"STRING","widget":{"name":"Reference Tag 14"},"link":null},{"localized_name":"Reference Type 14","name":"Reference Type 14","shape":7,"type":"STRING","widget":{"name":"Reference Type 14"},"link":null},{"localized_name":"Reference Strength 14","name":"Reference Strength 14","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 14"},"link":null}],"outputs":[{"localized_name":"Inference Inputs","name":"Inference Inputs","type":"RUNWAREIMAGEINFERENCEINPUTS","links":[3]}],"properties":{"cnr_id":"ComfyUI-Runware","ver":"89495cfc137c18cd1f5fca7eb52d3870822d5a65","Node name for S&R":"Runware Image Inference Inputs"},"widgets_values":["","",0,"","",0,"","",0,"","",0,"","",0,"","",0,"","",0,"","",0,"","",0,"","",0,"","",0,"","",0,"","",0,"","",0],"bgcolor":"#5345bf"},{"id":4,"type":"LoadImage","pos":[-991.1887304210379,304.8989870658721],"size":[282.798828125,314.00000000000006],"flags":{},"order":0,"mode":0,"inputs":[{"localized_name":"image","name":"image","type":"COMBO","widget":{"name":"image"},"link":null},{"localized_name":"choose file to upload","name":"upload","type":"IMAGEUPLOAD","widget":{"name":"upload"},"link":null}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"IMAGE","links":[4]},{"localized_name":"MASK","name":"MASK","type":"MASK","links":null}],"properties":{"cnr_id":"comfy-core","ver":"0.22.0","Node name for S&R":"LoadImage"},"widgets_values":["1fe8b9d2-a586-49fd-bd74-94dad01f9141.jpg","image"]},{"id":5,"type":"LoadImage","pos":[-943.0316219425166,698.9850374938297],"size":[282.798828125,314.00000000000006],"flags":{},"order":1,"mode":0,"inputs":[{"localized_name":"image","name":"image","type":"COMBO","widget":{"name":"image"},"link":null},{"localized_name":"choose file to upload","name":"upload","type":"IMAGEUPLOAD","widget":{"name":"upload"},"link":null}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"IMAGE","links":[5]},{"localized_name":"MASK","name":"MASK","type":"MASK","links":null}],"properties":{"cnr_id":"comfy-core","ver":"0.22.0","Node name for S&R":"LoadImage"},"widgets_values":["d2e78e0c-53b0-413b-939b-541375cfa1ec.jpg","image"]},{"id":3,"type":"Runware Model Search","pos":[-773.691111015741,8.450735327300883],"size":[272.111328125,154],"flags":{},"order":2,"mode":0,"inputs":[{"localized_name":"Model Search","name":"Model Search","type":"STRING","widget":{"name":"Model Search"},"link":null},{"localized_name":"Model Architecture","name":"Model Architecture","type":"COMBO","widget":{"name":"Model Architecture"},"link":null},{"localized_name":"ModelType","name":"ModelType","type":"COMBO","widget":{"name":"ModelType"},"link":null},{"localized_name":"ModelList","name":"ModelList","type":"COMBO","widget":{"name":"ModelList"},"link":null},{"localized_name":"Use Search Value","name":"Use Search Value","type":"BOOLEAN","widget":{"name":"Use Search Value"},"link":null}],"outputs":[{"localized_name":"Runware Model","name":"Runware Model","type":"RUNWAREMODEL","links":[1]}],"properties":{"cnr_id":"ComfyUI-Runware","ver":"89495cfc137c18cd1f5fca7eb52d3870822d5a65","Node name for S&R":"Runware Model Search"},"widgets_values":["bfl:flux@vto","All","Base Model","bfl:flux@vto (FLUX Virtual Try-On 1.0)",true],"bgcolor":"#5345bf"},{"id":1,"type":"Runware Image Inference","pos":[86.26102712585534,-54.459817683082285],"size":[400,1130],"flags":{},"order":4,"mode":0,"inputs":[{"localized_name":"Model","name":"Model","type":"RUNWAREMODEL","link":1},{"localized_name":"Accelerator","name":"Accelerator","shape":7,"type":"RUNWAREACCELERATOR","link":null},{"localized_name":"Lora","name":"Lora","shape":7,"type":"RUNWARELORA","link":null},{"localized_name":"Outpainting","name":"Outpainting","shape":7,"type":"RUNWAREOUTPAINT","link":null},{"localized_name":"IPAdapters","name":"IPAdapters","shape":7,"type":"RUNWAREIPAdapter","link":null},{"localized_name":"ControlNet","name":"ControlNet","shape":7,"type":"RUNWARECONTROLNET","link":null},{"localized_name":"Refiner","name":"Refiner","shape":7,"type":"RUNWAREREFINER","link":null},{"localized_name":"seedImage","name":"seedImage","shape":7,"type":"IMAGE","link":null},{"localized_name":"maskImage","name":"maskImage","shape":7,"type":"MASK","link":null},{"localized_name":"Embeddings","name":"Embeddings","shape":7,"type":"RUNWAREEMBEDDING","link":null},{"localized_name":"VAE","name":"VAE","shape":7,"type":"RUNWAREVAE","link":null},{"localized_name":"referenceImages","name":"referenceImages","shape":7,"type":"RUNWAREREFERENCEIMAGES","link":null},{"localized_name":"inputs","name":"inputs","shape":7,"type":"RUNWAREIMAGEINFERENCEINPUTS","link":3},{"localized_name":"providerSettings","name":"providerSettings","shape":7,"type":"RUNWAREPROVIDERSETTINGS","link":null},{"localized_name":"safetyInputs","name":"safetyInputs","shape":7,"type":"RUNWARESAFETYINPUTS","link":null},{"localized_name":"settings","name":"settings","shape":7,"type":"RUNWARESETTINGS","link":null},{"localized_name":"ultralytics","name":"ultralytics","shape":7,"type":"RUNWAREULTRALYTICSINPUTS","link":null},{"localized_name":"advancedFeatures","name":"advancedFeatures","shape":7,"type":"RUNWAREIMAGEINFERENCEADVANCEDFEATURES","link":null},{"localized_name":"positivePrompt","name":"positivePrompt","type":"STRING","widget":{"name":"positivePrompt"},"link":null},{"localized_name":"negativePrompt","name":"negativePrompt","type":"STRING","widget":{"name":"negativePrompt"},"link":null},{"localized_name":"Multi Inference Mode","name":"Multi Inference Mode","type":"BOOLEAN","widget":{"name":"Multi Inference Mode"},"link":null},{"localized_name":"Prompt Weighting","name":"Prompt Weighting","type":"COMBO","widget":{"name":"Prompt Weighting"},"link":null},{"localized_name":"dimensions","name":"dimensions","type":"COMBO","widget":{"name":"dimensions"},"link":null},{"localized_name":"width","name":"width","type":"INT","widget":{"name":"width"},"link":null},{"localized_name":"height","name":"height","type":"INT","widget":{"name":"height"},"link":null},{"localized_name":"useResolution","name":"useResolution","type":"BOOLEAN","widget":{"name":"useResolution"},"link":null},{"localized_name":"resolution","name":"resolution","type":"COMBO","widget":{"name":"resolution"},"link":null},{"localized_name":"useSteps","name":"useSteps","type":"BOOLEAN","widget":{"name":"useSteps"},"link":null},{"localized_name":"steps","name":"steps","type":"INT","widget":{"name":"steps"},"link":null},{"localized_name":"useScheduler","name":"useScheduler","type":"BOOLEAN","widget":{"name":"useScheduler"},"link":null},{"localized_name":"scheduler","name":"scheduler","type":"COMBO","widget":{"name":"scheduler"},"link":null},{"localized_name":"useCFGScale","name":"useCFGScale","type":"BOOLEAN","widget":{"name":"useCFGScale"},"link":null},{"localized_name":"cfgScale","name":"cfgScale","type":"FLOAT","widget":{"name":"cfgScale"},"link":null},{"localized_name":"useSeed","name":"useSeed","type":"BOOLEAN","widget":{"name":"useSeed"},"link":null},{"localized_name":"seed","name":"seed","type":"INT","widget":{"name":"seed"},"link":null},{"localized_name":"useClipSkip","name":"useClipSkip","type":"BOOLEAN","widget":{"name":"useClipSkip"},"link":null},{"localized_name":"clipSkip","name":"clipSkip","type":"INT","widget":{"name":"clipSkip"},"link":null},{"localized_name":"strength","name":"strength","type":"FLOAT","widget":{"name":"strength"},"link":null},{"localized_name":"Mask Margin","name":"Mask Margin","type":"BOOLEAN","widget":{"name":"Mask Margin"},"link":null},{"localized_name":"maskMargin","name":"maskMargin","type":"INT","widget":{"name":"maskMargin"},"link":null},{"localized_name":"outputFormat","name":"outputFormat","type":"COMBO","widget":{"name":"outputFormat"},"link":null},{"localized_name":"batchSize","name":"batchSize","type":"INT","widget":{"name":"batchSize"},"link":null},{"localized_name":"acceleration","name":"acceleration","type":"COMBO","widget":{"name":"acceleration"},"link":null},{"localized_name":"outputQuality","name":"outputQuality","type":"INT","widget":{"name":"outputQuality"},"link":null},{"localized_name":"useUpscaleFactor","name":"useUpscaleFactor","type":"BOOLEAN","widget":{"name":"useUpscaleFactor"},"link":null},{"localized_name":"upscaleFactor","name":"upscaleFactor","type":"COMBO","widget":{"name":"upscaleFactor"},"link":null}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"STRING","links":[2]},{"localized_name":"RW-Task","name":"RW-Task","type":"RUNWARETASK","links":null}],"properties":{"cnr_id":"ComfyUI-Runware","ver":"89495cfc137c18cd1f5fca7eb52d3870822d5a65","Node name for S&R":"Runware Image Inference"},"widgets_values":["A handsome young man wearing the provided garment naturally and realistically, full upper body portrait, centered composition, photorealistic skin texture, realistic fabric draping and fit, modern fashion editorial style, soft studio lighting, clean background, natural pose, cinematic lighting, highly detailed, sharp focus, professional fashion photography, realistic proportions, high-quality composition","",false,"Disabled","None",512,512,false,"1k",false,4,false,"Default",false,6.5,false,1378814689,"randomize",false,0,0.8,false,32,"WEBP",1,"none",95,false,2],"bgcolor":"#5345bf"}],"links":[[1,3,0,1,0,"RUNWAREMODEL"],[2,1,0,6,0,"STRING"],[3,2,0,1,12,"RUNWAREIMAGEINFERENCEINPUTS"],[4,4,0,2,21,"IMAGE"],[5,5,0,2,22,"IMAGE"]],"groups":[],"config":{},"extra":{"ds":{"scale":0.505529313703492,"offset":[1286.8312326450907,220.27112610139724]}},"version":0.4} \ No newline at end of file From 58fd1a12d2451ae0fbeac0d7665d4bfd1858e869 Mon Sep 17 00:00:00 2001 From: Sirshendu Ganguly Date: Thu, 28 May 2026 19:59:46 +0530 Subject: [PATCH 2/2] Fixed to using roles --- modules/imageInferenceInputs.py | 38 ++++++++++------------ workflows/Runware_Image_Inference_VTO.json | 2 +- 2 files changed, 19 insertions(+), 21 deletions(-) diff --git a/modules/imageInferenceInputs.py b/modules/imageInferenceInputs.py index 2ea4672..2365e0d 100644 --- a/modules/imageInferenceInputs.py +++ b/modules/imageInferenceInputs.py @@ -27,6 +27,10 @@ def INPUT_TYPES(cls): "tooltip": f"Optional tag describing {ordinal.capitalize()} Reference Image. Leave empty to omit.", "default": "", }) + optionalInputs[f"Reference Role {i}"] = ("STRING", { + "tooltip": f"Optional role for {ordinal} reference image (e.g. person, garment). Leave empty to omit.", + "default": "", + }) optionalInputs[f"Reference Type {i}"] = ("STRING", { "tooltip": f"Optional type for {ordinal} reference, e.g. 'sketch' for illustrative style models. Leave empty to omit.", "default": "", @@ -45,19 +49,12 @@ def INPUT_TYPES(cls): "tooltip": f"Specifies {ordinal.capitalize()} Super Resolution Reference Image for the inputs.", }) - optionalInputs["person"] = ("IMAGE", { - "tooltip": "Person image for inputs.person." - }) - optionalInputs["garment"] = ("IMAGE", { - "tooltip": "Garment reference image for inputs.garment." - }) - return { "required": {}, "optional": optionalInputs } - DESCRIPTION = "Configure custom inputs for Runware Image Inference, including image/mask, reference images (with optional type e.g. 'sketch' for illustrative style models, and strength 0-1 for sketch), super resolution references, and person/garment images." + DESCRIPTION = "Configure custom inputs for Runware Image Inference, including image/mask, reference images (with optional tag, role, type e.g. 'sketch' for illustrative style models, and strength 0-1 for sketch), and super resolution references." FUNCTION = "createInputs" RETURN_TYPES = ("RUNWAREIMAGEINFERENCEINPUTS",) RETURN_NAMES = ("Inference Inputs",) @@ -67,8 +64,6 @@ def createInputs(self, **kwargs): """Create image inference inputs from provided parameters""" image = kwargs.get("image", None) mask = kwargs.get("mask", None) - person = kwargs.get("person", None) - garment = kwargs.get("garment", None) inputs = {} @@ -76,10 +71,6 @@ def createInputs(self, **kwargs): inputs["image"] = rwUtils.convertTensor2IMG(image) if mask is not None: inputs["mask"] = rwUtils.convertTensor2IMG(mask) - if person is not None: - inputs["person"] = rwUtils.convertTensor2IMG(person) - if garment is not None: - inputs["garment"] = rwUtils.convertTensor2IMG(garment) references = self._collectReferences(kwargs) if len(references) > 0: @@ -98,34 +89,41 @@ def _collectReferences(self, kwargs): for i in range(1, self.MAX_REFERENCE_IMAGES + 1): image = kwargs.get(f"Reference Image {i}", None) tag = kwargs.get(f"Reference Tag {i}", "") + role = kwargs.get(f"Reference Role {i}", "") ref_type = kwargs.get(f"Reference Type {i}", "") strength = kwargs.get(f"Reference Strength {i}", 0.0) if image is not None: - reference_slots.append((image, tag, ref_type, strength)) + reference_slots.append((image, tag, role, ref_type, strength)) if not reference_slots: return [] has_tags = any( isinstance(tag, str) and tag.strip() != "" - for _, tag, _, _ in reference_slots + for _, tag, _, _, _ in reference_slots + ) + has_roles = any( + isinstance(role, str) and role.strip() != "" + for _, _, role, _, _ in reference_slots ) has_type = any( isinstance(rt, str) and rt.strip() != "" - for _, _, rt, _ in reference_slots + for _, _, _, rt, _ in reference_slots ) - if not has_tags and not has_type: + if not has_tags and not has_roles and not has_type: return [ rwUtils.convertTensor2IMG(image) - for image, _, _, _ in reference_slots + for image, _, _, _, _ in reference_slots ] references = [] - for image, tag, ref_type, strength in reference_slots: + for image, tag, role, ref_type, strength in reference_slots: entry = {"image": rwUtils.convertTensor2IMG(image)} if isinstance(tag, str) and tag.strip() != "": entry["tag"] = tag.strip() + if isinstance(role, str) and role.strip() != "": + entry["role"] = role.strip() if isinstance(ref_type, str) and ref_type.strip() != "": entry["type"] = ref_type.strip() if ref_type.strip().lower() == "sketch": diff --git a/workflows/Runware_Image_Inference_VTO.json b/workflows/Runware_Image_Inference_VTO.json index 316ff4b..ce2760a 100644 --- a/workflows/Runware_Image_Inference_VTO.json +++ b/workflows/Runware_Image_Inference_VTO.json @@ -1 +1 @@ -{"id":"3655737e-74ea-4ca7-b104-c3cea32f6ee5","revision":0,"last_node_id":6,"last_link_id":5,"nodes":[{"id":6,"type":"Runware Save Image","pos":[726.4894147644764,72.35343419027436],"size":[270,318],"flags":{},"order":5,"mode":0,"inputs":[{"localized_name":"Images","name":"Images","type":"STRING","widget":{"name":"Images"},"link":2},{"localized_name":"filenamePrefix","name":"filenamePrefix","type":"STRING","widget":{"name":"filenamePrefix"},"link":null},{"localized_name":"saveImage","name":"saveImage","type":"BOOLEAN","widget":{"name":"saveImage"},"link":null}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"IMAGE","links":null}],"properties":{"cnr_id":"ComfyUI-Runware","ver":"89495cfc137c18cd1f5fca7eb52d3870822d5a65","Node name for S&R":"Runware Save Image"},"widgets_values":["","ComfyUI",true],"bgcolor":"#5345bf"},{"id":2,"type":"Runware Image Inference Inputs","pos":[-365.2299339589291,-46.32029206152259],"size":[403.740234375,1482],"flags":{},"order":3,"mode":0,"inputs":[{"localized_name":"image","name":"image","shape":7,"type":"IMAGE","link":null},{"localized_name":"mask","name":"mask","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 1","name":"Reference Image 1","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 2","name":"Reference Image 2","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 3","name":"Reference Image 3","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 4","name":"Reference Image 4","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 5","name":"Reference Image 5","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 6","name":"Reference Image 6","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 7","name":"Reference Image 7","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 8","name":"Reference Image 8","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 9","name":"Reference Image 9","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 10","name":"Reference Image 10","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 11","name":"Reference Image 11","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 12","name":"Reference Image 12","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 13","name":"Reference Image 13","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 14","name":"Reference Image 14","shape":7,"type":"IMAGE","link":null},{"localized_name":"Super Resolution Reference Image 1","name":"Super Resolution Reference Image 1","shape":7,"type":"IMAGE","link":null},{"localized_name":"Super Resolution Reference Image 2","name":"Super Resolution Reference Image 2","shape":7,"type":"IMAGE","link":null},{"localized_name":"Super Resolution Reference Image 3","name":"Super Resolution Reference Image 3","shape":7,"type":"IMAGE","link":null},{"localized_name":"Super Resolution Reference Image 4","name":"Super Resolution Reference Image 4","shape":7,"type":"IMAGE","link":null},{"localized_name":"Super Resolution Reference Image 5","name":"Super Resolution Reference Image 5","shape":7,"type":"IMAGE","link":null},{"localized_name":"person","name":"person","shape":7,"type":"IMAGE","link":4},{"localized_name":"garment","name":"garment","shape":7,"type":"IMAGE","link":5},{"localized_name":"Reference Tag 1","name":"Reference Tag 1","shape":7,"type":"STRING","widget":{"name":"Reference Tag 1"},"link":null},{"localized_name":"Reference Type 1","name":"Reference Type 1","shape":7,"type":"STRING","widget":{"name":"Reference Type 1"},"link":null},{"localized_name":"Reference Strength 1","name":"Reference Strength 1","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 1"},"link":null},{"localized_name":"Reference Tag 2","name":"Reference Tag 2","shape":7,"type":"STRING","widget":{"name":"Reference Tag 2"},"link":null},{"localized_name":"Reference Type 2","name":"Reference Type 2","shape":7,"type":"STRING","widget":{"name":"Reference Type 2"},"link":null},{"localized_name":"Reference Strength 2","name":"Reference Strength 2","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 2"},"link":null},{"localized_name":"Reference Tag 3","name":"Reference Tag 3","shape":7,"type":"STRING","widget":{"name":"Reference Tag 3"},"link":null},{"localized_name":"Reference Type 3","name":"Reference Type 3","shape":7,"type":"STRING","widget":{"name":"Reference Type 3"},"link":null},{"localized_name":"Reference Strength 3","name":"Reference Strength 3","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 3"},"link":null},{"localized_name":"Reference Tag 4","name":"Reference Tag 4","shape":7,"type":"STRING","widget":{"name":"Reference Tag 4"},"link":null},{"localized_name":"Reference Type 4","name":"Reference Type 4","shape":7,"type":"STRING","widget":{"name":"Reference Type 4"},"link":null},{"localized_name":"Reference Strength 4","name":"Reference Strength 4","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 4"},"link":null},{"localized_name":"Reference Tag 5","name":"Reference Tag 5","shape":7,"type":"STRING","widget":{"name":"Reference Tag 5"},"link":null},{"localized_name":"Reference Type 5","name":"Reference Type 5","shape":7,"type":"STRING","widget":{"name":"Reference Type 5"},"link":null},{"localized_name":"Reference Strength 5","name":"Reference Strength 5","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 5"},"link":null},{"localized_name":"Reference Tag 6","name":"Reference Tag 6","shape":7,"type":"STRING","widget":{"name":"Reference Tag 6"},"link":null},{"localized_name":"Reference Type 6","name":"Reference Type 6","shape":7,"type":"STRING","widget":{"name":"Reference Type 6"},"link":null},{"localized_name":"Reference Strength 6","name":"Reference Strength 6","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 6"},"link":null},{"localized_name":"Reference Tag 7","name":"Reference Tag 7","shape":7,"type":"STRING","widget":{"name":"Reference Tag 7"},"link":null},{"localized_name":"Reference Type 7","name":"Reference Type 7","shape":7,"type":"STRING","widget":{"name":"Reference Type 7"},"link":null},{"localized_name":"Reference Strength 7","name":"Reference Strength 7","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 7"},"link":null},{"localized_name":"Reference Tag 8","name":"Reference Tag 8","shape":7,"type":"STRING","widget":{"name":"Reference Tag 8"},"link":null},{"localized_name":"Reference Type 8","name":"Reference Type 8","shape":7,"type":"STRING","widget":{"name":"Reference Type 8"},"link":null},{"localized_name":"Reference Strength 8","name":"Reference Strength 8","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 8"},"link":null},{"localized_name":"Reference Tag 9","name":"Reference Tag 9","shape":7,"type":"STRING","widget":{"name":"Reference Tag 9"},"link":null},{"localized_name":"Reference Type 9","name":"Reference Type 9","shape":7,"type":"STRING","widget":{"name":"Reference Type 9"},"link":null},{"localized_name":"Reference Strength 9","name":"Reference Strength 9","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 9"},"link":null},{"localized_name":"Reference Tag 10","name":"Reference Tag 10","shape":7,"type":"STRING","widget":{"name":"Reference Tag 10"},"link":null},{"localized_name":"Reference Type 10","name":"Reference Type 10","shape":7,"type":"STRING","widget":{"name":"Reference Type 10"},"link":null},{"localized_name":"Reference Strength 10","name":"Reference Strength 10","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 10"},"link":null},{"localized_name":"Reference Tag 11","name":"Reference Tag 11","shape":7,"type":"STRING","widget":{"name":"Reference Tag 11"},"link":null},{"localized_name":"Reference Type 11","name":"Reference Type 11","shape":7,"type":"STRING","widget":{"name":"Reference Type 11"},"link":null},{"localized_name":"Reference Strength 11","name":"Reference Strength 11","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 11"},"link":null},{"localized_name":"Reference Tag 12","name":"Reference Tag 12","shape":7,"type":"STRING","widget":{"name":"Reference Tag 12"},"link":null},{"localized_name":"Reference Type 12","name":"Reference Type 12","shape":7,"type":"STRING","widget":{"name":"Reference Type 12"},"link":null},{"localized_name":"Reference Strength 12","name":"Reference Strength 12","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 12"},"link":null},{"localized_name":"Reference Tag 13","name":"Reference Tag 13","shape":7,"type":"STRING","widget":{"name":"Reference Tag 13"},"link":null},{"localized_name":"Reference Type 13","name":"Reference Type 13","shape":7,"type":"STRING","widget":{"name":"Reference Type 13"},"link":null},{"localized_name":"Reference Strength 13","name":"Reference Strength 13","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 13"},"link":null},{"localized_name":"Reference Tag 14","name":"Reference Tag 14","shape":7,"type":"STRING","widget":{"name":"Reference Tag 14"},"link":null},{"localized_name":"Reference Type 14","name":"Reference Type 14","shape":7,"type":"STRING","widget":{"name":"Reference Type 14"},"link":null},{"localized_name":"Reference Strength 14","name":"Reference Strength 14","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 14"},"link":null}],"outputs":[{"localized_name":"Inference Inputs","name":"Inference Inputs","type":"RUNWAREIMAGEINFERENCEINPUTS","links":[3]}],"properties":{"cnr_id":"ComfyUI-Runware","ver":"89495cfc137c18cd1f5fca7eb52d3870822d5a65","Node name for S&R":"Runware Image Inference Inputs"},"widgets_values":["","",0,"","",0,"","",0,"","",0,"","",0,"","",0,"","",0,"","",0,"","",0,"","",0,"","",0,"","",0,"","",0,"","",0],"bgcolor":"#5345bf"},{"id":4,"type":"LoadImage","pos":[-991.1887304210379,304.8989870658721],"size":[282.798828125,314.00000000000006],"flags":{},"order":0,"mode":0,"inputs":[{"localized_name":"image","name":"image","type":"COMBO","widget":{"name":"image"},"link":null},{"localized_name":"choose file to upload","name":"upload","type":"IMAGEUPLOAD","widget":{"name":"upload"},"link":null}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"IMAGE","links":[4]},{"localized_name":"MASK","name":"MASK","type":"MASK","links":null}],"properties":{"cnr_id":"comfy-core","ver":"0.22.0","Node name for S&R":"LoadImage"},"widgets_values":["1fe8b9d2-a586-49fd-bd74-94dad01f9141.jpg","image"]},{"id":5,"type":"LoadImage","pos":[-943.0316219425166,698.9850374938297],"size":[282.798828125,314.00000000000006],"flags":{},"order":1,"mode":0,"inputs":[{"localized_name":"image","name":"image","type":"COMBO","widget":{"name":"image"},"link":null},{"localized_name":"choose file to upload","name":"upload","type":"IMAGEUPLOAD","widget":{"name":"upload"},"link":null}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"IMAGE","links":[5]},{"localized_name":"MASK","name":"MASK","type":"MASK","links":null}],"properties":{"cnr_id":"comfy-core","ver":"0.22.0","Node name for S&R":"LoadImage"},"widgets_values":["d2e78e0c-53b0-413b-939b-541375cfa1ec.jpg","image"]},{"id":3,"type":"Runware Model Search","pos":[-773.691111015741,8.450735327300883],"size":[272.111328125,154],"flags":{},"order":2,"mode":0,"inputs":[{"localized_name":"Model Search","name":"Model Search","type":"STRING","widget":{"name":"Model Search"},"link":null},{"localized_name":"Model Architecture","name":"Model Architecture","type":"COMBO","widget":{"name":"Model Architecture"},"link":null},{"localized_name":"ModelType","name":"ModelType","type":"COMBO","widget":{"name":"ModelType"},"link":null},{"localized_name":"ModelList","name":"ModelList","type":"COMBO","widget":{"name":"ModelList"},"link":null},{"localized_name":"Use Search Value","name":"Use Search Value","type":"BOOLEAN","widget":{"name":"Use Search Value"},"link":null}],"outputs":[{"localized_name":"Runware Model","name":"Runware Model","type":"RUNWAREMODEL","links":[1]}],"properties":{"cnr_id":"ComfyUI-Runware","ver":"89495cfc137c18cd1f5fca7eb52d3870822d5a65","Node name for S&R":"Runware Model Search"},"widgets_values":["bfl:flux@vto","All","Base Model","bfl:flux@vto (FLUX Virtual Try-On 1.0)",true],"bgcolor":"#5345bf"},{"id":1,"type":"Runware Image Inference","pos":[86.26102712585534,-54.459817683082285],"size":[400,1130],"flags":{},"order":4,"mode":0,"inputs":[{"localized_name":"Model","name":"Model","type":"RUNWAREMODEL","link":1},{"localized_name":"Accelerator","name":"Accelerator","shape":7,"type":"RUNWAREACCELERATOR","link":null},{"localized_name":"Lora","name":"Lora","shape":7,"type":"RUNWARELORA","link":null},{"localized_name":"Outpainting","name":"Outpainting","shape":7,"type":"RUNWAREOUTPAINT","link":null},{"localized_name":"IPAdapters","name":"IPAdapters","shape":7,"type":"RUNWAREIPAdapter","link":null},{"localized_name":"ControlNet","name":"ControlNet","shape":7,"type":"RUNWARECONTROLNET","link":null},{"localized_name":"Refiner","name":"Refiner","shape":7,"type":"RUNWAREREFINER","link":null},{"localized_name":"seedImage","name":"seedImage","shape":7,"type":"IMAGE","link":null},{"localized_name":"maskImage","name":"maskImage","shape":7,"type":"MASK","link":null},{"localized_name":"Embeddings","name":"Embeddings","shape":7,"type":"RUNWAREEMBEDDING","link":null},{"localized_name":"VAE","name":"VAE","shape":7,"type":"RUNWAREVAE","link":null},{"localized_name":"referenceImages","name":"referenceImages","shape":7,"type":"RUNWAREREFERENCEIMAGES","link":null},{"localized_name":"inputs","name":"inputs","shape":7,"type":"RUNWAREIMAGEINFERENCEINPUTS","link":3},{"localized_name":"providerSettings","name":"providerSettings","shape":7,"type":"RUNWAREPROVIDERSETTINGS","link":null},{"localized_name":"safetyInputs","name":"safetyInputs","shape":7,"type":"RUNWARESAFETYINPUTS","link":null},{"localized_name":"settings","name":"settings","shape":7,"type":"RUNWARESETTINGS","link":null},{"localized_name":"ultralytics","name":"ultralytics","shape":7,"type":"RUNWAREULTRALYTICSINPUTS","link":null},{"localized_name":"advancedFeatures","name":"advancedFeatures","shape":7,"type":"RUNWAREIMAGEINFERENCEADVANCEDFEATURES","link":null},{"localized_name":"positivePrompt","name":"positivePrompt","type":"STRING","widget":{"name":"positivePrompt"},"link":null},{"localized_name":"negativePrompt","name":"negativePrompt","type":"STRING","widget":{"name":"negativePrompt"},"link":null},{"localized_name":"Multi Inference Mode","name":"Multi Inference Mode","type":"BOOLEAN","widget":{"name":"Multi Inference Mode"},"link":null},{"localized_name":"Prompt Weighting","name":"Prompt Weighting","type":"COMBO","widget":{"name":"Prompt Weighting"},"link":null},{"localized_name":"dimensions","name":"dimensions","type":"COMBO","widget":{"name":"dimensions"},"link":null},{"localized_name":"width","name":"width","type":"INT","widget":{"name":"width"},"link":null},{"localized_name":"height","name":"height","type":"INT","widget":{"name":"height"},"link":null},{"localized_name":"useResolution","name":"useResolution","type":"BOOLEAN","widget":{"name":"useResolution"},"link":null},{"localized_name":"resolution","name":"resolution","type":"COMBO","widget":{"name":"resolution"},"link":null},{"localized_name":"useSteps","name":"useSteps","type":"BOOLEAN","widget":{"name":"useSteps"},"link":null},{"localized_name":"steps","name":"steps","type":"INT","widget":{"name":"steps"},"link":null},{"localized_name":"useScheduler","name":"useScheduler","type":"BOOLEAN","widget":{"name":"useScheduler"},"link":null},{"localized_name":"scheduler","name":"scheduler","type":"COMBO","widget":{"name":"scheduler"},"link":null},{"localized_name":"useCFGScale","name":"useCFGScale","type":"BOOLEAN","widget":{"name":"useCFGScale"},"link":null},{"localized_name":"cfgScale","name":"cfgScale","type":"FLOAT","widget":{"name":"cfgScale"},"link":null},{"localized_name":"useSeed","name":"useSeed","type":"BOOLEAN","widget":{"name":"useSeed"},"link":null},{"localized_name":"seed","name":"seed","type":"INT","widget":{"name":"seed"},"link":null},{"localized_name":"useClipSkip","name":"useClipSkip","type":"BOOLEAN","widget":{"name":"useClipSkip"},"link":null},{"localized_name":"clipSkip","name":"clipSkip","type":"INT","widget":{"name":"clipSkip"},"link":null},{"localized_name":"strength","name":"strength","type":"FLOAT","widget":{"name":"strength"},"link":null},{"localized_name":"Mask Margin","name":"Mask Margin","type":"BOOLEAN","widget":{"name":"Mask Margin"},"link":null},{"localized_name":"maskMargin","name":"maskMargin","type":"INT","widget":{"name":"maskMargin"},"link":null},{"localized_name":"outputFormat","name":"outputFormat","type":"COMBO","widget":{"name":"outputFormat"},"link":null},{"localized_name":"batchSize","name":"batchSize","type":"INT","widget":{"name":"batchSize"},"link":null},{"localized_name":"acceleration","name":"acceleration","type":"COMBO","widget":{"name":"acceleration"},"link":null},{"localized_name":"outputQuality","name":"outputQuality","type":"INT","widget":{"name":"outputQuality"},"link":null},{"localized_name":"useUpscaleFactor","name":"useUpscaleFactor","type":"BOOLEAN","widget":{"name":"useUpscaleFactor"},"link":null},{"localized_name":"upscaleFactor","name":"upscaleFactor","type":"COMBO","widget":{"name":"upscaleFactor"},"link":null}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"STRING","links":[2]},{"localized_name":"RW-Task","name":"RW-Task","type":"RUNWARETASK","links":null}],"properties":{"cnr_id":"ComfyUI-Runware","ver":"89495cfc137c18cd1f5fca7eb52d3870822d5a65","Node name for S&R":"Runware Image Inference"},"widgets_values":["A handsome young man wearing the provided garment naturally and realistically, full upper body portrait, centered composition, photorealistic skin texture, realistic fabric draping and fit, modern fashion editorial style, soft studio lighting, clean background, natural pose, cinematic lighting, highly detailed, sharp focus, professional fashion photography, realistic proportions, high-quality composition","",false,"Disabled","None",512,512,false,"1k",false,4,false,"Default",false,6.5,false,1378814689,"randomize",false,0,0.8,false,32,"WEBP",1,"none",95,false,2],"bgcolor":"#5345bf"}],"links":[[1,3,0,1,0,"RUNWAREMODEL"],[2,1,0,6,0,"STRING"],[3,2,0,1,12,"RUNWAREIMAGEINFERENCEINPUTS"],[4,4,0,2,21,"IMAGE"],[5,5,0,2,22,"IMAGE"]],"groups":[],"config":{},"extra":{"ds":{"scale":0.505529313703492,"offset":[1286.8312326450907,220.27112610139724]}},"version":0.4} \ No newline at end of file +{"id":"3655737e-74ea-4ca7-b104-c3cea32f6ee5","revision":0,"last_node_id":9,"last_link_id":12,"nodes":[{"id":6,"type":"Runware Save Image","pos":[726.4894147644764,72.35343419027436],"size":[270,318],"flags":{},"order":5,"mode":0,"inputs":[{"localized_name":"Images","name":"Images","type":"STRING","widget":{"name":"Images"},"link":2},{"localized_name":"filenamePrefix","name":"filenamePrefix","type":"STRING","widget":{"name":"filenamePrefix"},"link":null},{"localized_name":"saveImage","name":"saveImage","type":"BOOLEAN","widget":{"name":"saveImage"},"link":null}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"IMAGE","links":null}],"properties":{"cnr_id":"ComfyUI-Runware","ver":"89495cfc137c18cd1f5fca7eb52d3870822d5a65","Node name for S&R":"Runware Save Image"},"widgets_values":["","ComfyUI",true],"bgcolor":"#5345bf"},{"id":3,"type":"Runware Model Search","pos":[-773.691111015741,8.450735327300883],"size":[272.111328125,154],"flags":{},"order":0,"mode":0,"inputs":[{"localized_name":"Model Search","name":"Model Search","type":"STRING","widget":{"name":"Model Search"},"link":null},{"localized_name":"Model Architecture","name":"Model Architecture","type":"COMBO","widget":{"name":"Model Architecture"},"link":null},{"localized_name":"ModelType","name":"ModelType","type":"COMBO","widget":{"name":"ModelType"},"link":null},{"localized_name":"ModelList","name":"ModelList","type":"COMBO","widget":{"name":"ModelList"},"link":null},{"localized_name":"Use Search Value","name":"Use Search Value","type":"BOOLEAN","widget":{"name":"Use Search Value"},"link":null}],"outputs":[{"localized_name":"Runware Model","name":"Runware Model","type":"RUNWAREMODEL","links":[1]}],"properties":{"cnr_id":"ComfyUI-Runware","ver":"89495cfc137c18cd1f5fca7eb52d3870822d5a65","Node name for S&R":"Runware Model Search"},"widgets_values":["bfl:flux@vto","All","Base Model","bfl:flux@vto (FLUX Virtual Try-On 1.0)",true],"bgcolor":"#5345bf"},{"id":1,"type":"Runware Image Inference","pos":[86.26102712585534,-54.459817683082285],"size":[400,1130],"flags":{},"order":4,"mode":0,"inputs":[{"localized_name":"Model","name":"Model","type":"RUNWAREMODEL","link":1},{"localized_name":"Accelerator","name":"Accelerator","shape":7,"type":"RUNWAREACCELERATOR","link":null},{"localized_name":"Lora","name":"Lora","shape":7,"type":"RUNWARELORA","link":null},{"localized_name":"Outpainting","name":"Outpainting","shape":7,"type":"RUNWAREOUTPAINT","link":null},{"localized_name":"IPAdapters","name":"IPAdapters","shape":7,"type":"RUNWAREIPAdapter","link":null},{"localized_name":"ControlNet","name":"ControlNet","shape":7,"type":"RUNWARECONTROLNET","link":null},{"localized_name":"Refiner","name":"Refiner","shape":7,"type":"RUNWAREREFINER","link":null},{"localized_name":"seedImage","name":"seedImage","shape":7,"type":"IMAGE","link":null},{"localized_name":"maskImage","name":"maskImage","shape":7,"type":"MASK","link":null},{"localized_name":"Embeddings","name":"Embeddings","shape":7,"type":"RUNWAREEMBEDDING","link":null},{"localized_name":"VAE","name":"VAE","shape":7,"type":"RUNWAREVAE","link":null},{"localized_name":"referenceImages","name":"referenceImages","shape":7,"type":"RUNWAREREFERENCEIMAGES","link":null},{"localized_name":"inputs","name":"inputs","shape":7,"type":"RUNWAREIMAGEINFERENCEINPUTS","link":10},{"localized_name":"providerSettings","name":"providerSettings","shape":7,"type":"RUNWAREPROVIDERSETTINGS","link":null},{"localized_name":"safetyInputs","name":"safetyInputs","shape":7,"type":"RUNWARESAFETYINPUTS","link":null},{"localized_name":"settings","name":"settings","shape":7,"type":"RUNWARESETTINGS","link":null},{"localized_name":"ultralytics","name":"ultralytics","shape":7,"type":"RUNWAREULTRALYTICSINPUTS","link":null},{"localized_name":"advancedFeatures","name":"advancedFeatures","shape":7,"type":"RUNWAREIMAGEINFERENCEADVANCEDFEATURES","link":null},{"localized_name":"positivePrompt","name":"positivePrompt","type":"STRING","widget":{"name":"positivePrompt"},"link":null},{"localized_name":"negativePrompt","name":"negativePrompt","type":"STRING","widget":{"name":"negativePrompt"},"link":null},{"localized_name":"Multi Inference Mode","name":"Multi Inference Mode","type":"BOOLEAN","widget":{"name":"Multi Inference Mode"},"link":null},{"localized_name":"Prompt Weighting","name":"Prompt Weighting","type":"COMBO","widget":{"name":"Prompt Weighting"},"link":null},{"localized_name":"dimensions","name":"dimensions","type":"COMBO","widget":{"name":"dimensions"},"link":null},{"localized_name":"width","name":"width","type":"INT","widget":{"name":"width"},"link":null},{"localized_name":"height","name":"height","type":"INT","widget":{"name":"height"},"link":null},{"localized_name":"useResolution","name":"useResolution","type":"BOOLEAN","widget":{"name":"useResolution"},"link":null},{"localized_name":"resolution","name":"resolution","type":"COMBO","widget":{"name":"resolution"},"link":null},{"localized_name":"useSteps","name":"useSteps","type":"BOOLEAN","widget":{"name":"useSteps"},"link":null},{"localized_name":"steps","name":"steps","type":"INT","widget":{"name":"steps"},"link":null},{"localized_name":"useScheduler","name":"useScheduler","type":"BOOLEAN","widget":{"name":"useScheduler"},"link":null},{"localized_name":"scheduler","name":"scheduler","type":"COMBO","widget":{"name":"scheduler"},"link":null},{"localized_name":"useCFGScale","name":"useCFGScale","type":"BOOLEAN","widget":{"name":"useCFGScale"},"link":null},{"localized_name":"cfgScale","name":"cfgScale","type":"FLOAT","widget":{"name":"cfgScale"},"link":null},{"localized_name":"useSeed","name":"useSeed","type":"BOOLEAN","widget":{"name":"useSeed"},"link":null},{"localized_name":"seed","name":"seed","type":"INT","widget":{"name":"seed"},"link":null},{"localized_name":"useClipSkip","name":"useClipSkip","type":"BOOLEAN","widget":{"name":"useClipSkip"},"link":null},{"localized_name":"clipSkip","name":"clipSkip","type":"INT","widget":{"name":"clipSkip"},"link":null},{"localized_name":"strength","name":"strength","type":"FLOAT","widget":{"name":"strength"},"link":null},{"localized_name":"Mask Margin","name":"Mask Margin","type":"BOOLEAN","widget":{"name":"Mask Margin"},"link":null},{"localized_name":"maskMargin","name":"maskMargin","type":"INT","widget":{"name":"maskMargin"},"link":null},{"localized_name":"outputFormat","name":"outputFormat","type":"COMBO","widget":{"name":"outputFormat"},"link":null},{"localized_name":"batchSize","name":"batchSize","type":"INT","widget":{"name":"batchSize"},"link":null},{"localized_name":"acceleration","name":"acceleration","type":"COMBO","widget":{"name":"acceleration"},"link":null},{"localized_name":"outputQuality","name":"outputQuality","type":"INT","widget":{"name":"outputQuality"},"link":null},{"localized_name":"useUpscaleFactor","name":"useUpscaleFactor","type":"BOOLEAN","widget":{"name":"useUpscaleFactor"},"link":null},{"localized_name":"upscaleFactor","name":"upscaleFactor","type":"COMBO","widget":{"name":"upscaleFactor"},"link":null}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"STRING","links":[2]},{"localized_name":"RW-Task","name":"RW-Task","type":"RUNWARETASK","links":null}],"properties":{"cnr_id":"ComfyUI-Runware","ver":"89495cfc137c18cd1f5fca7eb52d3870822d5a65","Node name for S&R":"Runware Image Inference"},"widgets_values":["A handsome young man wearing the provided garment naturally and realistically, full upper body portrait, centered composition, photorealistic skin texture, realistic fabric draping and fit, modern fashion editorial style, soft studio lighting, clean background, natural pose, cinematic lighting, highly detailed, sharp focus, professional fashion photography, realistic proportions, high-quality composition","",false,"Disabled","None",512,512,false,"1k",false,4,false,"Default",false,6.5,false,1043606394,"randomize",false,0,0.8,false,32,"WEBP",1,"none",95,false,2],"bgcolor":"#5345bf"},{"id":4,"type":"LoadImage","pos":[-991.1887304210379,304.8989870658721],"size":[282.798828125,314.00000000000006],"flags":{},"order":1,"mode":0,"inputs":[{"localized_name":"image","name":"image","type":"COMBO","widget":{"name":"image"},"link":null},{"localized_name":"choose file to upload","name":"upload","type":"IMAGEUPLOAD","widget":{"name":"upload"},"link":null}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"IMAGE","links":[11]},{"localized_name":"MASK","name":"MASK","type":"MASK","links":null}],"properties":{"cnr_id":"comfy-core","ver":"0.22.0","Node name for S&R":"LoadImage"},"widgets_values":["1fe8b9d2-a586-49fd-bd74-94dad01f9141.jpg","image"]},{"id":5,"type":"LoadImage","pos":[-943.0316219425166,698.9850374938297],"size":[282.798828125,314.00000000000006],"flags":{},"order":2,"mode":0,"inputs":[{"localized_name":"image","name":"image","type":"COMBO","widget":{"name":"image"},"link":null},{"localized_name":"choose file to upload","name":"upload","type":"IMAGEUPLOAD","widget":{"name":"upload"},"link":null}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"IMAGE","links":[12]},{"localized_name":"MASK","name":"MASK","type":"MASK","links":null}],"properties":{"cnr_id":"comfy-core","ver":"0.22.0","Node name for S&R":"LoadImage"},"widgets_values":["d2e78e0c-53b0-413b-939b-541375cfa1ec.jpg","image"]},{"id":9,"type":"Runware Image Inference Inputs","pos":[-396.22791895667746,-11.697546085662132],"size":[403.740234375,1778],"flags":{},"order":3,"mode":0,"inputs":[{"localized_name":"image","name":"image","shape":7,"type":"IMAGE","link":null},{"localized_name":"mask","name":"mask","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 1","name":"Reference Image 1","shape":7,"type":"IMAGE","link":11},{"localized_name":"Reference Image 2","name":"Reference Image 2","shape":7,"type":"IMAGE","link":12},{"localized_name":"Reference Image 3","name":"Reference Image 3","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 4","name":"Reference Image 4","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 5","name":"Reference Image 5","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 6","name":"Reference Image 6","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 7","name":"Reference Image 7","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 8","name":"Reference Image 8","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 9","name":"Reference Image 9","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 10","name":"Reference Image 10","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 11","name":"Reference Image 11","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 12","name":"Reference Image 12","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 13","name":"Reference Image 13","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Image 14","name":"Reference Image 14","shape":7,"type":"IMAGE","link":null},{"localized_name":"Super Resolution Reference Image 1","name":"Super Resolution Reference Image 1","shape":7,"type":"IMAGE","link":null},{"localized_name":"Super Resolution Reference Image 2","name":"Super Resolution Reference Image 2","shape":7,"type":"IMAGE","link":null},{"localized_name":"Super Resolution Reference Image 3","name":"Super Resolution Reference Image 3","shape":7,"type":"IMAGE","link":null},{"localized_name":"Super Resolution Reference Image 4","name":"Super Resolution Reference Image 4","shape":7,"type":"IMAGE","link":null},{"localized_name":"Super Resolution Reference Image 5","name":"Super Resolution Reference Image 5","shape":7,"type":"IMAGE","link":null},{"localized_name":"Reference Tag 1","name":"Reference Tag 1","shape":7,"type":"STRING","widget":{"name":"Reference Tag 1"},"link":null},{"localized_name":"Reference Role 1","name":"Reference Role 1","shape":7,"type":"STRING","widget":{"name":"Reference Role 1"},"link":null},{"localized_name":"Reference Type 1","name":"Reference Type 1","shape":7,"type":"STRING","widget":{"name":"Reference Type 1"},"link":null},{"localized_name":"Reference Strength 1","name":"Reference Strength 1","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 1"},"link":null},{"localized_name":"Reference Tag 2","name":"Reference Tag 2","shape":7,"type":"STRING","widget":{"name":"Reference Tag 2"},"link":null},{"localized_name":"Reference Role 2","name":"Reference Role 2","shape":7,"type":"STRING","widget":{"name":"Reference Role 2"},"link":null},{"localized_name":"Reference Type 2","name":"Reference Type 2","shape":7,"type":"STRING","widget":{"name":"Reference Type 2"},"link":null},{"localized_name":"Reference Strength 2","name":"Reference Strength 2","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 2"},"link":null},{"localized_name":"Reference Tag 3","name":"Reference Tag 3","shape":7,"type":"STRING","widget":{"name":"Reference Tag 3"},"link":null},{"localized_name":"Reference Role 3","name":"Reference Role 3","shape":7,"type":"STRING","widget":{"name":"Reference Role 3"},"link":null},{"localized_name":"Reference Type 3","name":"Reference Type 3","shape":7,"type":"STRING","widget":{"name":"Reference Type 3"},"link":null},{"localized_name":"Reference Strength 3","name":"Reference Strength 3","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 3"},"link":null},{"localized_name":"Reference Tag 4","name":"Reference Tag 4","shape":7,"type":"STRING","widget":{"name":"Reference Tag 4"},"link":null},{"localized_name":"Reference Role 4","name":"Reference Role 4","shape":7,"type":"STRING","widget":{"name":"Reference Role 4"},"link":null},{"localized_name":"Reference Type 4","name":"Reference Type 4","shape":7,"type":"STRING","widget":{"name":"Reference Type 4"},"link":null},{"localized_name":"Reference Strength 4","name":"Reference Strength 4","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 4"},"link":null},{"localized_name":"Reference Tag 5","name":"Reference Tag 5","shape":7,"type":"STRING","widget":{"name":"Reference Tag 5"},"link":null},{"localized_name":"Reference Role 5","name":"Reference Role 5","shape":7,"type":"STRING","widget":{"name":"Reference Role 5"},"link":null},{"localized_name":"Reference Type 5","name":"Reference Type 5","shape":7,"type":"STRING","widget":{"name":"Reference Type 5"},"link":null},{"localized_name":"Reference Strength 5","name":"Reference Strength 5","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 5"},"link":null},{"localized_name":"Reference Tag 6","name":"Reference Tag 6","shape":7,"type":"STRING","widget":{"name":"Reference Tag 6"},"link":null},{"localized_name":"Reference Role 6","name":"Reference Role 6","shape":7,"type":"STRING","widget":{"name":"Reference Role 6"},"link":null},{"localized_name":"Reference Type 6","name":"Reference Type 6","shape":7,"type":"STRING","widget":{"name":"Reference Type 6"},"link":null},{"localized_name":"Reference Strength 6","name":"Reference Strength 6","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 6"},"link":null},{"localized_name":"Reference Tag 7","name":"Reference Tag 7","shape":7,"type":"STRING","widget":{"name":"Reference Tag 7"},"link":null},{"localized_name":"Reference Role 7","name":"Reference Role 7","shape":7,"type":"STRING","widget":{"name":"Reference Role 7"},"link":null},{"localized_name":"Reference Type 7","name":"Reference Type 7","shape":7,"type":"STRING","widget":{"name":"Reference Type 7"},"link":null},{"localized_name":"Reference Strength 7","name":"Reference Strength 7","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 7"},"link":null},{"localized_name":"Reference Tag 8","name":"Reference Tag 8","shape":7,"type":"STRING","widget":{"name":"Reference Tag 8"},"link":null},{"localized_name":"Reference Role 8","name":"Reference Role 8","shape":7,"type":"STRING","widget":{"name":"Reference Role 8"},"link":null},{"localized_name":"Reference Type 8","name":"Reference Type 8","shape":7,"type":"STRING","widget":{"name":"Reference Type 8"},"link":null},{"localized_name":"Reference Strength 8","name":"Reference Strength 8","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 8"},"link":null},{"localized_name":"Reference Tag 9","name":"Reference Tag 9","shape":7,"type":"STRING","widget":{"name":"Reference Tag 9"},"link":null},{"localized_name":"Reference Role 9","name":"Reference Role 9","shape":7,"type":"STRING","widget":{"name":"Reference Role 9"},"link":null},{"localized_name":"Reference Type 9","name":"Reference Type 9","shape":7,"type":"STRING","widget":{"name":"Reference Type 9"},"link":null},{"localized_name":"Reference Strength 9","name":"Reference Strength 9","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 9"},"link":null},{"localized_name":"Reference Tag 10","name":"Reference Tag 10","shape":7,"type":"STRING","widget":{"name":"Reference Tag 10"},"link":null},{"localized_name":"Reference Role 10","name":"Reference Role 10","shape":7,"type":"STRING","widget":{"name":"Reference Role 10"},"link":null},{"localized_name":"Reference Type 10","name":"Reference Type 10","shape":7,"type":"STRING","widget":{"name":"Reference Type 10"},"link":null},{"localized_name":"Reference Strength 10","name":"Reference Strength 10","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 10"},"link":null},{"localized_name":"Reference Tag 11","name":"Reference Tag 11","shape":7,"type":"STRING","widget":{"name":"Reference Tag 11"},"link":null},{"localized_name":"Reference Role 11","name":"Reference Role 11","shape":7,"type":"STRING","widget":{"name":"Reference Role 11"},"link":null},{"localized_name":"Reference Type 11","name":"Reference Type 11","shape":7,"type":"STRING","widget":{"name":"Reference Type 11"},"link":null},{"localized_name":"Reference Strength 11","name":"Reference Strength 11","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 11"},"link":null},{"localized_name":"Reference Tag 12","name":"Reference Tag 12","shape":7,"type":"STRING","widget":{"name":"Reference Tag 12"},"link":null},{"localized_name":"Reference Role 12","name":"Reference Role 12","shape":7,"type":"STRING","widget":{"name":"Reference Role 12"},"link":null},{"localized_name":"Reference Type 12","name":"Reference Type 12","shape":7,"type":"STRING","widget":{"name":"Reference Type 12"},"link":null},{"localized_name":"Reference Strength 12","name":"Reference Strength 12","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 12"},"link":null},{"localized_name":"Reference Tag 13","name":"Reference Tag 13","shape":7,"type":"STRING","widget":{"name":"Reference Tag 13"},"link":null},{"localized_name":"Reference Role 13","name":"Reference Role 13","shape":7,"type":"STRING","widget":{"name":"Reference Role 13"},"link":null},{"localized_name":"Reference Type 13","name":"Reference Type 13","shape":7,"type":"STRING","widget":{"name":"Reference Type 13"},"link":null},{"localized_name":"Reference Strength 13","name":"Reference Strength 13","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 13"},"link":null},{"localized_name":"Reference Tag 14","name":"Reference Tag 14","shape":7,"type":"STRING","widget":{"name":"Reference Tag 14"},"link":null},{"localized_name":"Reference Role 14","name":"Reference Role 14","shape":7,"type":"STRING","widget":{"name":"Reference Role 14"},"link":null},{"localized_name":"Reference Type 14","name":"Reference Type 14","shape":7,"type":"STRING","widget":{"name":"Reference Type 14"},"link":null},{"localized_name":"Reference Strength 14","name":"Reference Strength 14","shape":7,"type":"FLOAT","widget":{"name":"Reference Strength 14"},"link":null}],"outputs":[{"localized_name":"Inference Inputs","name":"Inference Inputs","type":"RUNWAREIMAGEINFERENCEINPUTS","links":[10]}],"properties":{"cnr_id":"ComfyUI-Runware","ver":"c84d195611e6a92ae44ab2c4898dad60fb093419","Node name for S&R":"Runware Image Inference Inputs"},"widgets_values":["","person","",0,"","garment","",0,"","","",0,"","","",0,"","","",0,"","","",0,"","","",0,"","","",0,"","","",0,"","","",0,"","","",0,"","","",0,"","","",0,"","","",0],"bgcolor":"#5345bf"}],"links":[[1,3,0,1,0,"RUNWAREMODEL"],[2,1,0,6,0,"STRING"],[10,9,0,1,12,"RUNWAREIMAGEINFERENCEINPUTS"],[11,4,0,9,2,"IMAGE"],[12,5,0,9,3,"IMAGE"]],"groups":[],"config":{},"extra":{"ds":{"scale":0.505529313703492,"offset":[1304.8584389869675,193.67075840662255]}},"version":0.4} \ No newline at end of file