Seedance 是字节跳动旗下的视频生成模型,常见于广告素材、电商短视频和分镜预演。它的 API 与文本模型完全不同:一次请求不会直接返回视频,而是先创建任务,再轮询状态,最后下载结果。接入方如果按 Chat Completions 的思路写代码,通常会在第一步就卡住。
本文按工程落地顺序,讲清鉴权、提交、轮询、参数、测试、成本和合规。接口地址、模型名和计费方式变化较快,一律以官方文档和站内文档为准。
说明:Seedance、豆包、火山引擎等名称是其权利人的商标,本文仅作技术说明。示例中的接口路径和模型名仅用于演示,实际调用前请在官方或站内文档核对。价格以站内价格页为准。
一、Seedance API 适合什么
- 电商商品展示视频、主图视频;
- 信息流广告和短视频素材草稿;
- 分镜、概念片、风格测试;
- 社交媒体竖屏内容;
- 游戏、动画的预演片段。
不适合:需要严格事实准确性的新闻素材、未获授权的真人肖像、需要精确品牌规范的法务或医疗内容。视频生成的可控性仍弱于实拍,重要商单建议人工复核后再投放。
二、异步任务的基本流程
读取配置 → 鉴权 → 提交生成任务 → 拿到 task_id
→ 轮询状态(排队/运行/成功/失败)
→ 成功:下载视频或获取临时 URL
→ 失败:读错误码,决定重试或放弃
和文本接口相比,视频任务有三个额外成本:排队时间、失败重试、结果存储。工程上必须把这三项纳入设计,否则上线后会出现“请求超时但任务还在跑、重复提交导致重复扣费”的问题。
三、鉴权与接入准备
- 确认通道:先看站内文档是否已开通 Seedance 视频能力,支持哪些模型、时长和分辨率。
- 创建 Key:在控制台新建独立 Key,命名为
seedance-test或seedance-prod。 - 确认模型名:从价格页或文档复制,不要凭记忆拼写版本后缀。
- 确认回调方式:有的通道支持 webhook,有的只支持轮询。
- 准备素材:首帧图、参考图先转成可公开访问的 URL,或按文档要求上传。
- 设预算:给测试 Key 设额度上限,避免调试时跑出大额账单。
鉴权通常是 Authorization: Bearer <API_KEY>,但部分平台使用 AK/SK 签名或临时 Token。以实际文档为准,不要把一个平台的鉴权方式套到另一个平台。
四、提交任务示例
以下为常见的任务式请求形态,路径和字段仅作示例:
export SEEDANCE_API_KEY="你的密钥"
export BASE_URL="https://你的网关或官方地址"
curl -X POST "$BASE_URL/contents/generations/tasks" \
-H "Authorization: Bearer $SEEDANCE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "seedance-video",
"content": [
{"type": "text", "text": "雨后的上海街道,镜头缓慢推进,电影感,16:9"},
{"type": "image_url", "image_url": {"url": "https://example.com/first-frame.jpg"}}
],
"duration": 5,
"ratio": "16:9",
"resolution": "720p",
"watermark": false
}'
提交成功后,响应里会有任务 ID。把它落库,和业务单号绑定,后续轮询、重试和对账都靠它。
五、轮询与下载
curl "$BASE_URL/contents/generations/tasks/$TASK_ID" \
-H "Authorization: Bearer $SEEDANCE_API_KEY"
常见状态包括排队、运行中、成功、失败。建议:
- 轮询间隔从 5 秒起步,逐步退避到 15–30 秒;
- 设置总超时,例如 10 分钟,超时后标记失败而不是无限等;
- 成功响应里的视频 URL 通常有有效期,及时转存到自己的对象存储;
- 失败任务记录错误码和请求参数,方便复盘。
六、关键参数
| 参数 | 作用 | 实践建议 |
|---|---|---|
prompt / text |
描述画面、动作、镜头、风格 | 先写主体,再写镜头和光线 |
| 首帧图 | 控制起始画面 | 用清晰、无版权争议的图 |
duration |
视频时长 | 先用最短档测试 |
resolution |
分辨率 | 测试用低档,成片再升 |
ratio |
画幅比例 | 竖屏投放选 9:16 |
seed |
随机种子 | 固定种子便于对比参数 |
watermark |
是否带水印 | 商用前确认平台规则 |
参数名在不同平台可能不同,例如有的叫 image,有的叫 image_url,有的把时长写成字符串。以文档为准,不要直接复制别家的请求体。
七、上线前测试清单
- 鉴权是否通过,401 是否能被捕获。
- 最短时长、最低分辨率任务能否成功。
- 任务 ID 是否稳定返回,能否按 ID 查询。
- 轮询超时和最大重试次数是否设置。
- 失败原因是否可读,是否区分审核拒绝和系统错误。
- 结果 URL 的有效期和转存逻辑是否验证。
- 计费是否与预期一致,失败任务是否计费。
- 并发提交时是否触发限流。
八、成本怎么估
视频成本通常远高于文本,估算时不要只看单价:
单条成本 =
单价 × 时长 × 分辨率系数
+ 失败重试成本
+ 存储与带宽
+ 人工审核时间
计费口径可能是按生成秒数、按分辨率档位,或按视频 token 折算。具体单价以站内模型价格为准。建议先跑 20–50 条小批量,统计成功率、平均耗时和单条成本,再决定是否扩量。
九、内容审核与版权风险
- 肖像权:上传真人照片或生成可识别人物,需要取得授权。
- 著作权:参考图、风格、音乐、商标都可能涉及第三方权利。
- 内容政策:暴力、色情、违法、虚假信息会被拒绝或下架。
- 虚假宣传:广告素材不要生成与实际商品不符的效果。
- 数据安全:上传的图片和视频可能含客户信息,注意脱敏和留存期限。
- 商用范围:生成内容能否商用,取决于平台条款和你的素材授权。
建议建立三道关:提交前审查素材,生成后人工抽检,投放前由品牌或法务确认。审核拒绝不是技术故障,不要用换关键词的方式反复绕过。
十、稳定性建议
- 任务表落库,记录提交时间、状态、耗时和费用;
- 提交与轮询分离,避免一个请求里同步等待几分钟;
- 对 429 和 5xx 做指数退避,对 4xx 参数错误不要盲目重试;
- 准备备用通道或备用模型,视频通道高峰期可能排队;
- 监控成功率、P95 耗时和单条成本,按天对账。
常见问题
Seedance API 是同步返回视频吗?
通常不是。视频生成多为异步任务,需要提交后轮询或等待回调,再下载结果。
国内可以直接调用吗?
取决于通道、账号和合规条件。使用前确认服务条款、内容政策和当地法规。
生成一条视频要多久?
受排队、时长、分辨率和上游负载影响,从几十秒到几分钟都常见。生产环境要设置超时和重试。
失败会扣费吗?
不同平台规则不同。接入前确认失败、审核拒绝、超时取消分别如何计费。
可以用自己的图片做首帧吗?
多数视频模型支持,但需要图片可被平台访问,且你拥有相应授权。具体字段以文档为准。
下一步
先确认站内是否已开通 Seedance 通道,再用最低配置跑一条任务。需要统一入口,可以在中商起航 AI 网关创建 Key,并在模型价格页核对可用模型。
相关阅读:
