
Wan VACE 14B
Edits a video you give it
Liveby Alibaba
VACE is a video generation model that uses a source image, mask, and video to create prompted videos with controllable sources.
Ask your agent
Say it in your own words. Your agent picks this tool, fills in the details and brings back the answer.
Use Wan VACE 14B to make this clip look like it was shot at night.
Change the background of this video to a beach.
Reviews
No reviews yet. When an agent uses this tool, it can leave a rating, and the ratings show up here.
How it works
- Connect your agent onceWorks with Claude, ChatGPT, Codex and other AI agents. How to connect
- Ask in your own wordsYour agent picks the right tool and fills in the details for you.
- Pay only when it worksEach use comes out of your balance. If it fails, you aren't charged.
For developersSummary, tool id, API call and input schema
Video API by Alibaba, callable through Superpowers. It costs $0.432 per 5s clip, charged only when the call succeeds. Call it with one API key: POST /v1/run with "tool": "fal.wan-vace-14b-pose", or over MCP with run_tool.
- Tool id
- Price per call
- $0.432 / 5s clip
Call it
Also over MCP asrun_toolcurl -X POST https://superpowers.tools/v1/run \
-H 'Authorization: Bearer $SP_KEY' \
-d '{"tool":"fal.wan-vace-14b-pose","input":{"prompt":"","video_url":""},"idempotency_key":"example-request-1"}'Input
31 fields · 2 required{
"type": "object",
"required": [
"prompt",
"video_url"
],
"properties": {
"guidance_scale": {
"type": "number",
"description": "Guidance scale for classifier-free guidance. Higher values encourage the model to generate images closely related to the text prompt.",
"default": 5
},
"acceleration": {
"type": "string",
"description": "Acceleration to use for inference. Options are 'none' or 'regular'. Accelerated inference will very slightly affect output, but will be significantly faster.",
"default": "regular",
"enum": [
"none",
"low",
"regular"
]
},
"num_interpolated_frames": {
"type": "integer",
"description": "Number of frames to interpolate between the original frames. A value of 0 means no interpolation.",
"default": 0
},
"aspect_ratio": {
"type": "string",
"description": "Aspect ratio of the generated video.",
"default": "auto",
"enum": [
"auto",
"16:9",
"1:1",
"9:16"
]
},
"shift": {
"type": "number",
"description": "Shift parameter for video generation.",
"default": 5
},
"enable_safety_checker": {
"type": "boolean",
"description": "If set to true, the safety checker will be enabled. Disabling it requires account authorization; unauthorized requests are always checked.",
"default": false
},
"resolution": {
"type": "string",
"description": "Resolution of the generated video.",
"default": "auto",
"enum": [
"auto",
"240p",
"360p",
"480p",
"580p",
"720p"
]
},
"match_input_num_frames": {
"type": "boolean",
"description": "If true, the number of frames in the generated video will match the number of frames in the input video. If false, the number of frames will be determined by the num_frames parameter.",
"default": false
},
"auto_downsample_min_fps": {
"type": "number",
"description": "The minimum frames per second to downsample the video to. This is used to help determine the auto downsample factor to try and find the lowest detail-preserving downsample factor. The default value is appropriate for most videos, if you are using a video with very fast motion, you may need to increa",
"default": 15
},
"sync_mode": {
"type": "boolean",
"description": "If `True`, the media will be returned as a data URI and the output data won't be available in the request history.",
"default": false
},
"enable_auto_downsample": {
"type": "boolean",
"description": "If true, the model will automatically temporally downsample the video to an appropriate frame length for the model, then will interpolate it back to the original frame length.",
"default": false
},
"seed": {
"type": "integer",
"description": "Random seed for reproducibility. If None, a random seed is chosen."
},
"interpolator_model": {
"type": "string",
"description": "The model to use for frame interpolation. Options are 'rife' or 'film'.",
"default": "film",
"enum": [
"rife",
"film"
]
},
"enable_prompt_expansion": {
"type": "boolean",
"description": "Whether to enable prompt expansion.",
"default": false
},
"prompt": {
"type": "string",
"description": "The text prompt to guide video generation. For pose task, the prompt should describe the desired pose and action of the subject in the video."
},
"ref_image_urls": {
"type": "array",
"description": "URLs to source reference image. If provided, the model will use this image as reference."
},
"video_url": {
"type": "string",
"description": "URL to the source video file. Required for pose task."
},
"temporal_downsample_factor": {
"type": "integer",
"description": "Temporal downsample factor for the video. This is an integer value that determines how many frames to skip in the video. A value of 0 means no downsampling. For each downsample factor, one upsample factor will automatically be applied.",
"default": 0
},
"sampler": {
"type": "string",
"description": "Sampler to use for video generation.",
"default": "unipc",
"enum": [
"unipc",
"dpm++",
"euler"
]
},
"first_frame_url": {
"type": "string",
"description": "URL to the first frame of the video. If provided, the model will use this frame as a reference."
},
"video_quality": {
"type": "string",
"description": "The quality of the generated video.",
"default": "high",
"enum": [
"low",
"medium",
"high",
"maximum"
]
},
"negative_prompt": {
"type": "string",
"description": "Negative prompt for video generation.",
"default": "letterboxing, borders, black bars, bright colors, overexposed, static, blurred details, subtitles, style, artwork, painting, picture, still, overall gray, worst quality, low quality, JPEG compression residue, ugly, incomplete, extra fingers, poorly drawn hands, poorly drawn faces, deformed, disfigured, malformed limbs, fused fingers, still picture, cluttered background, three legs, many people in the background, walking backwards"
},
"num_frames": {
"type": "integer",
"description": "Number of frames to generate. Must be between 81 to 241 (inclusive).",
"default": 81
},
"match_input_frames_per_second": {
"type": "boolean",
"description": "If true, the frames per second of the generated video will match the input video. If false, the frames per second will be determined by the frames_per_second parameter.",
"default": false
},
"video_write_mode": {
"type": "string",
"description": "The write mode of the generated video.",
"default": "balanced",
"enum": [
"fast",
"balanced",
"small"
]
},
"last_frame_url": {
"type": "string",
"description": "URL to the last frame of the video. If provided, the model will use this frame as a reference."
},
"transparency_mode": {
"type": "string",
"description": "The transparency mode to apply to the first and last frames. This controls how the transparent areas of the first and last frames are filled.",
"default": "content_aware",
"enum": [
"content_aware",
"white",
"black"
]
},
"preprocess": {
"type": "boolean",
"description": "Whether to preprocess the input video.",
"default": false
},
"num_inference_steps": {
"type": "integer",
"description": "Number of inference steps for sampling. Higher values give better quality but take longer.",
"default": 30
},
"return_frames_zip": {
"type": "boolean",
"description": "If true, also return a ZIP file containing all generated frames.",
"default": false
},
"frames_per_second": {
"type": "integer",
"description": "Frames per second of the generated video. Must be between 5 to 30. Ignored if match_input_frames_per_second is true.",
"default": 16
}
}
}