VibeAPIVibeAPI 开发者文档

Seedance

字节 Seedance 三个型号的差异:2.5 一口价 30 秒、2.0 系列的参考图 / 视频 / 音频与画面比例

POST /v1/videosmodelseedance-2.5 / seedance-2.0 / seedance-2.0-i2v。一口价计费,与时长无关,见视频生成。本页结论来自对本网关的真实调用,最后验证:2026-09-05。

基本调用

# 1. 提交
curl https://www.vibeapi.cn/v1/videos \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5",
    "prompt": "中国水墨动画。鲲化为鹏,自暴风怒海中腾空而起,双翼横贯画面,翼尖化入云雾。大量留白,湿笔在宣纸上缓缓洇开,单色水墨仅带一点淡赭",
    "duration": 30,
    "size": "1280x720"
}'

# 2. 轮询(每 10~15 秒一次)
curl "https://www.vibeapi.cn/v1/videos/$TASK_ID" -H "Authorization: Bearer $API_KEY"

# 3. 取片
curl -L "https://www.vibeapi.cn/v1/videos/$TASK_ID/content" \
  -H "Authorization: Bearer $API_KEY" -o output.mp4
import time, requests

BASE = "https://www.vibeapi.cn/v1"
H = {"Authorization": "Bearer YOUR_API_KEY"}

task = requests.post(f"{BASE}/videos", headers=H, json={
    "model": "seedance-2.5",,
    "prompt": "中国水墨动画。鲲化为鹏,自暴风怒海中腾空而起,双翼横贯画面,翼尖化入云雾。大量留白,湿笔在宣纸上缓缓洇开,单色水墨仅带一点淡赭",,
    "duration": 30,,
    "size": "1280x720",
}).json()

while True:
    s = requests.get(f"{BASE}/videos/{task['id']}", headers=H).json()
    if s["status"] in ("completed", "failed"):
        break
    time.sleep(12)

if s["status"] == "completed":
    url = s.get("metadata", {}).get("url") or f"{BASE}/videos/{task['id']}/content"
    open("output.mp4", "wb").write(requests.get(url, headers=H).content)
import fs from "fs";

const BASE = "https://www.vibeapi.cn/v1";
const H = { Authorization: "Bearer YOUR_API_KEY", "Content-Type": "application/json" };
const sleep = (ms) => new Promise((r) => setTimeout(r, ms));

const task = await (await fetch(`${BASE}/videos`, {
  method: "POST",
  headers: H,
  body: JSON.stringify({
    model: "seedance-2.5",,
    prompt: "中国水墨动画。鲲化为鹏,自暴风怒海中腾空而起,双翼横贯画面,翼尖化入云雾。大量留白,湿笔在宣纸上缓缓洇开,单色水墨仅带一点淡赭",,
    duration: 30,,
    size: "1280x720",
  }),
})).json();

let s;
while (true) {
  s = await (await fetch(`${BASE}/videos/${task.id}`, { headers: H })).json();
  if (s.status === "completed" || s.status === "failed") break;
  await sleep(12_000);
}

if (s.status === "completed") {
  const url = s.metadata?.url ?? `${BASE}/videos/${task.id}/content`;
  fs.writeFileSync("output.mp4", Buffer.from(await (await fetch(url, { headers: H })).arrayBuffer()));
}

三个型号

一口价系列,最大特点是单次能出 30 秒seedance-2.5)。代价是分辨率固定 1280×720,且画面会主动避开清晰人脸——拍风景、山水、抽象画面最划算, 要人物主体用 seedance-2.0 系列或 wan3.0。

三个型号的能力并不一样,别按系列一概而论:

seedance-2.5seedance-2.0seedance-2.0-i2v
时长固定 30 秒4–15 秒5–15 秒
画面比例全比例16:9 9:16 1:1 4:316:9 9:16 1:1
分辨率固定 1280×720固定 864×496resolution 选 720p / 1080p
参考图最多 9 张最多 9 张必填,1–9 张
参考视频不收最多 3 条最多 3 条
参考音频不收最多 3 个最多 3 个

比例用 aspect_ratio 传,取值超出该型号支持范围会被归一。 参考素材放在 image_urls / video_urls / audio_urls 数组里, 顺序即编号——提示词里的 @Image1 对应数组第一项,依次类推。

鲲鹏水墨
女娲补天
敦煌飞天

seedance-2.5 固定 30 秒,duration 传别的值也按 30 秒处理,价钱不变。 引用参考图时在提示词里用 @Image1@Image9

seedance-2.5 日产能有限,请按可能需要重试来设计。 失败自动全额退款。