API 參考
視頻生成
使用 TENSORAXIS 提交視頻生成任務、輪詢任務狀態,並正確傳遞 Seedance/Doubao 高級參數。
視頻生成是異步任務:先提交任務取得 task_id,再輪詢任務狀態,完成後讀取視頻地址。
對接 Seedance/Doubao 視頻模型時,請使用本站入口字段 prompt、images 和 metadata。不要把火山官方示例中的頂層 content[] 請求體直接發給本站的 /v1/video/generations,否則會因為缺少 prompt 返回 400 prompt is required。
按模型查看專頁
本頁講通用的提交、查詢與輪詢流程。各視頻系列的能力矩陣、入口字段、按能力的示例與參數表,請看對應專頁:
- SeeDance 視頻生成 — 火山方舟 Doubao Seedance(文生 / 圖生 / 首尾幀 / 視頻參考續寫)
- HappyHorse 視頻生成 — 阿里雲百鍊 DashScope(文生 / 圖生 / 參考生 / 視頻編輯)
端點
| 方法 | 路徑 | 用途 | 推薦場景 |
|---|---|---|---|
POST | /v1/video/generations | 提交視頻生成任務 | Seedance/Doubao 通用入口 |
GET | /v1/video/generations/{task_id} | 查詢視頻生成任務 | 查詢同一路徑任務 |
POST | /v1/videos | OpenAI/Sora 風格提交入口 | Sora/OpenAI 客戶端 |
GET | /v1/videos/{task_id} | OpenAI/Sora 風格任務查詢 | Sora/OpenAI 客戶端 |
GET | /v1/videos/{task_id}/content | 代理下載視頻內容 | 讀取已完成視頻 |
新接入 Seedance/Doubao 時,優先使用 /v1/video/generations。
請求體
POST /v1/video/generations
| 字段 | 類型 | 必填 | 說明 |
|---|---|---|---|
model | string | 是 | 要調用的模型名 |
prompt | string | 是 | 視頻提示詞;為空會返回 400 prompt is required |
image | string | 否 | 單張參考圖 URL;服務端會兼容轉換為 images |
images | string[] | 否 | 多張參考圖 URL,用於圖生視頻 |
metadata | object | 否 | 模型或上游特有參數;Seedance/Doubao 高級參數放這裡 |
seconds | string | 否 | 兼容字段;Doubao/Seedance 會把正整數值轉成上游 duration |
duration | integer | 否 | 通用任務字段;Seedance/Doubao 推薦使用 metadata.duration |
size | string | 否 | 部分視頻模型使用的尺寸字段 |
mode | string | 否 | 部分視頻模型使用的模式字段 |
input_reference | string | 否 | OpenAI/Sora 兼容路徑可能使用的輸入引用;Seedance/Doubao 示例不使用 |
正確與錯誤示例
錯誤:把火山官方頂層 content[] 格式直接發給本站入口。
{
"model": "doubao-seedance-2-0-260128",
"content": [
{
"type": "text",
"text": "戴帽子的老爺爺微笑往前走"
}
]
}正確:使用本站入口字段,由 TENSORAXIS 轉換為上游格式。
{
"model": "doubao-seedance-2-0-260128",
"prompt": "戴帽子的老爺爺微笑往前走",
"images": ["https://example.com/reference.jpg"],
"metadata": {
"resolution": "1080p",
"ratio": "16:9",
"duration": 5,
"camera_fixed": true,
"watermark": false
}
}提交任務
curl https://api.tensoraxis.ai/v1/video/generations \
-H "Authorization: Bearer $TENSORAXIS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "doubao-seedance-2-0-260128",
"prompt": "戴帽子的老爺爺微笑往前走",
"images": ["https://example.com/reference.jpg"],
"metadata": {
"resolution": "1080p",
"ratio": "16:9",
"duration": 5,
"camera_fixed": true,
"watermark": false
}
}'提交成功後會返回公開任務 ID。字段可能隨視頻渠道略有差異,但通常包含:
{
"id": "task_xxxxx",
"task_id": "task_xxxxx",
"object": "video",
"model": "doubao-seedance-2-0-260128",
"status": "queued",
"progress": 0,
"created_at": 1760000000
}請保存 id 或 task_id 用於輪詢。
查詢任務
使用通用視頻任務入口提交時,配套查詢:
curl https://api.tensoraxis.ai/v1/video/generations/task_xxxxx \
-H "Authorization: Bearer $TENSORAXIS_API_KEY"通用查詢響應為 task 包裝結構:
{
"code": "success",
"message": "",
"data": {
"task_id": "task_xxxxx",
"status": "SUCCESS",
"progress": "100%",
"result_url": "https://example.com/video.mp4",
"fail_reason": ""
}
}常見狀態含義:
| 狀態 | 說明 |
|---|---|
SUBMITTED / QUEUED | 已提交或排隊中 |
IN_PROGRESS | 生成中 |
SUCCESS | 已完成,讀取 result_url |
FAILURE | 失敗,讀取 fail_reason |
OpenAI/Sora 風格查詢路徑為:
curl https://api.tensoraxis.ai/v1/videos/task_xxxxx \
-H "Authorization: Bearer $TENSORAXIS_API_KEY"該路徑返回 object: "video" 的響應,並在成功時把視頻 URL 同時放在 url、video_url 和 metadata.url 中。
Seedance/Doubao metadata
對 Doubao/Seedance 渠道,TENSORAXIS 會把 prompt、images 和 metadata 轉換為火山方舟內容生成任務格式:
| 本站請求字段 | 轉發到上游 |
|---|---|
prompt | content[].text |
images[] | content[].image_url.url |
seconds | duration |
metadata.resolution | resolution |
metadata.ratio | ratio |
metadata.duration | duration |
metadata.frames | frames |
metadata.seed | seed |
metadata.camera_fixed | camera_fixed |
metadata.watermark | watermark |
metadata.generate_audio | generate_audio |
metadata.draft | draft |
metadata.service_tier | service_tier |
metadata.return_last_frame | return_last_frame |
metadata.execution_expires_after | execution_expires_after |
metadata.callback_url | callback_url |
metadata.tools | tools |
注意事項:
metadata.model會被移除,不能用它覆蓋計費模型。- 未映射到當前 adaptor 結構的
metadata字段通常不會轉發給上游。 metadata.content屬於高級內部兼容字段,可能覆蓋由images生成的內容列表;公開接入不建議使用。- 上游字段的取值範圍、枚舉和實際生效語義,以火山方舟對應模型的官方說明為準。本文只說明 TENSORAXIS 當前代碼會如何接收和轉發字段。
輪詢建議
- 首次提交後等待 2-5 秒再查詢。
- 生成中可每 5-10 秒查詢一次。
- 不要用高頻輪詢代替回調;大批量任務建議在業務側做隊列。
- 遇到
429時降低併發並使用指數退避。