Video ExtendAlibaba

ai/wan-2.2-spicy/video-extend-lora(视频延长)

alibaba/wan-2.2-spicy/video-extend-lora

使用 WAN 2.2 Spicy 将片段延长为更长的视频,生成流畅动画,并支持自定义 LoRA 权重。开箱即用的 REST 推理 API,性能出色,无冷启动,价格实惠。

示例

ai/wan-2.2-spicy/video-extend-lora(视频延长) 示例 1

参数

名称类型默认约束说明
prompt *提示词textarea—≤ 5000 chars用于生成的正向提示词。
video *视频video_upload—video/*用于生成输出的视频。
resolution分辨率select480p480p | 720p生成媒体的分辨率。
duration时长select55 | 8生成媒体的时长,单位为秒。
lorasLoRA 模型array<object>—0–3 items要应用的 LoRA 模型列表(最多 3 个)。
↳path *Pathtext—≤ 500 charsURL or the path to the LoRA weights.
↳scaleScaleslider10 ~ 4 · step 0.1The scale of the LoRA weights. This is used to scale the LoRA weight before merging it with the base model.
high_noise_loras高噪声 LoRA 模型array<object>—0–3 items要应用的高噪声 LoRA 模型列表(最多 3 个)。
↳path *Pathtext—≤ 500 charsURL or the path to the LoRA weights.
↳scaleScaleslider10 ~ 4 · step 0.1The scale of the LoRA weights. This is used to scale the LoRA weight before merging it with the base model.
low_noise_loras低噪声 LoRA 模型array<object>—0–3 items要应用的低噪声 LoRA 模型列表(最多 3 个)。
↳path *Pathtext—≤ 500 charsURL or the path to the LoRA weights.
↳scaleScaleslider10 ~ 4 · step 0.1The scale of the LoRA weights. This is used to scale the LoRA weight before merging it with the base model.
seed随机种子number——用于生成的随机种子。-1 表示将使用随机种子。

输出字段

字段类型说明
videosarray<string>

API

通过统一 REST API 调用本模型;在 API Keys 页获取密钥。

cURL
# 1) Submit — returns { "task_uuid": "..." }
curl -X POST "https://www.namifusion.com/api/v1/marketplace/run/alibaba/wan-2.2-spicy/video-extend-lora" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "input": {
    "prompt": "Continue the camera movement and subject action naturally while preserving the original visual style, lighting, and scene continuity.",
    "video": "https://assets-public.namifusion.com/marketplace/videos/2026-04-14/88d6efad3763.mp4",
    "resolution": "480p",
    "duration": 5
  }
}'

# 2) Poll until status is "completed", then read the output URLs
curl "https://www.namifusion.com/api/v1/marketplace/run/tasks/TASK_UUID" \
  -H "Authorization: Bearer YOUR_API_KEY"
Python
import time, requests

API_KEY = "YOUR_API_KEY"
HEADERS = {"Authorization": f"Bearer {API_KEY}"}

# 1) Submit
resp = requests.post(
    "https://www.namifusion.com/api/v1/marketplace/run/alibaba/wan-2.2-spicy/video-extend-lora",
    headers=HEADERS,
    json={
        "input": {
            "prompt": "Continue the camera movement and subject action naturally while preserving the original visual style, lighting, and scene continuity.",
            "video": "https://assets-public.namifusion.com/marketplace/videos/2026-04-14/88d6efad3763.mp4",
            "resolution": "480p",
            "duration": 5
        }
    },
)
resp.raise_for_status()  # 401/402/429/5xx stop here instead of polling a bad task
task = resp.json()

# 2) Poll until a terminal state (completed / failed / cancelled).
#    This model is allowed up to 300s server-side.
deadline = time.time() + 360
while task.get("status") not in ("completed", "failed", "cancelled"):
    if time.time() > deadline:
        raise TimeoutError(f"still {task.get('status')} — keep the task_uuid and poll later")
    time.sleep(3)
    poll = requests.get(f"https://www.namifusion.com/api/v1/marketplace/run/tasks/{task['task_uuid']}", headers=HEADERS)
    poll.raise_for_status()
    task = poll.json()

print(task["status"], task.get("output"))
JavaScript
const API_KEY = "YOUR_API_KEY";
const HEADERS = { Authorization: `Bearer ${API_KEY}` };

// 1) Submit
const resp = await fetch("https://www.namifusion.com/api/v1/marketplace/run/alibaba/wan-2.2-spicy/video-extend-lora", {
  method: "POST",
  headers: { ...HEADERS, "Content-Type": "application/json" },
  body: JSON.stringify({
    "input": {
      "prompt": "Continue the camera movement and subject action naturally while preserving the original visual style, lighting, and scene continuity.",
      "video": "https://assets-public.namifusion.com/marketplace/videos/2026-04-14/88d6efad3763.mp4",
      "resolution": "480p",
      "duration": 5
    }
  }),
});
if (!resp.ok) throw new Error(`submit failed: ${resp.status} ${await resp.text()}`);
let task = await resp.json();

// 2) Poll until a terminal state (completed / failed / cancelled).
//    This model is allowed up to 300s server-side.
const deadline = Date.now() + 360 * 1000;
while (!["completed", "failed", "cancelled"].includes(task.status)) {
  if (Date.now() > deadline) throw new Error(`still ${task.status} — keep the task_uuid and poll later`);
  await new Promise((r) => setTimeout(r, 3000));
  const poll = await fetch(`https://www.namifusion.com/api/v1/marketplace/run/tasks/${task.task_uuid}`, { headers: HEADERS });
  if (!poll.ok) throw new Error(`poll failed: ${poll.status}`);
  task = await poll.json();
}

console.log(task.status, task.output);

文档

ai/wan-2.2-spicy/video-extend-lora

将短片自然延展为更长视频,并通过 LoRA 模型实现更强风格与角色控制。

ai/wan-2.2-spicy/video-extend-lora 是一款面向视频续写与延展场景的图生视频模型,适合将已有片段扩展为更长、运动更连贯的输出。该模型支持自定义 LoRA 模型组合,在保持流畅动画表现的同时,提供更灵活的风格、角色与细节控制,并具备无冷启动优势,适合稳定的生产环境使用。

🚀 Key Features

  • 视频延展能力:基于输入视频继续生成后续内容,适合将短片扩展为更完整的叙事片段。
  • 平滑动画过渡:针对连续运动与时序衔接进行了优化,有助于生成更自然的动态效果。
  • 支持 LoRA 模型:可加载最多 3 个 LoRA 模型,并区分高噪声与低噪声 LoRA 模型,提升风格控制灵活性。
  • 无冷启动:适合对响应稳定性有要求的在线生产场景,减少首次调用等待时间。
  • 多档输出配置:支持 480p 与 720p 分辨率,以及 5 秒与 8 秒时长,便于在成本与质量之间平衡。
  • 可复现生成:支持设置随机种子,便于结果复现、版本对比与批量测试。

🛠️ Technical Specifications

项目说明
模型架构视频延展 / 视频续写 LoRA 增强模型
任务类型图生视频
输入形式提示词、输入视频、LoRA 模型配置
输出形式视频
分辨率480p、720p
时长5 秒、8 秒
帧率未公开
风格控制支持 LoRA 模型、high noise LoRA 模型、low noise LoRA 模型(各最多 3 个)
随机种子支持;-1 表示使用随机随机种子
延迟表现面向快速推理场景优化,且无冷启动
适用场景视频续写、风格延展、角色一致性增强、短视频扩展

示例提示词:

  • 延续镜头中的人物向前行走,城市霓虹灯逐渐亮起,镜头运动平稳,电影感光影
  • 保持原视频角色外观一致,继续生成自然的转身动作与衣物摆动,细节真实
  • 将现有片段扩展为更完整的产品展示视频,镜头缓慢推进,背景干净,高级商业广告风格

💰 Pricing

计费项价格
基础价格$0.2

💡 Best Use Cases

  • 短视频内容延展:将已有素材扩展为更长的社交媒体视频、预告片或剧情片段。
  • 电商与广告创意:基于产品演示片段继续生成更完整的展示镜头,提升素材利用率。
  • 角色与风格一致性创作:结合 LoRA 模型生成更统一的人物、服装或品牌视觉风格。
  • 影视分镜与概念验证:快速延长测试镜头,用于创意验证、节奏预览与动态分镜制作。

🔗 Related Models

  • WAN 2.2 Spicy 系列:适合需要更强运动表现、视频续写能力与 LoRA 模型控制的创作场景。
  • video-extend-lora 变体:如果您的工作流强调片段延展与风格定制,该版本尤其适合用于连续镜头生成。