theblindeman / twha
- Public
- 3 runs
Prediction
theblindeman/twha:f72ba92f2bd5924059ed3d85470461f8ee733cef7092540650dea8ef7407a740IDyvjb9bfbwnrma0cq3mxarcv7xrStatusSucceededSourceWebHardwareH100Total durationCreatedInput
- frames
- 81
- prompt
- twha . wearing an unbuttoned men's dress shirt and panties is walking through a kitchen. she holds her morning coffee mug in her hands. as she walks the unbuttoned shirt sways with her movement, teasing the viewer with a glimpse of her breasts. the scene is almost like a fantasy you have in a dream of a woman you want to be with. set in a modern cozy kitchen.
- fast_mode
- Balanced
- resolution
- 720p
- aspect_ratio
- 16:9
- sample_shift
- 8
- sample_steps
- 30
- negative_prompt
- lora_strength_clip
- 1
- sample_guide_scale
- 5
- lora_strength_model
- 1
{ "frames": 81, "prompt": "twha . wearing an unbuttoned men's dress shirt and panties is walking through a kitchen. she holds her morning coffee mug in her hands. as she walks the unbuttoned shirt sways with her movement, teasing the viewer with a glimpse of her breasts. the scene is almost like a fantasy you have in a dream of a woman you want to be with. set in a modern cozy kitchen.", "fast_mode": "Balanced", "resolution": "720p", "aspect_ratio": "16:9", "sample_shift": 8, "sample_steps": 30, "negative_prompt": "", "lora_strength_clip": 1, "sample_guide_scale": 5, "lora_strength_model": 1 }
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 theblindeman/twha using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
const output = await replicate.run( "theblindeman/twha:f72ba92f2bd5924059ed3d85470461f8ee733cef7092540650dea8ef7407a740", { input: { frames: 81, prompt: "twha . wearing an unbuttoned men's dress shirt and panties is walking through a kitchen. she holds her morning coffee mug in her hands. as she walks the unbuttoned shirt sways with her movement, teasing the viewer with a glimpse of her breasts. the scene is almost like a fantasy you have in a dream of a woman you want to be with. set in a modern cozy kitchen.", fast_mode: "Balanced", resolution: "720p", aspect_ratio: "16:9", sample_shift: 8, sample_steps: 30, negative_prompt: "", lora_strength_clip: 1, sample_guide_scale: 5, lora_strength_model: 1 } } ); // 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 theblindeman/twha using Replicate’s API. Check out the model's schema for an overview of inputs and outputs.
output = replicate.run( "theblindeman/twha:f72ba92f2bd5924059ed3d85470461f8ee733cef7092540650dea8ef7407a740", input={ "frames": 81, "prompt": "twha . wearing an unbuttoned men's dress shirt and panties is walking through a kitchen. she holds her morning coffee mug in her hands. as she walks the unbuttoned shirt sways with her movement, teasing the viewer with a glimpse of her breasts. the scene is almost like a fantasy you have in a dream of a woman you want to be with. set in a modern cozy kitchen.", "fast_mode": "Balanced", "resolution": "720p", "aspect_ratio": "16:9", "sample_shift": 8, "sample_steps": 30, "negative_prompt": "", "lora_strength_clip": 1, "sample_guide_scale": 5, "lora_strength_model": 1 } ) print(output)
To learn more, take a look at the guide on getting started with Python.
Run theblindeman/twha 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": "theblindeman/twha:f72ba92f2bd5924059ed3d85470461f8ee733cef7092540650dea8ef7407a740", "input": { "frames": 81, "prompt": "twha . wearing an unbuttoned men\'s dress shirt and panties is walking through a kitchen. she holds her morning coffee mug in her hands. as she walks the unbuttoned shirt sways with her movement, teasing the viewer with a glimpse of her breasts. the scene is almost like a fantasy you have in a dream of a woman you want to be with. set in a modern cozy kitchen.", "fast_mode": "Balanced", "resolution": "720p", "aspect_ratio": "16:9", "sample_shift": 8, "sample_steps": 30, "negative_prompt": "", "lora_strength_clip": 1, "sample_guide_scale": 5, "lora_strength_model": 1 } }' \ https://api.replicate.com/v1/predictions
To learn more, take a look at Replicate’s HTTP API reference docs.
Output
{ "completed_at": "2025-05-29T18:23:05.421872Z", "created_at": "2025-05-29T18:08:10.213000Z", "data_removed": false, "error": null, "id": "yvjb9bfbwnrma0cq3mxarcv7xr", "input": { "frames": 81, "prompt": "twha . wearing an unbuttoned men's dress shirt and panties is walking through a kitchen. she holds her morning coffee mug in her hands. as she walks the unbuttoned shirt sways with her movement, teasing the viewer with a glimpse of her breasts. the scene is almost like a fantasy you have in a dream of a woman you want to be with. set in a modern cozy kitchen.", "fast_mode": "Balanced", "resolution": "720p", "aspect_ratio": "16:9", "sample_shift": 8, "sample_steps": 30, "negative_prompt": "", "lora_strength_clip": 1, "sample_guide_scale": 5, "lora_strength_model": 1 }, "logs": "Random seed set to: 4210953954\n2025-05-29T18:12:03Z | INFO | [ Initiating ] chunk_size=150M dest=/tmp/tmpge8xnzyg/weights url=https://replicate.delivery/xezq/UAq7jOCkueVxHauHA4K0m4jCDxj5ylcGem5MANylM1QQjkxUA/trained_model.tar\n2025-05-29T18:12:03Z | INFO | [ Cache Service ] enabled=true scheme=http target=hermes.services.svc.cluster.local\n2025-05-29T18:12:06Z | INFO | [ Complete ] dest=/tmp/tmpge8xnzyg/weights size=\"307 MB\" total_elapsed=3.326s url=https://replicate.delivery/xezq/UAq7jOCkueVxHauHA4K0m4jCDxj5ylcGem5MANylM1QQjkxUA/trained_model.tar\nChecking inputs\n====================================\nChecking weights\n✅ wan_2.1_vae.safetensors exists in ComfyUI/models/vae\n✅ wan2.1_t2v_14B_bf16.safetensors exists in ComfyUI/models/diffusion_models\n✅ 14b_933cfa912fe6e85b8f11146de130994c.safetensors exists in loras directory\n✅ umt5_xxl_fp16.safetensors exists in ComfyUI/models/text_encoders\n====================================\nRunning workflow\n[ComfyUI] got prompt\nExecuting node 40, title: EmptyHunyuanLatentVideo, class type: EmptyHunyuanLatentVideo\nExecuting node 49, title: Load LoRA, class type: LoraLoader\n[ComfyUI] Requested to load WanTEModel\nExecuting node 6, title: CLIP Text Encode (Positive Prompt), class type: CLIPTextEncode\n[ComfyUI] loaded completely 113273.66620521546 10835.4765625 True\nExecuting node 48, title: ModelSamplingSD3, class type: ModelSamplingSD3\nExecuting node 3, title: KSampler, class type: KSampler\n[ComfyUI] Requested to load WAN21\n[ComfyUI] loaded completely 115028.28298866272 27251.406372070312 True\n[ComfyUI]\n[ComfyUI] 0%| | 0/30 [00:00<?, ?it/s]\n[ComfyUI] Resetting TeaCache state\n[ComfyUI]\n[ComfyUI] 3%|▎ | 1/30 [00:28<13:57, 28.89s/it]\n[ComfyUI] 7%|▋ | 2/30 [01:05<15:40, 33.58s/it]\n[ComfyUI] 10%|█ | 3/30 [01:42<15:47, 35.09s/it]\n[ComfyUI] TeaCache: Initialized\n[ComfyUI]\n[ComfyUI] 13%|█▎ | 4/30 [02:28<17:04, 39.40s/it]\n[ComfyUI] 17%|█▋ | 5/30 [02:28<10:31, 25.26s/it]\n[ComfyUI] 20%|██ | 6/30 [03:06<11:46, 29.42s/it]\n[ComfyUI] 23%|██▎ | 7/30 [03:06<07:36, 19.85s/it]\n[ComfyUI] 27%|██▋ | 8/30 [03:44<09:20, 25.47s/it]\n[ComfyUI] 30%|███ | 9/30 [03:44<06:08, 17.56s/it]\n[ComfyUI] 33%|███▎ | 10/30 [04:21<07:54, 23.72s/it]\n[ComfyUI] 37%|███▋ | 11/30 [04:21<05:13, 16.51s/it]\n[ComfyUI] 40%|████ | 12/30 [04:59<06:54, 23.01s/it]\n[ComfyUI] 43%|████▎ | 13/30 [04:59<04:33, 16.09s/it]\n[ComfyUI] 47%|████▋ | 14/30 [05:37<06:02, 22.63s/it]\n[ComfyUI] 50%|█████ | 15/30 [05:37<03:57, 15.86s/it]\n[ComfyUI] 53%|█████▎ | 16/30 [06:15<05:13, 22.36s/it]\n[ComfyUI] 57%|█████▋ | 17/30 [06:15<03:23, 15.68s/it]\n[ComfyUI] 60%|██████ | 18/30 [06:52<04:26, 22.24s/it]\n[ComfyUI] 63%|██████▎ | 19/30 [06:53<02:51, 15.60s/it]\n[ComfyUI] 67%|██████▋ | 20/30 [07:31<03:45, 22.56s/it]\n[ComfyUI] 70%|███████ | 21/30 [07:32<02:23, 15.94s/it]\n[ComfyUI] 73%|███████▎ | 22/30 [08:09<02:59, 22.41s/it]\n[ComfyUI] 77%|███████▋ | 23/30 [08:09<01:50, 15.73s/it]\n[ComfyUI] 80%|████████ | 24/30 [08:47<02:13, 22.26s/it]\n[ComfyUI] 83%|████████▎ | 25/30 [08:47<01:18, 15.63s/it]\n[ComfyUI] 87%|████████▋ | 26/30 [09:26<01:30, 22.56s/it]\n[ComfyUI] 90%|█████████ | 27/30 [09:26<00:47, 15.91s/it]\n[ComfyUI] 93%|█████████▎| 28/30 [10:04<00:44, 22.40s/it]\n[ComfyUI] 97%|█████████▋| 29/30 [10:04<00:15, 15.72s/it]\n[ComfyUI] 100%|██████████| 30/30 [10:41<00:00, 22.27s/it]\nExecuting node 8, title: VAE Decode, class type: VAEDecode\nExecuting node 50, title: Video Combine 🎥🅥🅗🅢, class type: VHS_VideoCombine\n[ComfyUI] 100%|██████████| 30/30 [10:41<00:00, 21.40s/it]\n[ComfyUI] Prompt executed in 658.70 seconds\noutputs: {'50': {'gifs': [{'filename': 'R8_Wan_00001.mp4', 'subfolder': '', 'type': 'output', 'format': 'video/h264-mp4', 'frame_rate': 16.0, 'workflow': 'R8_Wan_00001.png', 'fullpath': '/tmp/outputs/R8_Wan_00001.mp4'}]}}\n====================================\nR8_Wan_00001.png\nR8_Wan_00001.mp4", "metrics": { "predict_time": 662.239612717, "total_time": 895.208872 }, "output": [ "https://replicate.delivery/xezq/6WcdL4ttNTp5LVikLFkBgO7j4URkfZ4AgMhBiFkWdK6EwyYKA/R8_Wan_00001.mp4" ], "started_at": "2025-05-29T18:12:03.182259Z", "status": "succeeded", "urls": { "stream": "https://stream.replicate.com/v1/files/bcwr-ak7d6hzqsfitwf7g3q3ohtrjbxdo32bldk23bo5s5ffu5rsshfka", "get": "https://api.replicate.com/v1/predictions/yvjb9bfbwnrma0cq3mxarcv7xr", "cancel": "https://api.replicate.com/v1/predictions/yvjb9bfbwnrma0cq3mxarcv7xr/cancel" }, "version": "f72ba92f2bd5924059ed3d85470461f8ee733cef7092540650dea8ef7407a740" }
Generated inRandom seed set to: 4210953954 2025-05-29T18:12:03Z | INFO | [ Initiating ] chunk_size=150M dest=/tmp/tmpge8xnzyg/weights url=https://replicate.delivery/xezq/UAq7jOCkueVxHauHA4K0m4jCDxj5ylcGem5MANylM1QQjkxUA/trained_model.tar 2025-05-29T18:12:03Z | INFO | [ Cache Service ] enabled=true scheme=http target=hermes.services.svc.cluster.local 2025-05-29T18:12:06Z | INFO | [ Complete ] dest=/tmp/tmpge8xnzyg/weights size="307 MB" total_elapsed=3.326s url=https://replicate.delivery/xezq/UAq7jOCkueVxHauHA4K0m4jCDxj5ylcGem5MANylM1QQjkxUA/trained_model.tar Checking inputs ==================================== Checking weights ✅ wan_2.1_vae.safetensors exists in ComfyUI/models/vae ✅ wan2.1_t2v_14B_bf16.safetensors exists in ComfyUI/models/diffusion_models ✅ 14b_933cfa912fe6e85b8f11146de130994c.safetensors exists in loras directory ✅ umt5_xxl_fp16.safetensors exists in ComfyUI/models/text_encoders ==================================== Running workflow [ComfyUI] got prompt Executing node 40, title: EmptyHunyuanLatentVideo, class type: EmptyHunyuanLatentVideo Executing node 49, title: Load LoRA, class type: LoraLoader [ComfyUI] Requested to load WanTEModel Executing node 6, title: CLIP Text Encode (Positive Prompt), class type: CLIPTextEncode [ComfyUI] loaded completely 113273.66620521546 10835.4765625 True Executing node 48, title: ModelSamplingSD3, class type: ModelSamplingSD3 Executing node 3, title: KSampler, class type: KSampler [ComfyUI] Requested to load WAN21 [ComfyUI] loaded completely 115028.28298866272 27251.406372070312 True [ComfyUI] [ComfyUI] 0%| | 0/30 [00:00<?, ?it/s] [ComfyUI] Resetting TeaCache state [ComfyUI] [ComfyUI] 3%|▎ | 1/30 [00:28<13:57, 28.89s/it] [ComfyUI] 7%|▋ | 2/30 [01:05<15:40, 33.58s/it] [ComfyUI] 10%|█ | 3/30 [01:42<15:47, 35.09s/it] [ComfyUI] TeaCache: Initialized [ComfyUI] [ComfyUI] 13%|█▎ | 4/30 [02:28<17:04, 39.40s/it] [ComfyUI] 17%|█▋ | 5/30 [02:28<10:31, 25.26s/it] [ComfyUI] 20%|██ | 6/30 [03:06<11:46, 29.42s/it] [ComfyUI] 23%|██▎ | 7/30 [03:06<07:36, 19.85s/it] [ComfyUI] 27%|██▋ | 8/30 [03:44<09:20, 25.47s/it] [ComfyUI] 30%|███ | 9/30 [03:44<06:08, 17.56s/it] [ComfyUI] 33%|███▎ | 10/30 [04:21<07:54, 23.72s/it] [ComfyUI] 37%|███▋ | 11/30 [04:21<05:13, 16.51s/it] [ComfyUI] 40%|████ | 12/30 [04:59<06:54, 23.01s/it] [ComfyUI] 43%|████▎ | 13/30 [04:59<04:33, 16.09s/it] [ComfyUI] 47%|████▋ | 14/30 [05:37<06:02, 22.63s/it] [ComfyUI] 50%|█████ | 15/30 [05:37<03:57, 15.86s/it] [ComfyUI] 53%|█████▎ | 16/30 [06:15<05:13, 22.36s/it] [ComfyUI] 57%|█████▋ | 17/30 [06:15<03:23, 15.68s/it] [ComfyUI] 60%|██████ | 18/30 [06:52<04:26, 22.24s/it] [ComfyUI] 63%|██████▎ | 19/30 [06:53<02:51, 15.60s/it] [ComfyUI] 67%|██████▋ | 20/30 [07:31<03:45, 22.56s/it] [ComfyUI] 70%|███████ | 21/30 [07:32<02:23, 15.94s/it] [ComfyUI] 73%|███████▎ | 22/30 [08:09<02:59, 22.41s/it] [ComfyUI] 77%|███████▋ | 23/30 [08:09<01:50, 15.73s/it] [ComfyUI] 80%|████████ | 24/30 [08:47<02:13, 22.26s/it] [ComfyUI] 83%|████████▎ | 25/30 [08:47<01:18, 15.63s/it] [ComfyUI] 87%|████████▋ | 26/30 [09:26<01:30, 22.56s/it] [ComfyUI] 90%|█████████ | 27/30 [09:26<00:47, 15.91s/it] [ComfyUI] 93%|█████████▎| 28/30 [10:04<00:44, 22.40s/it] [ComfyUI] 97%|█████████▋| 29/30 [10:04<00:15, 15.72s/it] [ComfyUI] 100%|██████████| 30/30 [10:41<00:00, 22.27s/it] Executing node 8, title: VAE Decode, class type: VAEDecode Executing node 50, title: Video Combine 🎥🅥🅗🅢, class type: VHS_VideoCombine [ComfyUI] 100%|██████████| 30/30 [10:41<00:00, 21.40s/it] [ComfyUI] Prompt executed in 658.70 seconds outputs: {'50': {'gifs': [{'filename': 'R8_Wan_00001.mp4', 'subfolder': '', 'type': 'output', 'format': 'video/h264-mp4', 'frame_rate': 16.0, 'workflow': 'R8_Wan_00001.png', 'fullpath': '/tmp/outputs/R8_Wan_00001.mp4'}]}} ==================================== R8_Wan_00001.png R8_Wan_00001.mp4
Want to make some of these yourself?
Run this model