开始使用

快速开始

几分钟内生成第一段视频。下面用火山方舟格式的接口调用 Seedance 2.0,从注册到拿到视频地址。

  1. 1

    注册并充值

    注册账号后,在 控制台 → 充值 充值。创建任务时按价格冻结余额,余额不足时任务无法创建。

  2. 2

    创建 API Key

    在 控制台 → API Keys 新建一个密钥,复制后保存到环境变量。火山方舟的官方 SDK 默认就从 ARK_API_KEY 读取密钥:

    export ARK_API_KEY="sk-xxxxxxxxxxxxxxxx"
  3. 3

    安装 SDK(可选)

    可以直接用火山方舟的官方 SDK,也可以不装 SDK,用 cURL 或任意 HTTP 库发请求。其他语言和旧版 SDK 见接入说明。

    安装
    python -m pip install --upgrade arkruntime
  4. 4

    提交任务

    把 SDK 的 base_url 指向本平台,其余写法和火山方舟完全一样。接口立即返回任务 ID:

    创建视频生成任务
    curl https://your-domain/ark/api/v3/contents/generations/tasks \
      -H "Authorization: Bearer $ARK_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "model": "doubao-seedance-2-0-260128",
        "content": [{"type": "text", "text": "清晨的海边,一只金毛犬沿着浪花奔跑,镜头缓慢跟随,阳光穿过薄雾"}],
        "resolution": "720p",
        "ratio": "16:9",
        "duration": 5,
        "generate_audio": true
      }'
    返回结果
    {
      "id": "video_8f3k2m9x4q1w7e5r0t6y2u4p"
    }
  5. 5

    查询结果

    用任务 ID 查询任务,status 依次经过 queued(排队中)、running(生成中),最后变成 succeeded(成功)或 failed(失败)。成功后 content.video_url 就是视频地址。

    查询视频生成任务
    curl https://your-domain/ark/api/v3/contents/generations/tasks/video_8f3k2m9x4q1w7e5r0t6y2u4p \
      -H "Authorization: Bearer $ARK_API_KEY"
    返回结果(任务成功时)
    {
      "id": "video_8f3k2m9x4q1w7e5r0t6y2u4p",
      "model": "doubao-seedance-2-0-260128",
      "status": "succeeded",
      "content": {
        "video_url": "https://your-domain/uploads/videos/2026/10/k3Zq8mVt2LxR9pWa.mp4"
      },
      "usage": {"completion_tokens": 108900, "total_tokens": 108900},
      "created_at": 1791691200,
      "updated_at": 1791691318,
      "resolution": "720p",
      "ratio": "16:9",
      "duration": 5,
      "framespersecond": 24,
      "service_tier": "default",
      "execution_expires_after": 43200,
      "generate_audio": true,
      "draft": false,
      "priority": 0,
      "output_format": "mp4"
    }

完整示例

提交任务后每 10 秒查询一次,直到拿到视频地址:

seedance_quickstart.py
import os
import time

from arkruntime import Ark

client = Ark(
    base_url="https://your-domain/ark/api/v3",
    api_key=os.environ.get("ARK_API_KEY"),
)

# 1. 提交任务,拿到任务 ID
task = client.content_generation.tasks.create(
    model="doubao-seedance-2-0-260128",
    content=[{"type": "text", "text": "清晨的海边,一只金毛犬沿着浪花奔跑,镜头缓慢跟随,阳光穿过薄雾"}],
    resolution="720p",
    ratio="16:9",
    duration=5,
)
print("任务 ID:", task.id)

# 2. 每 10 秒查询一次,直到任务结束
while True:
    task = client.content_generation.tasks.get(task_id=task.id)
    if task.status == "succeeded":
        print("视频地址:", task.content.video_url)
        break
    if task.status in ("failed", "cancelled", "expired"):
        print("任务未成功:", task.status, task.error)
        break
    time.sleep(10)
不想轮询的话,可以在创建任务时传 callback_url,任务状态变化时平台会把任务信息 POST 到这个地址,见回调通知。

下一步