1. Seedance 完整模型价格总表
Seedance 系列是由字节跳动最新研发并在火山方舟开放的高品质视频生成大模型。词元AI中转站完成了底层算力池调度封装,提供稳定、高并发的中转接口:
| 模型规格 | 中转模型 ID | 支持时长 | 成功请求单价 | 业务适用场景 |
|---|---|---|---|---|
| Seedance 2.0 Fast | seedance2.0fast |
10 秒 | ¥1.50 / 条 | 分镜草稿筛选、低成本批量测款、社交媒体短平快内容 |
| Seedance 2.5 (15s) | seedance2.5 |
15 秒 | ¥2.50 / 条 | 电商商品展示、单动作特写、出海广告主镜头 |
| Seedance 2.5 (30s) | seedance2.5 |
30 秒 | ¥3.50 / 条 | 连贯多阶段长叙事、风景航拍、免剪辑品牌故事片 |
注意:Seedance 严格按“成功生成的任务条数”计费,无法将 30 秒任务除以 2 拆为两条 15 秒扣费,也无法将单条任务按真实渲染秒数折算。计费终态由中转系统与上游方舟集群异步对账确定。
2. 火山方舟官方协议与中转映射
火山方舟(Volcengine Ark)原生接口路径通常为 /api/v3/contents/generations/tasks,而词元AI中转站为了降低企业接入成本,统一对齐 OpenAI 兼容视频标准,并保持核心 Payload 结构兼容:
(1) 任务创建请求 (POST /v1/videos/generations)
POST https://api.gpt345.com/v1/videos/generations
Authorization: Bearer sk-your-gpt345-key
Content-Type: application/json
X-Idempotency-Key: your-unique-order-id-20260916
{
"model": "seedance2.5",
"content": [
{
"type": "text",
"text": "4K 商业产品摄影:一瓶高档透明玻璃香水瓶置于清澈波纹水面,阳光折射出彩虹光晕,缓慢环绕特写,15 秒无剪辑运镜"
},
{
"type": "image_url",
"image_url": {
"url": "https://your-domain.com/sample-product.png"
}
}
],
"duration": 15
}
(2) 任务创建即时响应 (HTTP 200)
提交成功后,接口会毫秒级返回任务 ID。注意此时视频并未生成完成,不可直接向最终用户交付:
{
"id": "cgt-seedance-88942b08-6f11-4a3e-9081",
"model": "seedance2.5",
"status": "queued",
"created_at": 1789540000
}
(3) 异步轮询与终态查询 (GET /v1/videos/generations/{task_id})
系统返回的状态枚举分为中间态与终态:
queued:排队中,尚未分配物理 GPU 节点,不扣费;running:渲染中,扩散模型正在逆向去噪采样,不扣费;succeeded:任务圆满成功,此时正式扣费并返回video_url;failed/cancelled:任务异常或人工取消,账单流水计 0 元。
{
"id": "cgt-seedance-88942b08-6f11-4a3e-9081",
"model": "seedance2.5",
"status": "succeeded",
"content": {
"video_url": "https://cdn.gpt345.com/outputs/seedance/2026/09/cgt-seedance-88942.mp4?expires=1789626400&sig=abcdef"
},
"usage": {
"completion_tokens": 0,
"total_cost_cny": 2.50
}
}
3. 401 探针与权限拦截机制
POST /v1/videos/generations 将收到精确的 HTTP 401 拦截,返回体为 API_KEY_REQUIRED。这一机制确保了昂贵的视频算力不会被未授权爬虫盗刷。同时,探针记录显示:GET /v1/models 同样受到严格的安全防护。只有完成白名单开通的 API Key 才能调用 Seedance 算力集群。
4. 失败 0 元与防超扣边界规则
在视频生成工程中,很多开发者因误解底层计费边界,造成资金损失。以下是必须牢记的四条扣费铁律:
- 失败绝对不扣费:上游集群如因显存 OOM、违规词拦截或节点崩溃返回
status: failed,系统自动冲销预扣流水,实收 ¥0.00。 - 客户端超时不可盲目重发 POST:网关提交通常 1~3 秒完成。若客户端网络卡顿抛出
ReadTimeout,上游实际上可能已经成功创建任务。若直接发起第二次 POST,系统将创建两个任务,在两者均渲染完成后产生两笔扣费。 - 下载断流与生成计费无关:任务返回
succeeded后扣费即已确定。若由于你本地带宽原因下载.mp4失败,只需使用原有video_url重新下载,切勿盲目新建任务。 - 幂等键(Idempotency Key)强制约束:在请求 Header 中传入业务订单号
X-Idempotency-Key,即使网络抖动触发重复提交,中转系统也会返回同一个 Task ID。
5. 企业级 Python 高并发异步对账状态机
以下代码是可以直接部署在 Celery / RQ 生产流水线中的完整封装,包含任务提交、幂等保障、指数退避轮询与对账明细导出:
import os
import time
import uuid
import requests
from typing import Dict, Any, Optional
class SeedanceEnterpriseGateway:
PRICING_MAP = {
"seedance2.0fast": 1.50,
"seedance2.5-15": 2.50,
"seedance2.5-30": 3.50,
}
def __init__(self, api_key: str, base_url: str = "https://api.gpt345.com/v1"):
self.api_key = api_key
self.base_url = base_url.rstrip("/")
self.headers = {
"Authorization": f"Bearer {self.api_key}",
"Content-Type": "application/json"
}
def create_generation_job(self, prompt: str, duration: int = 15, is_fast: bool = False, image_url: Optional[str] = None, order_id: Optional[str] = None) -> Dict[str, Any]:
"""创建生成任务,返回任务元数据并记录预期扣费"""
if is_fast:
model_id = "seedance2.0fast"
expected_cost = self.PRICING_MAP["seedance2.0fast"]
actual_duration = 10
else:
model_id = "seedance2.5"
if duration not in (15, 30):
raise ValueError("Seedance 2.5 仅支持 15 秒或 30 秒")
actual_duration = duration
expected_cost = self.PRICING_MAP[f"seedance2.5-{duration}"]
content_payload = [{"type": "text", "text": prompt}]
if image_url:
content_payload.append({"type": "image_url", "image_url": {"url": image_url}})
body = {
"model": model_id,
"content": content_payload,
"duration": actual_duration
}
req_headers = dict(self.headers)
order_key = order_id or f"SEEDANCE_{int(time.time())}_{uuid.uuid4().hex[:8]}"
req_headers["X-Idempotency-Key"] = order_key
url = f"{self.base_url}/videos/generations"
resp = requests.post(url, json=body, headers=req_headers, timeout=20)
if resp.status_code == 401:
raise PermissionError("HTTP 401 权限不足:请联系微信 GPT774 开通 Seedance 白名单")
elif resp.status_code != 200:
raise RuntimeError(f"创建失败 [{resp.status_code}]: {resp.text}")
res_json = resp.json()
task_id = res_json.get("id")
return {
"order_id": order_key,
"task_id": task_id,
"model": model_id,
"duration": actual_duration,
"expected_cost": expected_cost,
"submitted_at": time.time()
}
def track_until_completed(self, task_id: str, timeout_sec: int = 360) -> Dict[str, Any]:
"""指数退避跟踪任务,输出最终对账信息"""
poll_url = f"{self.base_url}/videos/generations/{task_id}"
start_t = time.time()
sleep_interval = 4.0
while time.time() - start_t < timeout_sec:
resp = requests.get(poll_url, headers=self.headers, timeout=10)
if resp.status_code == 200:
data = resp.json()
status = data.get("status")
if status == "succeeded":
video_url = data.get("content", {}).get("video_url")
return {
"status": "succeeded",
"video_url": video_url,
"duration_used": int(time.time() - start_t),
"billed": True
}
elif status in ("failed", "cancelled"):
return {
"status": status,
"error": data.get("error", "Generation aborted"),
"billed": False # 明确标记未扣费
}
# queued 或 running
time.sleep(sleep_interval)
sleep_interval = min(sleep_interval * 1.2, 10.0)
elif resp.status_code == 429:
time.sleep(12)
else:
time.sleep(5)
raise TimeoutError(f"Task {task_id} 轮询超过 {timeout_sec} 秒")
# 生产执行验证
if __name__ == "__main__":
gateway = SeedanceEnterpriseGateway(api_key=os.getenv("GPT345_API_KEY", "sk-placeholder"))
try:
# 发起 15 秒高清商品展示生成
job = gateway.create_generation_job(
prompt="极简磨砂保温杯,微距慢动作环绕运镜,蒸汽升腾,4K 影视打光",
duration=15
)
print(f"[*] 任务已录入数据库,Order: {job['order_id']}, Task: {job['task_id']}")
# 轮询终态
result = gateway.track_until_completed(job['task_id'], timeout_sec=240)
print(f"[✓] 任务结算终态: {result['status']}, 扣费状态: {result['billed']}")
if result['status'] == 'succeeded':
print(f"[✓] 成片下载地址: {result['video_url']}")
except PermissionError as pe:
print(f"[拦截提示] {pe}")
except Exception as e:
print(f"[异常] {e}")
6. 三个可复核的财务对账算例
我们用三个具有代表性的企业实际月度流水,说明本站控制台对账逻辑:
- 算例 A(自媒体矩阵测款,20 条 Fast 10秒全成片):
20 条 × ¥1.50 = ¥30.00。全部用于社交媒体短平快曝光,耗时短,成本极低。 - 算例 B(跨境独立站出海,12 条 15秒商品主图视频全通过):
12 条 × ¥2.50 = ¥30.00。每条包含 15 秒商品材质与旋转特写,直接用于 Shopify 首页展示。 - 算例 C(高并发压力生成,10 条 30秒长镜头,8 条成功、2 条失败):
8 条成功 × ¥3.50 = ¥28.00;2 条失败 × ¥0.00 = ¥0.00;合计扣除 ¥28.00。
若开发人员重试那 2 条失败任务并最终成功,流水将追加 2 × ¥3.50 = ¥7.00,最终实扣 ¥35.00。
7. 固定请求与按秒计费模型协同
在全链路 AI 视频工作流中,Seedance 并不是唯一的选择。词元AI中转站同时聚合了按秒计费的多模态模型:
如需按实际出片秒数极其灵活地计费,可选用 Grok Imagine Video 与 Gemini 3.1 视频网关(¥0.05/秒)。按秒计费模型适合 3~6 秒极短过渡镜头的自动化剪辑;而 Seedance 2.5 则在 15 秒与 30 秒长序列物理连贯性上具有压倒性优势。二者结合,可将整体视频产出成本优化 35% 以上。
关于秒级计费与单条计费的深度对比,请阅读 2026 AI 视频 API 价格完全测算 与 主流 AI 视频中转实测横评。
8. 开发者常见问题解答
Q1: Seedance API 可以在线调试吗?
可以。添加客服微信 GPT774 开通账号后,可在控制台的模型调试面板或直接通过 Postman / cURL 发送测试指令。
Q2: 为什么有些任务排队(queued)长达 2 分钟?
Seedance 属于算力密集型任务,当遇到全网流量高峰或大促节点时,GPU 算力池会进行动态排队。排队期间不产生扣费。若业务有严苛的响应延迟要求,可联系客服配置专属 VIP 算力切片。
Q3: 可以通过 API 传入多张图片进行前后帧控制吗?
支持。在 content 数组中可按顺序添加多张带有 type: image_url 的图片对象,Seedance-2.5 将自动识别首尾参考图进行插帧与动作驱动。
Q4: 任务生成的 video_url 有效期是多久?
预签名链接有效期通常为 24 小时。生产环境建议在监听到 status: succeeded 后,立即在后台将其转存至自建阿里云 OSS 或腾讯云 COS 对象存储,以保证持久商用。