返回博客

阿里云百炼图生视频:Token Plan 根本调不了,必须换通用 key + DashScope 异步接口

某个 AI 视频生成项目里,出图阶段已经用阿里云百炼的 Token Plan(团队版 Coding Plan,sk-sp-… 格式 key,host 指向 token-plan.cn-beijing.maas.aliyuncs.com)跑通了。下一步要加图生视频(i2v),直觉是沿用同一把 key——毕竟同属百炼平台,省事。结果不管怎么调,要么报「模型不存在」,要么报「当前用户不支持此调用」,折腾半天才搞清楚:出图和视频根本是两套 provider,key、host、调用形态三者全不一样。

现象

在 Token Plan host 上用出图 key 调视频生成端点,返回:

  • model not found 或类似「模型不在支持列表」
  • 换成 DashScope host 但仍用 Token Plan key → 提交时报 current user api does not support synchronous calls(视频必须走异步,这里是 key 权限问题,不是姿势问题)

根因

Token Plan 团队版的「支持的模型」是一份精确字符串白名单:逐字符匹配、无版本兼容推理。这份白名单只包含文本生成和图像生成模型(如 qwen3wan2.7-imagedeepseek 等),没有任何视频模型。Token Plan 的使用细则还明确写明「不可用于自动化脚本或应用后端」,违规可能封 key。

也就是说,Token Plan key 在设计上就不是给视频生成用的,不是调用姿势不对,而是这把 key 压根没开视频权限。

坑:Token Plan key 不支持任何视频模型

sk-sp-… 格式的 Token Plan / Coding Plan key,加上 token-plan.maas host,白名单里没有一个视频模型。用它调图生视频(i2v/t2v)必然失败,换模型名称也没用。另外 Token Plan 禁止用于应用后端,出图如果也在后端跑要注意合规风险。

正解

视频生成必须用通用百炼 DashScope key,与出图那把 key 完全独立,两套 provider 并存:

| | 出图(Token Plan) | 视频(通用百炼) | |---|---|---| | Key 格式 | sk-sp-… | sk- + ~32位(不含 sp) | | Host | token-plan.cn-beijing.maas.aliyuncs.com | dashscope.aliyuncs.com | | 调用形态 | 同步(OpenAI 兼容) | 异步(创建任务 → 轮询) |

通用 key 在百炼控制台 → API-Key 页单独申请。

创建视频任务(以 HappyHorse-1.0-I2V 为例):

POST https://dashscope.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis
Authorization: Bearer sk-xxx
Content-Type: application/json
X-DashScope-Async: enable
{
  "model": "happyhorse-1.0-i2v",
  "input": {
    "prompt": "运镜/动作描述",
    "media": [{ "type": "first_frame", "url": "data:image/png;base64,<...>" }]
  },
  "parameters": { "resolution": "720P", "duration": 3, "watermark": false }
}

注意 X-DashScope-Async: enable 这个请求头是必须的,缺了就报「不支持同步调用」。

轮询取结果(约 15s 一次):

GET https://dashscope.aliyuncs.com/api/v1/tasks/{task_id}
Authorization: Bearer sk-xxx

output.task_statusPENDING → RUNNING → SUCCEEDED。SUCCEEDED 时 output.video_url 是 mp4 的 OSS 临时链接,只有 24 小时有效,拿到立刻下载落盘。task_id 本身查询有效期也是 24h。

正解:双 key + 双 host,视频走 DashScope 异步

app 里 settings 若只有一个 apiKey + 一个 baseURL,要扩成双槽:一个给出图(Token Plan),一个给视频(通用百炼)。本地存 key 文件时别在 key 前加中文标签(如「视频 key: sk-…」),否则整行含标签被当成 key 传出去,调用全坏。

附:三种图生视频范式选型

同属通用百炼,视频模型本身还有三种范式,根据场景选:

| 范式 | model | 适用 | |---|---|---| | 首帧 i2v | happyhorse-1.0-i2v | 静态/微动镜头,头尾构图接近 | | 首尾帧 i2v | wan2.7-i2v-2026-04-25 | 需要忠实复刻运镜/形变(首选) | | 参考图生视频 r2v | happyhorse-1.0-r2v | 多主体融合,允许模型自由重排 |

首尾帧范式可以锚定起止两帧的构图,中间运动轨迹靠 prompt 指挥。实测:prompt 只写笼统描述会让运动方向出错,必须逐元素 + 物理约束(如 WATER falls DOWNWARD only / NEVER upward)才能压住不同子元素的相反方向运动。

一句话外卖

百炼出图和视频是两个 provider——不同 key、不同 host、同步 vs 异步——看到「模型不支持」先查 key 类型,不要在调用姿势上反复折腾。