fofr / image-merge-sdxl
Merge two images together with a prompt
Prediction
fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75ID4f4atn3blzh57avgawg3gqt3yuStatusSucceededSourceWebHardwareA40 (Large)Total durationCreatedInput
- steps
- 20
- width
- 1024
- height
- 1024
- prompt
- a bright abstract painting of a cyborg
- base_model
- albedobaseXL_v13.safetensors
- batch_size
- 1
- merge_strength
- 0.92
- negative_prompt
- added_merge_noise
- 0
{ "steps": 20, "width": 1024, "height": 1024, "prompt": "a bright abstract painting of a cyborg", "image_1": "https://replicate.delivery/pbxt/KRyveMWjBWpI9NR6GuK1B1GoJMUhlvfUEa0yq6RWBqz3HaP5/ComfyUI_00319_.png", "image_2": "https://replicate.delivery/pbxt/KRyveLQ82s8OdaAqUNIV5kbH3dPIdrGTqO9ka1IK5TecpWz0/output-0.png", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 0.92, "negative_prompt": "", "added_merge_noise": 0 }
Install Replicate’s Node.js client library:npm install replicate
Import and set up the client:import Replicate from "replicate"; import fs from "node:fs"; const replicate = new Replicate({ auth: process.env.REPLICATE_API_TOKEN, });
Run fofr/image-merge-sdxl using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
const output = await replicate.run( "fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75", { input: { steps: 20, width: 1024, height: 1024, prompt: "a bright abstract painting of a cyborg", image_1: "https://replicate.delivery/pbxt/KRyveMWjBWpI9NR6GuK1B1GoJMUhlvfUEa0yq6RWBqz3HaP5/ComfyUI_00319_.png", image_2: "https://replicate.delivery/pbxt/KRyveLQ82s8OdaAqUNIV5kbH3dPIdrGTqO9ka1IK5TecpWz0/output-0.png", base_model: "albedobaseXL_v13.safetensors", batch_size: 1, merge_strength: 0.92, negative_prompt: "", added_merge_noise: 0 } } ); // To access the file URL: console.log(output[0].url()); //=> "http://example.com" // To write the file to disk: fs.writeFile("my-image.png", output[0]);
To learn more, take a look at the guide on getting started with Node.js.
Install Replicate’s Python client library:pip install replicate
Import the client:import replicate
Run fofr/image-merge-sdxl using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
output = replicate.run( "fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75", input={ "steps": 20, "width": 1024, "height": 1024, "prompt": "a bright abstract painting of a cyborg", "image_1": "https://replicate.delivery/pbxt/KRyveMWjBWpI9NR6GuK1B1GoJMUhlvfUEa0yq6RWBqz3HaP5/ComfyUI_00319_.png", "image_2": "https://replicate.delivery/pbxt/KRyveLQ82s8OdaAqUNIV5kbH3dPIdrGTqO9ka1IK5TecpWz0/output-0.png", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 0.92, "negative_prompt": "", "added_merge_noise": 0 } ) # To access the file URL: print(output[0].url()) #=> "http://example.com" # To write the file to disk: with open("my-image.png", "wb") as file: file.write(output[0].read())
To learn more, take a look at the guide on getting started with Python.
Run fofr/image-merge-sdxl using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
curl -s -X POST \ -H "Authorization: Bearer $REPLICATE_API_TOKEN" \ -H "Content-Type: application/json" \ -H "Prefer: wait" \ -d $'{ "version": "fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75", "input": { "steps": 20, "width": 1024, "height": 1024, "prompt": "a bright abstract painting of a cyborg", "image_1": "https://replicate.delivery/pbxt/KRyveMWjBWpI9NR6GuK1B1GoJMUhlvfUEa0yq6RWBqz3HaP5/ComfyUI_00319_.png", "image_2": "https://replicate.delivery/pbxt/KRyveLQ82s8OdaAqUNIV5kbH3dPIdrGTqO9ka1IK5TecpWz0/output-0.png", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 0.92, "negative_prompt": "", "added_merge_noise": 0 } }' \ https://api.replicate.com/v1/predictions
To learn more, take a look at Replicate’s HTTP API reference docs.
You can run this model locally using Cog. First, install Cog:brew install cog
If you don’t have Homebrew, there are other installation options available.
Run this to download the model and run it in your local environment:
cog predict r8.im/fofr/image-merge-sdxl@sha256:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75 \ -i 'steps=20' \ -i 'width=1024' \ -i 'height=1024' \ -i 'prompt="a bright abstract painting of a cyborg"' \ -i 'image_1="https://replicate.delivery/pbxt/KRyveMWjBWpI9NR6GuK1B1GoJMUhlvfUEa0yq6RWBqz3HaP5/ComfyUI_00319_.png"' \ -i 'image_2="https://replicate.delivery/pbxt/KRyveLQ82s8OdaAqUNIV5kbH3dPIdrGTqO9ka1IK5TecpWz0/output-0.png"' \ -i 'base_model="albedobaseXL_v13.safetensors"' \ -i 'batch_size=1' \ -i 'merge_strength=0.92' \ -i 'negative_prompt=""' \ -i 'added_merge_noise=0'
To learn more, take a look at the Cog documentation.
Run this to download the model and run it in your local environment:
docker run -d -p 5000:5000 --gpus=all r8.im/fofr/image-merge-sdxl@sha256:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75
curl -s -X POST \ -H "Content-Type: application/json" \ -d $'{ "input": { "steps": 20, "width": 1024, "height": 1024, "prompt": "a bright abstract painting of a cyborg", "image_1": "https://replicate.delivery/pbxt/KRyveMWjBWpI9NR6GuK1B1GoJMUhlvfUEa0yq6RWBqz3HaP5/ComfyUI_00319_.png", "image_2": "https://replicate.delivery/pbxt/KRyveLQ82s8OdaAqUNIV5kbH3dPIdrGTqO9ka1IK5TecpWz0/output-0.png", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 0.92, "negative_prompt": "", "added_merge_noise": 0 } }' \ http://localhost:5000/predictions
To learn more, take a look at the Cog documentation.
Output
{ "completed_at": "2024-02-22T22:13:04.454822Z", "created_at": "2024-02-22T22:12:52.171142Z", "data_removed": false, "error": null, "id": "4f4atn3blzh57avgawg3gqt3yu", "input": { "steps": 20, "width": 1024, "height": 1024, "prompt": "a bright abstract painting of a cyborg", "image_1": "https://replicate.delivery/pbxt/KRyveMWjBWpI9NR6GuK1B1GoJMUhlvfUEa0yq6RWBqz3HaP5/ComfyUI_00319_.png", "image_2": "https://replicate.delivery/pbxt/KRyveLQ82s8OdaAqUNIV5kbH3dPIdrGTqO9ka1IK5TecpWz0/output-0.png", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 0.92, "negative_prompt": "", "added_merge_noise": 0 }, "logs": "Random seed set to: 3573528874\nChecking weights\n✅ albedobaseXL_v13.safetensors\n✅ model.sdxl.safetensors\n✅ ip-adapter_sdxl.safetensors\n====================================\nChecking inputs\n✅ /tmp/inputs/left.png\n✅ /tmp/inputs/right.png\n====================================\nRunning workflow\ngot prompt\nExecuting node 4, title: Efficient Loader, class type: Efficient Loader\nRequested to load SDXLClipModel\nLoading 1 new model\n----------------------------------------\n\u001b[36mEfficient Loader Models Cache:\u001b[0m\nCkpt:\n[1] albedobaseXL_v13\nExecuting node 15, title: Apply IPAdapter, class type: IPAdapterApply\nExecuting node 8, title: KSampler (Efficient), class type: KSampler (Efficient)\nRequested to load SDXL\nLoading 1 new model\n 0%| | 0/20 [00:00<?, ?it/s]\n 5%|▌ | 1/20 [00:00<00:04, 4.40it/s]\n 10%|█ | 2/20 [00:00<00:04, 4.25it/s]\n 15%|█▌ | 3/20 [00:00<00:04, 4.20it/s]\n 20%|██ | 4/20 [00:00<00:03, 4.17it/s]\n 25%|██▌ | 5/20 [00:01<00:03, 4.16it/s]\n 30%|███ | 6/20 [00:01<00:03, 4.13it/s]\n 35%|███▌ | 7/20 [00:01<00:03, 4.10it/s]\n 40%|████ | 8/20 [00:01<00:02, 4.11it/s]\n 45%|████▌ | 9/20 [00:02<00:02, 4.11it/s]\n 50%|█████ | 10/20 [00:02<00:02, 4.02it/s]\n 55%|█████▌ | 11/20 [00:02<00:02, 4.07it/s]\n 60%|██████ | 12/20 [00:02<00:01, 4.09it/s]\n 65%|██████▌ | 13/20 [00:03<00:01, 4.12it/s]\n 70%|███████ | 14/20 [00:03<00:01, 4.15it/s]\n 75%|███████▌ | 15/20 [00:03<00:01, 4.15it/s]\n 80%|████████ | 16/20 [00:03<00:00, 4.17it/s]\n 85%|████████▌ | 17/20 [00:04<00:00, 4.18it/s]\n 90%|█████████ | 18/20 [00:04<00:00, 4.20it/s]\n 95%|█████████▌| 19/20 [00:04<00:00, 4.32it/s]\n100%|██████████| 20/20 [00:04<00:00, 4.44it/s]\n100%|██████████| 20/20 [00:04<00:00, 4.20it/s]\nExecuting node 9, title: Save Image, class type: SaveImage\nPrompt executed in 8.80 seconds\noutputs: {'8': {'images': []}, '9': {'images': [{'filename': 'ComfyUI_00001_.png', 'subfolder': '', 'type': 'output'}]}}\n====================================\nContents of /tmp/outputs:\nComfyUI_00001_.png", "metrics": { "predict_time": 12.203021, "total_time": 12.28368 }, "output": [ "https://replicate.delivery/pbxt/NPoOeZCE9WxTIykiejpaQ0eFWKtU3iwrkw1UiXgWqTCcHvykA/ComfyUI_00001_.png" ], "started_at": "2024-02-22T22:12:52.251801Z", "status": "succeeded", "urls": { "get": "https://api.replicate.com/v1/predictions/4f4atn3blzh57avgawg3gqt3yu", "cancel": "https://api.replicate.com/v1/predictions/4f4atn3blzh57avgawg3gqt3yu/cancel" }, "version": "101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75" }
Generated inRandom seed set to: 3573528874 Checking weights ✅ albedobaseXL_v13.safetensors ✅ model.sdxl.safetensors ✅ ip-adapter_sdxl.safetensors ==================================== Checking inputs ✅ /tmp/inputs/left.png ✅ /tmp/inputs/right.png ==================================== Running workflow got prompt Executing node 4, title: Efficient Loader, class type: Efficient Loader Requested to load SDXLClipModel Loading 1 new model ---------------------------------------- Efficient Loader Models Cache: Ckpt: [1] albedobaseXL_v13 Executing node 15, title: Apply IPAdapter, class type: IPAdapterApply Executing node 8, title: KSampler (Efficient), class type: KSampler (Efficient) Requested to load SDXL Loading 1 new model 0%| | 0/20 [00:00<?, ?it/s] 5%|▌ | 1/20 [00:00<00:04, 4.40it/s] 10%|█ | 2/20 [00:00<00:04, 4.25it/s] 15%|█▌ | 3/20 [00:00<00:04, 4.20it/s] 20%|██ | 4/20 [00:00<00:03, 4.17it/s] 25%|██▌ | 5/20 [00:01<00:03, 4.16it/s] 30%|███ | 6/20 [00:01<00:03, 4.13it/s] 35%|███▌ | 7/20 [00:01<00:03, 4.10it/s] 40%|████ | 8/20 [00:01<00:02, 4.11it/s] 45%|████▌ | 9/20 [00:02<00:02, 4.11it/s] 50%|█████ | 10/20 [00:02<00:02, 4.02it/s] 55%|█████▌ | 11/20 [00:02<00:02, 4.07it/s] 60%|██████ | 12/20 [00:02<00:01, 4.09it/s] 65%|██████▌ | 13/20 [00:03<00:01, 4.12it/s] 70%|███████ | 14/20 [00:03<00:01, 4.15it/s] 75%|███████▌ | 15/20 [00:03<00:01, 4.15it/s] 80%|████████ | 16/20 [00:03<00:00, 4.17it/s] 85%|████████▌ | 17/20 [00:04<00:00, 4.18it/s] 90%|█████████ | 18/20 [00:04<00:00, 4.20it/s] 95%|█████████▌| 19/20 [00:04<00:00, 4.32it/s] 100%|██████████| 20/20 [00:04<00:00, 4.44it/s] 100%|██████████| 20/20 [00:04<00:00, 4.20it/s] Executing node 9, title: Save Image, class type: SaveImage Prompt executed in 8.80 seconds outputs: {'8': {'images': []}, '9': {'images': [{'filename': 'ComfyUI_00001_.png', 'subfolder': '', 'type': 'output'}]}} ==================================== Contents of /tmp/outputs: ComfyUI_00001_.png
Prediction
fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75IDiesqsutbbhssywhlqfhw466fjuStatusSucceededSourceWebHardwareA40 (Large)Total durationCreatedInput
- steps
- 20
- width
- 1536
- height
- 1024
- prompt
- a romantic couple, renaissance painting, masterpiece, ancient
- base_model
- albedobaseXL_v13.safetensors
- batch_size
- 1
- merge_strength
- 1
- negative_prompt
- ugly, broken
- added_merge_noise
- 0.5
{ "steps": 20, "width": 1536, "height": 1024, "prompt": "a romantic couple, renaissance painting, masterpiece, ancient", "image_1": "https://replicate.delivery/pbxt/KS0DG4acIC7MRzAT9257GkB9LaC8eGMPTAAosmWdQTwztcqc/2023-11-22--15-10-07-u-q1-fofr_a_romantic_scene_1e14107d-d841-4385-a455-ca5d0ab230c3.png", "image_2": "https://replicate.delivery/pbxt/KS0DG75waIWc93KWOTvM53XbQCO8jOWeHxTLax6MyZ1qQWv7/2023-11-22--15-09-55-u-q4-fofr_a_scifi_scene_8b3b892c-e95a-45d6-8df9-adba2e7141dc.png", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "ugly, broken", "added_merge_noise": 0.5 }
Install Replicate’s Node.js client library:npm install replicate
Import and set up the client:import Replicate from "replicate"; import fs from "node:fs"; const replicate = new Replicate({ auth: process.env.REPLICATE_API_TOKEN, });
Run fofr/image-merge-sdxl using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
const output = await replicate.run( "fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75", { input: { steps: 20, width: 1536, height: 1024, prompt: "a romantic couple, renaissance painting, masterpiece, ancient", image_1: "https://replicate.delivery/pbxt/KS0DG4acIC7MRzAT9257GkB9LaC8eGMPTAAosmWdQTwztcqc/2023-11-22--15-10-07-u-q1-fofr_a_romantic_scene_1e14107d-d841-4385-a455-ca5d0ab230c3.png", image_2: "https://replicate.delivery/pbxt/KS0DG75waIWc93KWOTvM53XbQCO8jOWeHxTLax6MyZ1qQWv7/2023-11-22--15-09-55-u-q4-fofr_a_scifi_scene_8b3b892c-e95a-45d6-8df9-adba2e7141dc.png", base_model: "albedobaseXL_v13.safetensors", batch_size: 1, merge_strength: 1, negative_prompt: "ugly, broken", added_merge_noise: 0.5 } } ); // To access the file URL: console.log(output[0].url()); //=> "http://example.com" // To write the file to disk: fs.writeFile("my-image.png", output[0]);
To learn more, take a look at the guide on getting started with Node.js.
Install Replicate’s Python client library:pip install replicate
Import the client:import replicate
Run fofr/image-merge-sdxl using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
output = replicate.run( "fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75", input={ "steps": 20, "width": 1536, "height": 1024, "prompt": "a romantic couple, renaissance painting, masterpiece, ancient", "image_1": "https://replicate.delivery/pbxt/KS0DG4acIC7MRzAT9257GkB9LaC8eGMPTAAosmWdQTwztcqc/2023-11-22--15-10-07-u-q1-fofr_a_romantic_scene_1e14107d-d841-4385-a455-ca5d0ab230c3.png", "image_2": "https://replicate.delivery/pbxt/KS0DG75waIWc93KWOTvM53XbQCO8jOWeHxTLax6MyZ1qQWv7/2023-11-22--15-09-55-u-q4-fofr_a_scifi_scene_8b3b892c-e95a-45d6-8df9-adba2e7141dc.png", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "ugly, broken", "added_merge_noise": 0.5 } ) # To access the file URL: print(output[0].url()) #=> "http://example.com" # To write the file to disk: with open("my-image.png", "wb") as file: file.write(output[0].read())
To learn more, take a look at the guide on getting started with Python.
Run fofr/image-merge-sdxl using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
curl -s -X POST \ -H "Authorization: Bearer $REPLICATE_API_TOKEN" \ -H "Content-Type: application/json" \ -H "Prefer: wait" \ -d $'{ "version": "fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75", "input": { "steps": 20, "width": 1536, "height": 1024, "prompt": "a romantic couple, renaissance painting, masterpiece, ancient", "image_1": "https://replicate.delivery/pbxt/KS0DG4acIC7MRzAT9257GkB9LaC8eGMPTAAosmWdQTwztcqc/2023-11-22--15-10-07-u-q1-fofr_a_romantic_scene_1e14107d-d841-4385-a455-ca5d0ab230c3.png", "image_2": "https://replicate.delivery/pbxt/KS0DG75waIWc93KWOTvM53XbQCO8jOWeHxTLax6MyZ1qQWv7/2023-11-22--15-09-55-u-q4-fofr_a_scifi_scene_8b3b892c-e95a-45d6-8df9-adba2e7141dc.png", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "ugly, broken", "added_merge_noise": 0.5 } }' \ https://api.replicate.com/v1/predictions
To learn more, take a look at Replicate’s HTTP API reference docs.
You can run this model locally using Cog. First, install Cog:brew install cog
If you don’t have Homebrew, there are other installation options available.
Run this to download the model and run it in your local environment:
cog predict r8.im/fofr/image-merge-sdxl@sha256:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75 \ -i 'steps=20' \ -i 'width=1536' \ -i 'height=1024' \ -i 'prompt="a romantic couple, renaissance painting, masterpiece, ancient"' \ -i 'image_1="https://replicate.delivery/pbxt/KS0DG4acIC7MRzAT9257GkB9LaC8eGMPTAAosmWdQTwztcqc/2023-11-22--15-10-07-u-q1-fofr_a_romantic_scene_1e14107d-d841-4385-a455-ca5d0ab230c3.png"' \ -i 'image_2="https://replicate.delivery/pbxt/KS0DG75waIWc93KWOTvM53XbQCO8jOWeHxTLax6MyZ1qQWv7/2023-11-22--15-09-55-u-q4-fofr_a_scifi_scene_8b3b892c-e95a-45d6-8df9-adba2e7141dc.png"' \ -i 'base_model="albedobaseXL_v13.safetensors"' \ -i 'batch_size=1' \ -i 'merge_strength=1' \ -i 'negative_prompt="ugly, broken"' \ -i 'added_merge_noise=0.5'
To learn more, take a look at the Cog documentation.
Run this to download the model and run it in your local environment:
docker run -d -p 5000:5000 --gpus=all r8.im/fofr/image-merge-sdxl@sha256:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75
curl -s -X POST \ -H "Content-Type: application/json" \ -d $'{ "input": { "steps": 20, "width": 1536, "height": 1024, "prompt": "a romantic couple, renaissance painting, masterpiece, ancient", "image_1": "https://replicate.delivery/pbxt/KS0DG4acIC7MRzAT9257GkB9LaC8eGMPTAAosmWdQTwztcqc/2023-11-22--15-10-07-u-q1-fofr_a_romantic_scene_1e14107d-d841-4385-a455-ca5d0ab230c3.png", "image_2": "https://replicate.delivery/pbxt/KS0DG75waIWc93KWOTvM53XbQCO8jOWeHxTLax6MyZ1qQWv7/2023-11-22--15-09-55-u-q4-fofr_a_scifi_scene_8b3b892c-e95a-45d6-8df9-adba2e7141dc.png", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "ugly, broken", "added_merge_noise": 0.5 } }' \ http://localhost:5000/predictions
To learn more, take a look at the Cog documentation.
Output
{ "completed_at": "2024-02-22T23:37:07.622172Z", "created_at": "2024-02-22T23:36:52.465821Z", "data_removed": false, "error": null, "id": "iesqsutbbhssywhlqfhw466fju", "input": { "steps": 20, "width": 1536, "height": 1024, "prompt": "a romantic couple, renaissance painting, masterpiece, ancient", "image_1": "https://replicate.delivery/pbxt/KS0DG4acIC7MRzAT9257GkB9LaC8eGMPTAAosmWdQTwztcqc/2023-11-22--15-10-07-u-q1-fofr_a_romantic_scene_1e14107d-d841-4385-a455-ca5d0ab230c3.png", "image_2": "https://replicate.delivery/pbxt/KS0DG75waIWc93KWOTvM53XbQCO8jOWeHxTLax6MyZ1qQWv7/2023-11-22--15-09-55-u-q4-fofr_a_scifi_scene_8b3b892c-e95a-45d6-8df9-adba2e7141dc.png", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "ugly, broken", "added_merge_noise": 0.5 }, "logs": "Random seed set to: 2027930354\nChecking weights\n✅ albedobaseXL_v13.safetensors\n✅ model.sdxl.safetensors\n✅ ip-adapter_sdxl.safetensors\n====================================\nChecking inputs\n✅ /tmp/inputs/left.png\n✅ /tmp/inputs/right.png\n====================================\nRunning workflow\ngot prompt\nExecuting node 4, title: Efficient Loader, class type: Efficient Loader\nRequested to load SDXLClipModel\nLoading 1 new model\n----------------------------------------\n\u001b[36mEfficient Loader Models Cache:\u001b[0m\nCkpt:\n[1] albedobaseXL_v13\n\u001b[33mINFO: the IPAdapter reference image is not a square, CLIPImageProcessor will resize and crop it at the center. If the main focus of the picture is not in the middle the result might not be what you are expecting.\u001b[0m\nExecuting node 15, title: Apply IPAdapter, class type: IPAdapterApply\nExecuting node 8, title: KSampler (Efficient), class type: KSampler (Efficient)\nRequested to load SDXL\nLoading 1 new model\n 0%| | 0/20 [00:00<?, ?it/s]\n 5%|▌ | 1/20 [00:00<00:06, 2.98it/s]\n 10%|█ | 2/20 [00:00<00:06, 2.88it/s]\n 15%|█▌ | 3/20 [00:01<00:05, 2.85it/s]\n 20%|██ | 4/20 [00:01<00:05, 2.83it/s]\n 25%|██▌ | 5/20 [00:01<00:05, 2.84it/s]\n 30%|███ | 6/20 [00:02<00:05, 2.76it/s]\n 35%|███▌ | 7/20 [00:02<00:04, 2.77it/s]\n 40%|████ | 8/20 [00:02<00:04, 2.78it/s]\n 45%|████▌ | 9/20 [00:03<00:03, 2.78it/s]\n 50%|█████ | 10/20 [00:03<00:03, 2.79it/s]\n 55%|█████▌ | 11/20 [00:03<00:03, 2.81it/s]\n 60%|██████ | 12/20 [00:04<00:02, 2.76it/s]\n 65%|██████▌ | 13/20 [00:04<00:02, 2.77it/s]\n 70%|███████ | 14/20 [00:05<00:02, 2.79it/s]\n 75%|███████▌ | 15/20 [00:05<00:01, 2.80it/s]\n 80%|████████ | 16/20 [00:05<00:01, 2.81it/s]\n 85%|████████▌ | 17/20 [00:06<00:01, 2.82it/s]\n 90%|█████████ | 18/20 [00:06<00:00, 2.83it/s]\n 95%|█████████▌| 19/20 [00:06<00:00, 2.92it/s]\n100%|██████████| 20/20 [00:07<00:00, 3.00it/s]\n100%|██████████| 20/20 [00:07<00:00, 2.84it/s]\nExecuting node 9, title: Save Image, class type: SaveImage\nPrompt executed in 11.46 seconds\noutputs: {'8': {'images': []}, '9': {'images': [{'filename': 'ComfyUI_00001_.png', 'subfolder': '', 'type': 'output'}]}}\n====================================\nContents of /tmp/outputs:\nComfyUI_00001_.png", "metrics": { "predict_time": 15.11421, "total_time": 15.156351 }, "output": [ "https://replicate.delivery/pbxt/wuZk9RFahAJfekLQSc9VlFgMUJfoAVeVf1fAmQ6YJPhtoMWmE/ComfyUI_00001_.png" ], "started_at": "2024-02-22T23:36:52.507962Z", "status": "succeeded", "urls": { "get": "https://api.replicate.com/v1/predictions/iesqsutbbhssywhlqfhw466fju", "cancel": "https://api.replicate.com/v1/predictions/iesqsutbbhssywhlqfhw466fju/cancel" }, "version": "101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75" }
Generated inRandom seed set to: 2027930354 Checking weights ✅ albedobaseXL_v13.safetensors ✅ model.sdxl.safetensors ✅ ip-adapter_sdxl.safetensors ==================================== Checking inputs ✅ /tmp/inputs/left.png ✅ /tmp/inputs/right.png ==================================== Running workflow got prompt Executing node 4, title: Efficient Loader, class type: Efficient Loader Requested to load SDXLClipModel Loading 1 new model ---------------------------------------- Efficient Loader Models Cache: Ckpt: [1] albedobaseXL_v13 INFO: the IPAdapter reference image is not a square, CLIPImageProcessor will resize and crop it at the center. If the main focus of the picture is not in the middle the result might not be what you are expecting. Executing node 15, title: Apply IPAdapter, class type: IPAdapterApply Executing node 8, title: KSampler (Efficient), class type: KSampler (Efficient) Requested to load SDXL Loading 1 new model 0%| | 0/20 [00:00<?, ?it/s] 5%|▌ | 1/20 [00:00<00:06, 2.98it/s] 10%|█ | 2/20 [00:00<00:06, 2.88it/s] 15%|█▌ | 3/20 [00:01<00:05, 2.85it/s] 20%|██ | 4/20 [00:01<00:05, 2.83it/s] 25%|██▌ | 5/20 [00:01<00:05, 2.84it/s] 30%|███ | 6/20 [00:02<00:05, 2.76it/s] 35%|███▌ | 7/20 [00:02<00:04, 2.77it/s] 40%|████ | 8/20 [00:02<00:04, 2.78it/s] 45%|████▌ | 9/20 [00:03<00:03, 2.78it/s] 50%|█████ | 10/20 [00:03<00:03, 2.79it/s] 55%|█████▌ | 11/20 [00:03<00:03, 2.81it/s] 60%|██████ | 12/20 [00:04<00:02, 2.76it/s] 65%|██████▌ | 13/20 [00:04<00:02, 2.77it/s] 70%|███████ | 14/20 [00:05<00:02, 2.79it/s] 75%|███████▌ | 15/20 [00:05<00:01, 2.80it/s] 80%|████████ | 16/20 [00:05<00:01, 2.81it/s] 85%|████████▌ | 17/20 [00:06<00:01, 2.82it/s] 90%|█████████ | 18/20 [00:06<00:00, 2.83it/s] 95%|█████████▌| 19/20 [00:06<00:00, 2.92it/s] 100%|██████████| 20/20 [00:07<00:00, 3.00it/s] 100%|██████████| 20/20 [00:07<00:00, 2.84it/s] Executing node 9, title: Save Image, class type: SaveImage Prompt executed in 11.46 seconds outputs: {'8': {'images': []}, '9': {'images': [{'filename': 'ComfyUI_00001_.png', 'subfolder': '', 'type': 'output'}]}} ==================================== Contents of /tmp/outputs: ComfyUI_00001_.png
Prediction
fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75IDtrm4wldb7y6clourcq7dqmfeuuStatusSucceededSourceWebHardwareA40 (Large)Total durationCreatedInput
- steps
- 20
- width
- 1024
- height
- 1024
- prompt
- an abstract painting of a cat
- base_model
- albedobaseXL_v13.safetensors
- batch_size
- 1
- merge_strength
- 1
- negative_prompt
- black and white
- added_merge_noise
- 0.8
{ "steps": 20, "width": 1024, "height": 1024, "prompt": "an abstract painting of a cat", "image_1": "https://replicate.delivery/pbxt/KRz8qs41ipSGwqo9gai74Dk3rTB0ihKMBqJUvNnQQYyfFD69/fofr_svg_black_and_white_cat_doodle_style_thick_outlines_8c7e447c-da1e-46b2-a7e1-2025418f2050.webp", "image_2": "https://replicate.delivery/pbxt/KRz8r8hSyMNcWLgbcKMCDhvoTQX1KqFKCYvVXeSPfwTf4783/bafkreidar5nwcwmuyusutzy7lxtkwvzq53a7dn2ixsj3mzkbbsz4ci3mda.jpg", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "black and white", "added_merge_noise": 0.8 }
Install Replicate’s Node.js client library:npm install replicate
Import and set up the client:import Replicate from "replicate"; import fs from "node:fs"; const replicate = new Replicate({ auth: process.env.REPLICATE_API_TOKEN, });
Run fofr/image-merge-sdxl using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
const output = await replicate.run( "fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75", { input: { steps: 20, width: 1024, height: 1024, prompt: "an abstract painting of a cat", image_1: "https://replicate.delivery/pbxt/KRz8qs41ipSGwqo9gai74Dk3rTB0ihKMBqJUvNnQQYyfFD69/fofr_svg_black_and_white_cat_doodle_style_thick_outlines_8c7e447c-da1e-46b2-a7e1-2025418f2050.webp", image_2: "https://replicate.delivery/pbxt/KRz8r8hSyMNcWLgbcKMCDhvoTQX1KqFKCYvVXeSPfwTf4783/bafkreidar5nwcwmuyusutzy7lxtkwvzq53a7dn2ixsj3mzkbbsz4ci3mda.jpg", base_model: "albedobaseXL_v13.safetensors", batch_size: 1, merge_strength: 1, negative_prompt: "black and white", added_merge_noise: 0.8 } } ); // To access the file URL: console.log(output[0].url()); //=> "http://example.com" // To write the file to disk: fs.writeFile("my-image.png", output[0]);
To learn more, take a look at the guide on getting started with Node.js.
Install Replicate’s Python client library:pip install replicate
Import the client:import replicate
Run fofr/image-merge-sdxl using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
output = replicate.run( "fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75", input={ "steps": 20, "width": 1024, "height": 1024, "prompt": "an abstract painting of a cat", "image_1": "https://replicate.delivery/pbxt/KRz8qs41ipSGwqo9gai74Dk3rTB0ihKMBqJUvNnQQYyfFD69/fofr_svg_black_and_white_cat_doodle_style_thick_outlines_8c7e447c-da1e-46b2-a7e1-2025418f2050.webp", "image_2": "https://replicate.delivery/pbxt/KRz8r8hSyMNcWLgbcKMCDhvoTQX1KqFKCYvVXeSPfwTf4783/bafkreidar5nwcwmuyusutzy7lxtkwvzq53a7dn2ixsj3mzkbbsz4ci3mda.jpg", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "black and white", "added_merge_noise": 0.8 } ) # To access the file URL: print(output[0].url()) #=> "http://example.com" # To write the file to disk: with open("my-image.png", "wb") as file: file.write(output[0].read())
To learn more, take a look at the guide on getting started with Python.
Run fofr/image-merge-sdxl using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
curl -s -X POST \ -H "Authorization: Bearer $REPLICATE_API_TOKEN" \ -H "Content-Type: application/json" \ -H "Prefer: wait" \ -d $'{ "version": "fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75", "input": { "steps": 20, "width": 1024, "height": 1024, "prompt": "an abstract painting of a cat", "image_1": "https://replicate.delivery/pbxt/KRz8qs41ipSGwqo9gai74Dk3rTB0ihKMBqJUvNnQQYyfFD69/fofr_svg_black_and_white_cat_doodle_style_thick_outlines_8c7e447c-da1e-46b2-a7e1-2025418f2050.webp", "image_2": "https://replicate.delivery/pbxt/KRz8r8hSyMNcWLgbcKMCDhvoTQX1KqFKCYvVXeSPfwTf4783/bafkreidar5nwcwmuyusutzy7lxtkwvzq53a7dn2ixsj3mzkbbsz4ci3mda.jpg", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "black and white", "added_merge_noise": 0.8 } }' \ https://api.replicate.com/v1/predictions
To learn more, take a look at Replicate’s HTTP API reference docs.
You can run this model locally using Cog. First, install Cog:brew install cog
If you don’t have Homebrew, there are other installation options available.
Run this to download the model and run it in your local environment:
cog predict r8.im/fofr/image-merge-sdxl@sha256:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75 \ -i 'steps=20' \ -i 'width=1024' \ -i 'height=1024' \ -i 'prompt="an abstract painting of a cat"' \ -i 'image_1="https://replicate.delivery/pbxt/KRz8qs41ipSGwqo9gai74Dk3rTB0ihKMBqJUvNnQQYyfFD69/fofr_svg_black_and_white_cat_doodle_style_thick_outlines_8c7e447c-da1e-46b2-a7e1-2025418f2050.webp"' \ -i 'image_2="https://replicate.delivery/pbxt/KRz8r8hSyMNcWLgbcKMCDhvoTQX1KqFKCYvVXeSPfwTf4783/bafkreidar5nwcwmuyusutzy7lxtkwvzq53a7dn2ixsj3mzkbbsz4ci3mda.jpg"' \ -i 'base_model="albedobaseXL_v13.safetensors"' \ -i 'batch_size=1' \ -i 'merge_strength=1' \ -i 'negative_prompt="black and white"' \ -i 'added_merge_noise=0.8'
To learn more, take a look at the Cog documentation.
Run this to download the model and run it in your local environment:
docker run -d -p 5000:5000 --gpus=all r8.im/fofr/image-merge-sdxl@sha256:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75
curl -s -X POST \ -H "Content-Type: application/json" \ -d $'{ "input": { "steps": 20, "width": 1024, "height": 1024, "prompt": "an abstract painting of a cat", "image_1": "https://replicate.delivery/pbxt/KRz8qs41ipSGwqo9gai74Dk3rTB0ihKMBqJUvNnQQYyfFD69/fofr_svg_black_and_white_cat_doodle_style_thick_outlines_8c7e447c-da1e-46b2-a7e1-2025418f2050.webp", "image_2": "https://replicate.delivery/pbxt/KRz8r8hSyMNcWLgbcKMCDhvoTQX1KqFKCYvVXeSPfwTf4783/bafkreidar5nwcwmuyusutzy7lxtkwvzq53a7dn2ixsj3mzkbbsz4ci3mda.jpg", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "black and white", "added_merge_noise": 0.8 } }' \ http://localhost:5000/predictions
To learn more, take a look at the Cog documentation.
Output
{ "completed_at": "2024-02-22T22:26:55.682005Z", "created_at": "2024-02-22T22:26:47.534495Z", "data_removed": false, "error": null, "id": "trm4wldb7y6clourcq7dqmfeuu", "input": { "steps": 20, "width": 1024, "height": 1024, "prompt": "an abstract painting of a cat", "image_1": "https://replicate.delivery/pbxt/KRz8qs41ipSGwqo9gai74Dk3rTB0ihKMBqJUvNnQQYyfFD69/fofr_svg_black_and_white_cat_doodle_style_thick_outlines_8c7e447c-da1e-46b2-a7e1-2025418f2050.webp", "image_2": "https://replicate.delivery/pbxt/KRz8r8hSyMNcWLgbcKMCDhvoTQX1KqFKCYvVXeSPfwTf4783/bafkreidar5nwcwmuyusutzy7lxtkwvzq53a7dn2ixsj3mzkbbsz4ci3mda.jpg", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "black and white", "added_merge_noise": 0.8 }, "logs": "Random seed set to: 3113060388\nChecking weights\n✅ model.sdxl.safetensors\n✅ albedobaseXL_v13.safetensors\n✅ ip-adapter_sdxl.safetensors\n====================================\nChecking inputs\n✅ /tmp/inputs/left.webp\n✅ /tmp/inputs/right.jpg\n====================================\nRunning workflow\ngot prompt\nExecuting node 8, title: KSampler (Efficient), class type: KSampler (Efficient)\n 0%| | 0/20 [00:00<?, ?it/s]\n 5%|▌ | 1/20 [00:00<00:04, 4.41it/s]\n 10%|█ | 2/20 [00:00<00:04, 4.28it/s]\n 15%|█▌ | 3/20 [00:00<00:04, 4.23it/s]\n 20%|██ | 4/20 [00:00<00:03, 4.20it/s]\n 25%|██▌ | 5/20 [00:01<00:03, 4.20it/s]\n 30%|███ | 6/20 [00:01<00:03, 4.17it/s]\n 35%|███▌ | 7/20 [00:01<00:03, 4.18it/s]\n 40%|████ | 8/20 [00:01<00:02, 4.17it/s]\n 45%|████▌ | 9/20 [00:02<00:02, 4.18it/s]\n 50%|█████ | 10/20 [00:02<00:02, 4.20it/s]\n 55%|█████▌ | 11/20 [00:02<00:02, 4.23it/s]\n 60%|██████ | 12/20 [00:02<00:01, 4.23it/s]\n 65%|██████▌ | 13/20 [00:03<00:01, 4.24it/s]\n 70%|███████ | 14/20 [00:03<00:01, 4.24it/s]\n 75%|███████▌ | 15/20 [00:03<00:01, 4.25it/s]\n 80%|████████ | 16/20 [00:03<00:00, 4.25it/s]\n 85%|████████▌ | 17/20 [00:04<00:00, 4.26it/s]\n 90%|█████████ | 18/20 [00:04<00:00, 4.27it/s]\n 95%|█████████▌| 19/20 [00:04<00:00, 4.39it/s]\n100%|██████████| 20/20 [00:04<00:00, 4.50it/s]\n100%|██████████| 20/20 [00:04<00:00, 4.28it/s]\nExecuting node 9, title: Save Image, class type: SaveImage\nPrompt executed in 5.05 seconds\noutputs: {'8': {'images': []}, '9': {'images': [{'filename': 'ComfyUI_00001_.png', 'subfolder': '', 'type': 'output'}]}}\n====================================\nContents of /tmp/outputs:\nComfyUI_00001_.png", "metrics": { "predict_time": 8.110822, "total_time": 8.14751 }, "output": [ "https://replicate.delivery/pbxt/OAudk92mx9rnChY0KpZ6cQ8G7bI7ZaX0GxH9KxzsLRtL8VmE/ComfyUI_00001_.png" ], "started_at": "2024-02-22T22:26:47.571183Z", "status": "succeeded", "urls": { "get": "https://api.replicate.com/v1/predictions/trm4wldb7y6clourcq7dqmfeuu", "cancel": "https://api.replicate.com/v1/predictions/trm4wldb7y6clourcq7dqmfeuu/cancel" }, "version": "101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75" }
Generated inRandom seed set to: 3113060388 Checking weights ✅ model.sdxl.safetensors ✅ albedobaseXL_v13.safetensors ✅ ip-adapter_sdxl.safetensors ==================================== Checking inputs ✅ /tmp/inputs/left.webp ✅ /tmp/inputs/right.jpg ==================================== Running workflow got prompt Executing node 8, title: KSampler (Efficient), class type: KSampler (Efficient) 0%| | 0/20 [00:00<?, ?it/s] 5%|▌ | 1/20 [00:00<00:04, 4.41it/s] 10%|█ | 2/20 [00:00<00:04, 4.28it/s] 15%|█▌ | 3/20 [00:00<00:04, 4.23it/s] 20%|██ | 4/20 [00:00<00:03, 4.20it/s] 25%|██▌ | 5/20 [00:01<00:03, 4.20it/s] 30%|███ | 6/20 [00:01<00:03, 4.17it/s] 35%|███▌ | 7/20 [00:01<00:03, 4.18it/s] 40%|████ | 8/20 [00:01<00:02, 4.17it/s] 45%|████▌ | 9/20 [00:02<00:02, 4.18it/s] 50%|█████ | 10/20 [00:02<00:02, 4.20it/s] 55%|█████▌ | 11/20 [00:02<00:02, 4.23it/s] 60%|██████ | 12/20 [00:02<00:01, 4.23it/s] 65%|██████▌ | 13/20 [00:03<00:01, 4.24it/s] 70%|███████ | 14/20 [00:03<00:01, 4.24it/s] 75%|███████▌ | 15/20 [00:03<00:01, 4.25it/s] 80%|████████ | 16/20 [00:03<00:00, 4.25it/s] 85%|████████▌ | 17/20 [00:04<00:00, 4.26it/s] 90%|█████████ | 18/20 [00:04<00:00, 4.27it/s] 95%|█████████▌| 19/20 [00:04<00:00, 4.39it/s] 100%|██████████| 20/20 [00:04<00:00, 4.50it/s] 100%|██████████| 20/20 [00:04<00:00, 4.28it/s] Executing node 9, title: Save Image, class type: SaveImage Prompt executed in 5.05 seconds outputs: {'8': {'images': []}, '9': {'images': [{'filename': 'ComfyUI_00001_.png', 'subfolder': '', 'type': 'output'}]}} ==================================== Contents of /tmp/outputs: ComfyUI_00001_.png
Prediction
fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75ID3x4o3utbrfplkr34e547uz37yyStatusSucceededSourceWebHardwareA40 (Large)Total durationCreatedInput
- steps
- 20
- width
- 1024
- height
- 1024
- prompt
- an abstract portrait painting of a person, pastel, impasto, watercolour, thick brushstrokes
- base_model
- albedobaseXL_v13.safetensors
- batch_size
- 1
- merge_strength
- 1
- negative_prompt
- photo, render, unreal engine
- added_merge_noise
- 0.8
{ "steps": 20, "width": 1024, "height": 1024, "prompt": "an abstract portrait painting of a person, pastel, impasto, watercolour, thick brushstrokes", "image_1": "https://replicate.delivery/pbxt/KRzHiQ1JYzogdduCatHddDmXycdc60RPjKJLpbWwb6m1bbbs/_full.png", "image_2": "https://replicate.delivery/pbxt/KRzHiiqvMDiQF8Eg34ilSXap4BJQNManWQZpMmTdJBVVvPNr/319055-2.jpg", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "photo, render, unreal engine", "added_merge_noise": 0.8 }
Install Replicate’s Node.js client library:npm install replicate
Import and set up the client:import Replicate from "replicate"; import fs from "node:fs"; const replicate = new Replicate({ auth: process.env.REPLICATE_API_TOKEN, });
Run fofr/image-merge-sdxl using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
const output = await replicate.run( "fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75", { input: { steps: 20, width: 1024, height: 1024, prompt: "an abstract portrait painting of a person, pastel, impasto, watercolour, thick brushstrokes", image_1: "https://replicate.delivery/pbxt/KRzHiQ1JYzogdduCatHddDmXycdc60RPjKJLpbWwb6m1bbbs/_full.png", image_2: "https://replicate.delivery/pbxt/KRzHiiqvMDiQF8Eg34ilSXap4BJQNManWQZpMmTdJBVVvPNr/319055-2.jpg", base_model: "albedobaseXL_v13.safetensors", batch_size: 1, merge_strength: 1, negative_prompt: "photo, render, unreal engine", added_merge_noise: 0.8 } } ); // To access the file URL: console.log(output[0].url()); //=> "http://example.com" // To write the file to disk: fs.writeFile("my-image.png", output[0]);
To learn more, take a look at the guide on getting started with Node.js.
Install Replicate’s Python client library:pip install replicate
Import the client:import replicate
Run fofr/image-merge-sdxl using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
output = replicate.run( "fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75", input={ "steps": 20, "width": 1024, "height": 1024, "prompt": "an abstract portrait painting of a person, pastel, impasto, watercolour, thick brushstrokes", "image_1": "https://replicate.delivery/pbxt/KRzHiQ1JYzogdduCatHddDmXycdc60RPjKJLpbWwb6m1bbbs/_full.png", "image_2": "https://replicate.delivery/pbxt/KRzHiiqvMDiQF8Eg34ilSXap4BJQNManWQZpMmTdJBVVvPNr/319055-2.jpg", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "photo, render, unreal engine", "added_merge_noise": 0.8 } ) # To access the file URL: print(output[0].url()) #=> "http://example.com" # To write the file to disk: with open("my-image.png", "wb") as file: file.write(output[0].read())
To learn more, take a look at the guide on getting started with Python.
Run fofr/image-merge-sdxl using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
curl -s -X POST \ -H "Authorization: Bearer $REPLICATE_API_TOKEN" \ -H "Content-Type: application/json" \ -H "Prefer: wait" \ -d $'{ "version": "fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75", "input": { "steps": 20, "width": 1024, "height": 1024, "prompt": "an abstract portrait painting of a person, pastel, impasto, watercolour, thick brushstrokes", "image_1": "https://replicate.delivery/pbxt/KRzHiQ1JYzogdduCatHddDmXycdc60RPjKJLpbWwb6m1bbbs/_full.png", "image_2": "https://replicate.delivery/pbxt/KRzHiiqvMDiQF8Eg34ilSXap4BJQNManWQZpMmTdJBVVvPNr/319055-2.jpg", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "photo, render, unreal engine", "added_merge_noise": 0.8 } }' \ https://api.replicate.com/v1/predictions
To learn more, take a look at Replicate’s HTTP API reference docs.
You can run this model locally using Cog. First, install Cog:brew install cog
If you don’t have Homebrew, there are other installation options available.
Run this to download the model and run it in your local environment:
cog predict r8.im/fofr/image-merge-sdxl@sha256:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75 \ -i 'steps=20' \ -i 'width=1024' \ -i 'height=1024' \ -i 'prompt="an abstract portrait painting of a person, pastel, impasto, watercolour, thick brushstrokes"' \ -i 'image_1="https://replicate.delivery/pbxt/KRzHiQ1JYzogdduCatHddDmXycdc60RPjKJLpbWwb6m1bbbs/_full.png"' \ -i 'image_2="https://replicate.delivery/pbxt/KRzHiiqvMDiQF8Eg34ilSXap4BJQNManWQZpMmTdJBVVvPNr/319055-2.jpg"' \ -i 'base_model="albedobaseXL_v13.safetensors"' \ -i 'batch_size=1' \ -i 'merge_strength=1' \ -i 'negative_prompt="photo, render, unreal engine"' \ -i 'added_merge_noise=0.8'
To learn more, take a look at the Cog documentation.
Run this to download the model and run it in your local environment:
docker run -d -p 5000:5000 --gpus=all r8.im/fofr/image-merge-sdxl@sha256:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75
curl -s -X POST \ -H "Content-Type: application/json" \ -d $'{ "input": { "steps": 20, "width": 1024, "height": 1024, "prompt": "an abstract portrait painting of a person, pastel, impasto, watercolour, thick brushstrokes", "image_1": "https://replicate.delivery/pbxt/KRzHiQ1JYzogdduCatHddDmXycdc60RPjKJLpbWwb6m1bbbs/_full.png", "image_2": "https://replicate.delivery/pbxt/KRzHiiqvMDiQF8Eg34ilSXap4BJQNManWQZpMmTdJBVVvPNr/319055-2.jpg", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "photo, render, unreal engine", "added_merge_noise": 0.8 } }' \ http://localhost:5000/predictions
To learn more, take a look at the Cog documentation.
Output
{ "completed_at": "2024-02-22T22:36:16.686549Z", "created_at": "2024-02-22T22:36:08.396350Z", "data_removed": false, "error": null, "id": "3x4o3utbrfplkr34e547uz37yy", "input": { "steps": 20, "width": 1024, "height": 1024, "prompt": "an abstract portrait painting of a person, pastel, impasto, watercolour, thick brushstrokes", "image_1": "https://replicate.delivery/pbxt/KRzHiQ1JYzogdduCatHddDmXycdc60RPjKJLpbWwb6m1bbbs/_full.png", "image_2": "https://replicate.delivery/pbxt/KRzHiiqvMDiQF8Eg34ilSXap4BJQNManWQZpMmTdJBVVvPNr/319055-2.jpg", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "photo, render, unreal engine", "added_merge_noise": 0.8 }, "logs": "Random seed set to: 2093552613\nChecking weights\n✅ model.sdxl.safetensors\n✅ albedobaseXL_v13.safetensors\n✅ ip-adapter_sdxl.safetensors\n====================================\nChecking inputs\n✅ /tmp/inputs/left.png\n✅ /tmp/inputs/right.jpg\n====================================\nRunning workflow\ngot prompt\nExecuting node 8, title: KSampler (Efficient), class type: KSampler (Efficient)\n 0%| | 0/20 [00:00<?, ?it/s]\n 5%|▌ | 1/20 [00:00<00:04, 4.42it/s]\n 10%|█ | 2/20 [00:00<00:04, 4.23it/s]\n 15%|█▌ | 3/20 [00:00<00:04, 4.21it/s]\n 20%|██ | 4/20 [00:00<00:03, 4.18it/s]\n 25%|██▌ | 5/20 [00:01<00:03, 4.19it/s]\n 30%|███ | 6/20 [00:01<00:03, 4.13it/s]\n 35%|███▌ | 7/20 [00:01<00:03, 4.15it/s]\n 40%|████ | 8/20 [00:01<00:02, 4.16it/s]\n 45%|████▌ | 9/20 [00:02<00:02, 4.14it/s]\n 50%|█████ | 10/20 [00:02<00:02, 4.16it/s]\n 55%|█████▌ | 11/20 [00:02<00:02, 4.20it/s]\n 60%|██████ | 12/20 [00:02<00:01, 4.21it/s]\n 65%|██████▌ | 13/20 [00:03<00:01, 4.20it/s]\n 70%|███████ | 14/20 [00:03<00:01, 4.21it/s]\n 75%|███████▌ | 15/20 [00:03<00:01, 4.22it/s]\n 80%|████████ | 16/20 [00:03<00:01, 3.94it/s]\n 85%|████████▌ | 17/20 [00:04<00:00, 4.00it/s]\n 90%|█████████ | 18/20 [00:04<00:00, 4.07it/s]\n 95%|█████████▌| 19/20 [00:04<00:00, 4.21it/s]\n100%|██████████| 20/20 [00:04<00:00, 4.36it/s]\n100%|██████████| 20/20 [00:04<00:00, 4.19it/s]\nExecuting node 9, title: Save Image, class type: SaveImage\nPrompt executed in 5.17 seconds\noutputs: {'8': {'images': []}, '9': {'images': [{'filename': 'ComfyUI_00001_.png', 'subfolder': '', 'type': 'output'}]}}\n====================================\nContents of /tmp/outputs:\nComfyUI_00001_.png", "metrics": { "predict_time": 8.253927, "total_time": 8.290199 }, "output": [ "https://replicate.delivery/pbxt/I2TffNejR0YvVpUMoe2A5VRrfD5CASoP06c5EeGtPLW3XerMJA/ComfyUI_00001_.png" ], "started_at": "2024-02-22T22:36:08.432622Z", "status": "succeeded", "urls": { "get": "https://api.replicate.com/v1/predictions/3x4o3utbrfplkr34e547uz37yy", "cancel": "https://api.replicate.com/v1/predictions/3x4o3utbrfplkr34e547uz37yy/cancel" }, "version": "101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75" }
Generated inRandom seed set to: 2093552613 Checking weights ✅ model.sdxl.safetensors ✅ albedobaseXL_v13.safetensors ✅ ip-adapter_sdxl.safetensors ==================================== Checking inputs ✅ /tmp/inputs/left.png ✅ /tmp/inputs/right.jpg ==================================== Running workflow got prompt Executing node 8, title: KSampler (Efficient), class type: KSampler (Efficient) 0%| | 0/20 [00:00<?, ?it/s] 5%|▌ | 1/20 [00:00<00:04, 4.42it/s] 10%|█ | 2/20 [00:00<00:04, 4.23it/s] 15%|█▌ | 3/20 [00:00<00:04, 4.21it/s] 20%|██ | 4/20 [00:00<00:03, 4.18it/s] 25%|██▌ | 5/20 [00:01<00:03, 4.19it/s] 30%|███ | 6/20 [00:01<00:03, 4.13it/s] 35%|███▌ | 7/20 [00:01<00:03, 4.15it/s] 40%|████ | 8/20 [00:01<00:02, 4.16it/s] 45%|████▌ | 9/20 [00:02<00:02, 4.14it/s] 50%|█████ | 10/20 [00:02<00:02, 4.16it/s] 55%|█████▌ | 11/20 [00:02<00:02, 4.20it/s] 60%|██████ | 12/20 [00:02<00:01, 4.21it/s] 65%|██████▌ | 13/20 [00:03<00:01, 4.20it/s] 70%|███████ | 14/20 [00:03<00:01, 4.21it/s] 75%|███████▌ | 15/20 [00:03<00:01, 4.22it/s] 80%|████████ | 16/20 [00:03<00:01, 3.94it/s] 85%|████████▌ | 17/20 [00:04<00:00, 4.00it/s] 90%|█████████ | 18/20 [00:04<00:00, 4.07it/s] 95%|█████████▌| 19/20 [00:04<00:00, 4.21it/s] 100%|██████████| 20/20 [00:04<00:00, 4.36it/s] 100%|██████████| 20/20 [00:04<00:00, 4.19it/s] Executing node 9, title: Save Image, class type: SaveImage Prompt executed in 5.17 seconds outputs: {'8': {'images': []}, '9': {'images': [{'filename': 'ComfyUI_00001_.png', 'subfolder': '', 'type': 'output'}]}} ==================================== Contents of /tmp/outputs: ComfyUI_00001_.png
Prediction
fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75IDe4e3gbdbbeiovdkx4nvtktaliaStatusSucceededSourceWebHardwareA40 (Large)Total durationCreatedInput
- steps
- 20
- width
- 1024
- height
- 1024
- prompt
- an abstract portrait painting of a person, pastel, impasto, watercolour, thick brushstrokes
- base_model
- albedobaseXL_v13.safetensors
- batch_size
- 1
- merge_strength
- 1
- negative_prompt
- photo, render, unreal engine
- added_merge_noise
- 0.8
{ "steps": 20, "width": 1024, "height": 1024, "prompt": "an abstract portrait painting of a person, pastel, impasto, watercolour, thick brushstrokes", "image_1": "https://replicate.delivery/pbxt/KRzPZdgrZtDSMqofrMYmie4KY5i9OXtAfRzdCgPSZh7NgAif/fofr_a_color_svg_vector_image_of_a_video_game_character_circle__9903b67c-220d-4b96-8742-4044e3b7bfc9.webp", "image_2": "https://replicate.delivery/pbxt/KRzPZrVrXjwinoz5ogRyqxGMt3SN5MgG37puAUwXCZiIt7QF/ComfyUI_00003_.png", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "photo, render, unreal engine", "added_merge_noise": 0.8 }
Install Replicate’s Node.js client library:npm install replicate
Import and set up the client:import Replicate from "replicate"; import fs from "node:fs"; const replicate = new Replicate({ auth: process.env.REPLICATE_API_TOKEN, });
Run fofr/image-merge-sdxl using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
const output = await replicate.run( "fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75", { input: { steps: 20, width: 1024, height: 1024, prompt: "an abstract portrait painting of a person, pastel, impasto, watercolour, thick brushstrokes", image_1: "https://replicate.delivery/pbxt/KRzPZdgrZtDSMqofrMYmie4KY5i9OXtAfRzdCgPSZh7NgAif/fofr_a_color_svg_vector_image_of_a_video_game_character_circle__9903b67c-220d-4b96-8742-4044e3b7bfc9.webp", image_2: "https://replicate.delivery/pbxt/KRzPZrVrXjwinoz5ogRyqxGMt3SN5MgG37puAUwXCZiIt7QF/ComfyUI_00003_.png", base_model: "albedobaseXL_v13.safetensors", batch_size: 1, merge_strength: 1, negative_prompt: "photo, render, unreal engine", added_merge_noise: 0.8 } } ); // To access the file URL: console.log(output[0].url()); //=> "http://example.com" // To write the file to disk: fs.writeFile("my-image.png", output[0]);
To learn more, take a look at the guide on getting started with Node.js.
Install Replicate’s Python client library:pip install replicate
Import the client:import replicate
Run fofr/image-merge-sdxl using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
output = replicate.run( "fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75", input={ "steps": 20, "width": 1024, "height": 1024, "prompt": "an abstract portrait painting of a person, pastel, impasto, watercolour, thick brushstrokes", "image_1": "https://replicate.delivery/pbxt/KRzPZdgrZtDSMqofrMYmie4KY5i9OXtAfRzdCgPSZh7NgAif/fofr_a_color_svg_vector_image_of_a_video_game_character_circle__9903b67c-220d-4b96-8742-4044e3b7bfc9.webp", "image_2": "https://replicate.delivery/pbxt/KRzPZrVrXjwinoz5ogRyqxGMt3SN5MgG37puAUwXCZiIt7QF/ComfyUI_00003_.png", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "photo, render, unreal engine", "added_merge_noise": 0.8 } ) # To access the file URL: print(output[0].url()) #=> "http://example.com" # To write the file to disk: with open("my-image.png", "wb") as file: file.write(output[0].read())
To learn more, take a look at the guide on getting started with Python.
Run fofr/image-merge-sdxl using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
curl -s -X POST \ -H "Authorization: Bearer $REPLICATE_API_TOKEN" \ -H "Content-Type: application/json" \ -H "Prefer: wait" \ -d $'{ "version": "fofr/image-merge-sdxl:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75", "input": { "steps": 20, "width": 1024, "height": 1024, "prompt": "an abstract portrait painting of a person, pastel, impasto, watercolour, thick brushstrokes", "image_1": "https://replicate.delivery/pbxt/KRzPZdgrZtDSMqofrMYmie4KY5i9OXtAfRzdCgPSZh7NgAif/fofr_a_color_svg_vector_image_of_a_video_game_character_circle__9903b67c-220d-4b96-8742-4044e3b7bfc9.webp", "image_2": "https://replicate.delivery/pbxt/KRzPZrVrXjwinoz5ogRyqxGMt3SN5MgG37puAUwXCZiIt7QF/ComfyUI_00003_.png", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "photo, render, unreal engine", "added_merge_noise": 0.8 } }' \ https://api.replicate.com/v1/predictions
To learn more, take a look at Replicate’s HTTP API reference docs.
You can run this model locally using Cog. First, install Cog:brew install cog
If you don’t have Homebrew, there are other installation options available.
Run this to download the model and run it in your local environment:
cog predict r8.im/fofr/image-merge-sdxl@sha256:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75 \ -i 'steps=20' \ -i 'width=1024' \ -i 'height=1024' \ -i 'prompt="an abstract portrait painting of a person, pastel, impasto, watercolour, thick brushstrokes"' \ -i 'image_1="https://replicate.delivery/pbxt/KRzPZdgrZtDSMqofrMYmie4KY5i9OXtAfRzdCgPSZh7NgAif/fofr_a_color_svg_vector_image_of_a_video_game_character_circle__9903b67c-220d-4b96-8742-4044e3b7bfc9.webp"' \ -i 'image_2="https://replicate.delivery/pbxt/KRzPZrVrXjwinoz5ogRyqxGMt3SN5MgG37puAUwXCZiIt7QF/ComfyUI_00003_.png"' \ -i 'base_model="albedobaseXL_v13.safetensors"' \ -i 'batch_size=1' \ -i 'merge_strength=1' \ -i 'negative_prompt="photo, render, unreal engine"' \ -i 'added_merge_noise=0.8'
To learn more, take a look at the Cog documentation.
Run this to download the model and run it in your local environment:
docker run -d -p 5000:5000 --gpus=all r8.im/fofr/image-merge-sdxl@sha256:101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75
curl -s -X POST \ -H "Content-Type: application/json" \ -d $'{ "input": { "steps": 20, "width": 1024, "height": 1024, "prompt": "an abstract portrait painting of a person, pastel, impasto, watercolour, thick brushstrokes", "image_1": "https://replicate.delivery/pbxt/KRzPZdgrZtDSMqofrMYmie4KY5i9OXtAfRzdCgPSZh7NgAif/fofr_a_color_svg_vector_image_of_a_video_game_character_circle__9903b67c-220d-4b96-8742-4044e3b7bfc9.webp", "image_2": "https://replicate.delivery/pbxt/KRzPZrVrXjwinoz5ogRyqxGMt3SN5MgG37puAUwXCZiIt7QF/ComfyUI_00003_.png", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "photo, render, unreal engine", "added_merge_noise": 0.8 } }' \ http://localhost:5000/predictions
To learn more, take a look at the Cog documentation.
Output
{ "completed_at": "2024-02-22T22:44:37.983285Z", "created_at": "2024-02-22T22:44:26.265730Z", "data_removed": false, "error": null, "id": "e4e3gbdbbeiovdkx4nvtktalia", "input": { "steps": 20, "width": 1024, "height": 1024, "prompt": "an abstract portrait painting of a person, pastel, impasto, watercolour, thick brushstrokes", "image_1": "https://replicate.delivery/pbxt/KRzPZdgrZtDSMqofrMYmie4KY5i9OXtAfRzdCgPSZh7NgAif/fofr_a_color_svg_vector_image_of_a_video_game_character_circle__9903b67c-220d-4b96-8742-4044e3b7bfc9.webp", "image_2": "https://replicate.delivery/pbxt/KRzPZrVrXjwinoz5ogRyqxGMt3SN5MgG37puAUwXCZiIt7QF/ComfyUI_00003_.png", "base_model": "albedobaseXL_v13.safetensors", "batch_size": 1, "merge_strength": 1, "negative_prompt": "photo, render, unreal engine", "added_merge_noise": 0.8 }, "logs": "Random seed set to: 1257701481\nChecking weights\n✅ model.sdxl.safetensors\n✅ albedobaseXL_v13.safetensors\n✅ ip-adapter_sdxl.safetensors\n====================================\nChecking inputs\n✅ /tmp/inputs/left.webp\n✅ /tmp/inputs/right.png\n====================================\nRunning workflow\ngot prompt\nExecuting node 16, title: Load Image, class type: LoadImage\nExecuting node 17, title: Batch Images, class type: ImageBatch\nExecuting node 15, title: Apply IPAdapter, class type: IPAdapterApply\nExecuting node 8, title: KSampler (Efficient), class type: KSampler (Efficient)\nRequested to load SDXL\nLoading 1 new model\n 0%| | 0/20 [00:00<?, ?it/s]\n 5%|▌ | 1/20 [00:00<00:04, 4.40it/s]\n 10%|█ | 2/20 [00:00<00:04, 4.28it/s]\n 15%|█▌ | 3/20 [00:00<00:04, 4.23it/s]\n 20%|██ | 4/20 [00:00<00:03, 4.21it/s]\n 25%|██▌ | 5/20 [00:01<00:03, 4.21it/s]\n 30%|███ | 6/20 [00:01<00:03, 4.17it/s]\n 35%|███▌ | 7/20 [00:01<00:03, 4.17it/s]\n 40%|████ | 8/20 [00:01<00:02, 4.18it/s]\n 45%|████▌ | 9/20 [00:02<00:02, 4.18it/s]\n 50%|█████ | 10/20 [00:02<00:02, 4.18it/s]\n 55%|█████▌ | 11/20 [00:02<00:02, 4.19it/s]\n 60%|██████ | 12/20 [00:02<00:01, 4.18it/s]\n 65%|██████▌ | 13/20 [00:03<00:01, 4.17it/s]\n 70%|███████ | 14/20 [00:03<00:01, 4.20it/s]\n 75%|███████▌ | 15/20 [00:03<00:01, 4.21it/s]\n 80%|████████ | 16/20 [00:03<00:00, 4.22it/s]\n 85%|████████▌ | 17/20 [00:04<00:00, 4.21it/s]\n 90%|█████████ | 18/20 [00:04<00:00, 4.23it/s]\n 95%|█████████▌| 19/20 [00:04<00:00, 4.35it/s]\n100%|██████████| 20/20 [00:04<00:00, 4.47it/s]\n100%|██████████| 20/20 [00:04<00:00, 4.25it/s]\nExecuting node 9, title: Save Image, class type: SaveImage\nPrompt executed in 8.37 seconds\noutputs: {'8': {'images': []}, '9': {'images': [{'filename': 'ComfyUI_00001_.png', 'subfolder': '', 'type': 'output'}]}}\n====================================\nContents of /tmp/outputs:\nComfyUI_00001_.png", "metrics": { "predict_time": 11.679743, "total_time": 11.717555 }, "output": [ "https://replicate.delivery/pbxt/yHAwJXVnEhryFdlDtBIE8XYCLendOCe7QNSzySJAFAWUBYZSA/ComfyUI_00001_.png" ], "started_at": "2024-02-22T22:44:26.303542Z", "status": "succeeded", "urls": { "get": "https://api.replicate.com/v1/predictions/e4e3gbdbbeiovdkx4nvtktalia", "cancel": "https://api.replicate.com/v1/predictions/e4e3gbdbbeiovdkx4nvtktalia/cancel" }, "version": "101190cbcc57984b9bfba21e1beea3694dc9d121ed1695059b0d4832e468cd75" }
Generated inRandom seed set to: 1257701481 Checking weights ✅ model.sdxl.safetensors ✅ albedobaseXL_v13.safetensors ✅ ip-adapter_sdxl.safetensors ==================================== Checking inputs ✅ /tmp/inputs/left.webp ✅ /tmp/inputs/right.png ==================================== Running workflow got prompt Executing node 16, title: Load Image, class type: LoadImage Executing node 17, title: Batch Images, class type: ImageBatch Executing node 15, title: Apply IPAdapter, class type: IPAdapterApply Executing node 8, title: KSampler (Efficient), class type: KSampler (Efficient) Requested to load SDXL Loading 1 new model 0%| | 0/20 [00:00<?, ?it/s] 5%|▌ | 1/20 [00:00<00:04, 4.40it/s] 10%|█ | 2/20 [00:00<00:04, 4.28it/s] 15%|█▌ | 3/20 [00:00<00:04, 4.23it/s] 20%|██ | 4/20 [00:00<00:03, 4.21it/s] 25%|██▌ | 5/20 [00:01<00:03, 4.21it/s] 30%|███ | 6/20 [00:01<00:03, 4.17it/s] 35%|███▌ | 7/20 [00:01<00:03, 4.17it/s] 40%|████ | 8/20 [00:01<00:02, 4.18it/s] 45%|████▌ | 9/20 [00:02<00:02, 4.18it/s] 50%|█████ | 10/20 [00:02<00:02, 4.18it/s] 55%|█████▌ | 11/20 [00:02<00:02, 4.19it/s] 60%|██████ | 12/20 [00:02<00:01, 4.18it/s] 65%|██████▌ | 13/20 [00:03<00:01, 4.17it/s] 70%|███████ | 14/20 [00:03<00:01, 4.20it/s] 75%|███████▌ | 15/20 [00:03<00:01, 4.21it/s] 80%|████████ | 16/20 [00:03<00:00, 4.22it/s] 85%|████████▌ | 17/20 [00:04<00:00, 4.21it/s] 90%|█████████ | 18/20 [00:04<00:00, 4.23it/s] 95%|█████████▌| 19/20 [00:04<00:00, 4.35it/s] 100%|██████████| 20/20 [00:04<00:00, 4.47it/s] 100%|██████████| 20/20 [00:04<00:00, 4.25it/s] Executing node 9, title: Save Image, class type: SaveImage Prompt executed in 8.37 seconds outputs: {'8': {'images': []}, '9': {'images': [{'filename': 'ComfyUI_00001_.png', 'subfolder': '', 'type': 'output'}]}} ==================================== Contents of /tmp/outputs: ComfyUI_00001_.png
Want to make some of these yourself?
Run this model