
Seedance 2.5 API 快速开始:第一次视频生成请求
掌握 Seedance 2.5 API 的密钥、cURL 请求、Python 轮询方法。了解输入模式、帧链接、成本计算及首次视频生成流程。
要在 reAPI 上调用 Seedance 2.5 API,需要创建 API 密钥,向 /api/v1/videos/generations 发送请求并包含 model: "doubao-seedance-2.5-face",然后轮询返回的 id。完成的任务包含视频 URL。文本、图像、首帧/尾帧和多模态参考请求都使用同一个模型标识。[1]
先从四秒的文本请求开始,这样不需要上传文件便于诊断。按 9 月 12 日的费率,无参考视频的 480p 视频每秒 $0.118589,该请求花费 475 积分,即 $0.475(积分向上取整后)。Seedance 2.5 模型页面提供实时费率表和用于验证相同设置的在线试用区。[2]
要点速览
- 在 API 密钥中创建 Bearer 密钥,然后发送
model: "doubao-seedance-2.5-face"。页面 slugseedance-2-5不是请求的模型标识。[1] - 提交一次,保存响应中的
id,然后轮询/api/v1/tasks/{id}。成功的 POST 会启动一个任务;这不意味着视频已准备就绪。[1] - 从 4–30 秒中选择
duration,从480p、720p或1080p中选择resolution。使用固定时长,可提前确定首次预占的积分。[1] - 为显式首帧/尾帧输入设置
size: "adaptive"。输出遵循帧的形状。[1] - 十秒 720p 请求无参考视频,按 9 月 12 日费率为 2,669 积分,即 $2.669。带参考视频的请求,计费时长不只取决于输出秒数。[1][2]
创建 Seedance 2.5 API 密钥并准备一个请求
登录 reAPI,打开 API 密钥,为将支付生成费用的工作区创建密钥。将其复制到名为 REAPI_API_KEY 的本地环境变量。将密钥保存在浏览器 JavaScript、公开仓库和屏幕截图之外。请求通过 Authorization: Bearer ... 标头进行身份验证;文档工作流不需要单独的项目标头。[1]
还需要足够的积分用于请求的初始准备。推广积分(如果向符合条件的账户提供)独立于特定视频是否能完全获得资金。查看账户中显示的金额。本教程假设账户已充值,不承诺免费生成。[2]
首个请求体应尽量精简。提示词、固定时长、宽高比和分辨率足以用于文本请求。在提交和轮询路径工作后再添加图像或音频。这样可以更容易诊断首次尝试失败:它不可能由无法访问的参考 URL 或不兼容的源文件引起。
发送首个 cURL 请求并保存其任务 id
REAPI_API_KEY 已设置在 shell 中后,提交此请求:
curl --fail-with-body https://reapi.ai/api/v1/videos/generations \
-H "Authorization: Bearer $REAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "doubao-seedance-2.5-face",
"prompt": "A matte cobalt ceramic mug stands on an ivory turntable. One continuous studio shot. Over four seconds the turntable rotates clockwise by about 45 degrees. The camera stays fixed at mug height. Keep the handle, rim and glaze consistent. Soft side light, plain background, no text or logos.",
"duration": 4,
"size": "16:9",
"resolution": "480p",
"generate_audio": false,
"return_last_frame": true
}'在执行任何操作前保存响应的 id。该标识符属于此生成,是后续 GET 请求使用的值。不要用模型标识、文件 URL 或猜测的标识符替换它。响应还包括任务状态;视频 URL 在任务完成时出现。[1]
示例除了请求生成视频,还会请求返回尾帧图像。对于独立片段可以忽略该图像,或在链接镜头时稍后使用。同一提示词和设置包含在我们的测试提示词库中,你可以检查生成的内容而不是将措辞视为质量保证。
在 Python 中提交和轮询 Seedance 2.5 API 任务
下面的 Python 示例是 cURL 示例的替代方案:它创建新视频任务并轮询该任务。为首次测试选择一种提交方法。运行两个示例都会创建两次付费生成。
脚本在本地最多等待 30 分钟。该超时是示例客户端策略,不是承诺的生成时间。它会报告 HTTP 失败而不是静默启动另一个任务。运行前安装 requests 并设置 REAPI_API_KEY。
import os
import time
import requests
BASE = "https://reapi.ai/api/v1"
headers = {"Authorization": f"Bearer {os.environ['REAPI_API_KEY']}"}
payload = {
"model": "doubao-seedance-2.5-face",
"prompt": "A ceramic mug on a table. Locked camera, soft daylight.",
"duration": 4,
"resolution": "480p",
"size": "16:9",
"generate_audio": False,
}
submitted = requests.post(
f"{BASE}/videos/generations",
headers=headers,
json=payload,
timeout=120,
)
submitted.raise_for_status()
task_id = submitted.json()["id"]
print("Save this task id:", task_id, flush=True)
deadline = time.monotonic() + 30 * 60
while time.monotonic() < deadline:
response = requests.get(
f"{BASE}/tasks/{task_id}", headers=headers, timeout=60
)
if response.status_code in (429, 500, 502, 503, 504):
time.sleep(10)
continue
response.raise_for_status()
task = response.json()
if task["status"] == "completed":
for url in task["output"]["video_urls"]:
print(url)
break
if task["status"] == "failed":
raise RuntimeError(task.get("error"))
time.sleep(10)
else:
raise TimeoutError(f"Resume polling existing task {task_id}")轮询不消耗生成积分。如果本地进程超时,保留保存的 id 并继续对该任务进行 GET 请求。本地超时单独不能证明远程生成失败。同样,如果 POST 连接在收到响应前中断,在再次提交同样的工作前检查任务历史。[1]
对于服务集成,在提交后立即在自己的数据库中持久化任务 id。重要区别在于重试读取现有任务和创建新任务。后者是另一个生成请求。
通过媒体字段选择四种输入模式
媒体字段选择请求形状。将此表与完整的 Seedance 2.5 API 文档一起使用。[1]
| 预期的请求 | 要发送的字段 | 需要记住的约束 |
|---|---|---|
| 文本到视频 | prompt | 纯文本请求需要提示词 |
| 参考图像到视频 | image_urls 加动作提示词 | 公开图像 URL;最多 30 张图像 |
| 显式首帧或首/尾帧 | image_with_roles | 使用 size: "adaptive";尾帧需要首帧 |
| 多模态参考 | image_urls、video_urls 和/或 audio_urls | 每种媒体类型有自己的文件和时长限制 |
例如,将纯文本请求的图像输入替换为显式首帧:
{
"image_with_roles": [
{
"url": "https://file.deepytb.com/landing/qwen-image-2/playground-input.webp",
"role": "first_frame"
}
],
"size": "adaptive"
}此块显示要合并到完整请求中的字段,不是完整的 POST 主体。用你有权使用的图像替换示例。不要同时发送 image_urls 和 image_with_roles;它们互斥。也不应在同一数组中混合帧角色和 reference_image 角色。[1]
对于视频输入,源片段必须 2–30 秒长,最多十个片段,合计不超过 30 秒。音频的限制为十个轨道,合计 30 秒。更多文件本身不会使请求更可控;为每个参考在提示词中分配清晰的角色。[1]
链接尾帧而不假设完美连续性
在首个请求中设置 return_last_frame: true。该任务完成时,读取 output.last_frame_url 并将该 URL 放在下一个请求的 image_with_roles 数组中,其中 role: "first_frame"。再次使用 size: "adaptive"。[1]
延续对被摄体、服装、场景和预期下一步动作的相关描述。共享边界图像为下一个镜头提供视觉起点;它不证明后续帧会保留每个细节。在将这一对镜头用作一个序列前,检查接合处,特别是移动的手、眼睛方向和背景对象。
视频编辑是不同的请求形状。显式设置 omni_reference_task_type: "edit" 需要源视频、自适应大小和自动时长。它不适用于仅使用照片作为指导的新场景。保持首次集成在纯生成路径上,然后在需要修改现有片段时添加编辑。[1]
添加源视频前计算请求成本
对于无参考视频的请求,将每秒价格乘以输出时长,将美元转换为积分并向上取整为整数积分。一积分等于 $0.001。[1]
| 请求 | 9 月 12 日费率 | 计算 | 应付总额 |
|---|---|---|---|
| 4 秒、480p、无参考视频 | $0.118589/秒 | ceil(0.118589 × 4 × 1000) | 475 积分 / $0.475 |
| 10 秒、720p、无参考视频 | $0.266824/秒 | ceil(0.266824 × 10 × 1000) | 2,669 积分 / $2.669 |
| 10 秒输出、3 秒参考、720p | $0.160094/秒 | ceil(0.160094 × 17 × 1000) | 2,722 积分 / $2.722 |
最后一行计费 17 秒,因为视频输入请求使用“输出时长加上向上取整后的源视频时长”与 ceil(5 × output / 3) 中的较大值。因此较低的参考视频费率不一定意味着最终费用较低。图像和音频参考不添加源秒数。[1][2]
自动时长 duration: -1 会先按 30 秒上限预占积分,随后按实际交付时长结算。如果需要减少预占积分,请使用固定时长。为更宽泛的平台比较,请参阅 API 定价指南。
将 API 主机说明放在一起
在 OpenRouter、fal 或 GitHub 上搜索 Seedance 2.5 可能导致不同的客户端和服务接口规范。本教程的密钥、端点、模型标识和任务信封属于一起。调用另一个服务的仓库不是此请求的直接替代品。
在调整示例前,检查其基本 URL、身份验证标头、接受的模型名称、输入架构和状态端点。使用将实际接收请求的主机的文档。不需要第三方 GitHub 包装器来运行此处的 cURL 和 Python 示例;它们使用 reAPI 的文档 HTTP 接口。[1]
常见问题
Seedance 2.5 API 密钥
在 reAPI API 密钥中创建密钥并用作 Bearer 令牌。将其保存在服务器或本地环境中,并有足够的工作区积分用于请求。[1]
Seedance 2.5 API 文档
模型参考记录了接受的字段、模式、约束和计费。使用模型页面了解当前每秒价格。[1][2]
Seedance 2.5 API 教程
提交一个固定时长的文本请求,保存其 id,然后轮询直到完成或失败。只有在该路径有效后再添加参考文件。[1]
Seedance 2.5 API GitHub
GitHub 客户端是可选的。在使用其示例 payload 前,检查它调用哪个服务以及其字段是否与当前 API 文档匹配。[1]
Seedance 2.5 API 访问
reAPI 通过其异步视频端点公开 doubao-seedance-2.5-face。网站模型 slug 不是要提交的模型值。[1]
Seedance 2.5 API 成本
按 9 月 12 日费率,四秒 480p 请求无源视频,积分向上取整后为 $0.475。时长、分辨率和参考视频计费会改变总额。[1][2]
完成一个请求后再扩展工作流
将首个成功的 payload 及其任务 id 作为 Seedance 2.5 API 集成基线保存。对于下一个请求,添加该镜头需要的媒体类型,并在引入链接或编辑前检查返回的视频。
参考资料
- reAPI. Seedance 2.5 API — Parameters, Modes & Billing. 2026年9月12日浏览器获取。reapi.ai/docs/seedance-2-5。
- reAPI. Seedance 2.5 model page, rendered pricing table and FAQ. 2026年9月12日浏览器获取。reapi.ai/models/seedance-2-5。
更多文章

Nano Banana 防水印与 SynthID:区别详解
Nano Banana 可见徽章与 SynthID 完全不同。前者是产品等级的视觉标记,后者是嵌入内容的来源验证码。掌握区分这两种防水印的方法。


什么是 Seedance 2.0?如何使用(2026 指南)
详解 Seedance 2.0、真正的官方网站、当前所有可用平台及 API 调用方法。内容已于 2026 年 7 月核实,不靠猜测。


Seedance 2.5 对比 Kling 3.0:时长、音频和API费率
对比 Seedance 2.5 与 Kling 3.0 的时长、参考素材、原生音频和 4K 支持,按相同条件计算 10 秒请求的 API 费用。
