通义千问
HappyHorse 图生视频:以 1 张首帧图片 为基础,可选文本描述引导,生成物理真实、运动流畅的视频。输出宽高比自动跟随首帧,不支持 ratio 参数。通过 POST /v1/chat 提交异步任务,凭 job_id 调用 GET /v1/video-task/{job_id} 轮询(建议约 15 秒)。
首帧图(extra,必选)
| 字段 | 说明 |
|---|---|
extra.media |
推荐。[{"type":"first_frame","url":"..."}],有且仅有 1 张。 |
extra.first_frame_url |
或传首帧图片公网 URL(与 media 二选一)。 |
attachments |
站内对话页上传 1 张图片,网关写入 media。 |
图片:JPEG/JPG/PNG/WEBP,≤20MB,宽高不小于 300px,宽高比 1:2.5~2.5:1;支持公网 URL 或 Base64。
提示词(messages,可选)
视频参数(extra.parameters 或 extra 根级)
| 字段 | 说明 |
|---|---|
resolution |
720P / 1080P(默认 1080P),控制清晰度档位与计费单价。 |
duration |
3~15 秒,默认 5 |
watermark |
“Happy Horse” 水印,默认 true |
seed |
可选 0~2147483647 |
图生视频不支持 ratio;宽高比由首帧图决定。
售价(元/秒)
| 分辨率 | 单价 |
|---|---|
| 720P 标清 | 1.13 元/秒 |
| 1080P 高清 | 2 元/秒 |
扣费 = usage.duration(秒)× 分辨率单价;usage.SR 可辅助识别档位。
任务与结果
job_id;轮询至 SUCCEEDED 后取 task.video_url。task_id 查询有效期 24 小时。左侧为章节切换,右侧为对应内容。
| 字段名 | 类型 | 必填 | 说明 |
|---|---|---|---|
Authorization |
string | 是 | Bearer 令牌,格式为 Bearer {应用ID}-{应用密钥}(仅在第一个 - 处分割,密钥本身可含连字符)。应用 ID 与密钥在会员中心「我的应用」获取。兼容 OpenAI SDK:将 {应用ID}-{应用密钥} 作为 api_key 传入即可自动携带本请求头。 |
对接 HTTP 接口请使用上表 Authorization: Bearer {应用ID}-{应用密钥};兼容 OpenAI SDK(将 {应用ID}-{应用密钥} 作为 api_key)。站内网页另有 Cookie 兼容方式,不在此列出。
非流式与流式使用同一请求体结构;流式请使用 …/v1/chat/stream 路径。
多轮与上下文:接口按当次请求里的 messages 处理对话,不会替你「记住」上一轮正文。续聊须由客户端在 body 中组装完整历史(含此前的 user / assistant 等)。
| 字段名 | 类型 | 必填 | 说明 |
|---|---|---|---|
model_id |
int | 是 | 模型主键;本页文档对应 `model_id=24`。 |
messages |
array | 是 | 消息对象数组(见 messages[])。至少一条;多轮时须在数组内按顺序包含完整历史(user/assistant/system 等)。按本次列表处理对话,不自动补全缺省轮次。 |
temperature |
number | 否 | 采样温度,默认 0.7;是否生效取决于具体模型。 |
max_tokens |
int 或 null | 否 | 生成长度上限(token);null 表示使用默认。 |
stream |
bool | 否 | 请求体字段,默认 false。**是否流式由 URL 决定**:流式请 POST `/v1/chat/stream`;`/v1/chat` 为非流式。勿仅靠本字段切换 SSE。 |
attachments |
array | 否 | 附件数组,默认 [](见 attachments[])。服务端会把附件整理为模型可识别的上下文(如追加 system 说明 URL 列表)。 |
extra |
object | 否 | 任意 JSON 对象,默认 {}。模型专有参数放于此(如数字人 image_url/audio_url/parameters;文生图/视频类 prompt、尺寸等)。服务端可能合并内部保留字段;请勿使用以下划线 `_` 开头的键名作为业务自定义字段。 |
数组顺序即对话顺序;多轮时把历史轮次一并列入本数组即可。
| 字段名 | 类型 | 必填 | 说明 |
|---|---|---|---|
role |
string | 是 | 角色:如 user、assistant、system 等,与 OpenAI Chat Completions 约定一致。 |
content |
string | 是 | 该轮文本内容。多轮时 assistant 一般为上一轮模型输出,由客户端保存后在后续请求的 messages 中写回。 |
images |
array 或 null | 否 | 历史消息中的多模态图片结构,会话回放用;元素为对象,字段因模型而异。 |
audios |
array 或 null | 否 | 历史消息中的音频结构,会话回放用。 |
| 字段名 | 类型 | 必填 | 说明 |
|---|---|---|---|
url |
string | 是 | 附件可访问 URL(须能被服务端拉取)。 |
filename |
string 或 null | 否 | 原始文件名,便于展示或日志。 |
mime |
string 或 null | 否 | MIME 类型,如 image/png。 |
extra |
object | 否 | 附件级扩展信息,默认 {}。 |
**1 张首帧图** + 可选 **prompt**。`extra.media` 须含 1 项 `type:first_frame`;或 `extra.first_frame_url`。参数:**`resolution`**、**`duration`**(3~15)、**`watermark`**(默认 true)、**`seed`**;**不支持 `ratio`**。异步 **`GET /v1/video-task/{job_id}`**;计费 = **`usage.duration`(秒)** × 分辨率单价(720P **1.13**、1080P **2** 元/秒)。
下列说明与下方「调用示例」JSON 对齐,由本站配置维护。
| 字段名 | 类型 | 必填 | 说明 |
|---|---|---|---|
model_id |
int | 是 | 须为 `24`。 |
messages[].content |
string | 否 | 可选,描述视频动作与内容。 |
extra.media |
array | 条件 | 1 个 `{"type":"first_frame","url":"..."}`。 |
extra.first_frame_url |
string | 条件 | 首帧图公网 URL(与 media 二选一)。 |
extra.parameters.resolution |
string | 否 | `720P` / `1080P`;默认 `1080P`。 |
extra.parameters.duration |
int | 否 | 3~15 秒,默认 5。 |
extra.parameters.watermark |
bool | 否 | 默认 true(Happy Horse 水印)。 |
extra.parameters.seed |
int | 否 | 随机种子 **0~2147483647**;留空由系统随机。 |