通用异步内容生成任务
| 方法 | 路径 | 用途 |
|---|---|---|
POST | /v1/content_generation/tasks | 创建通用异步内容生成任务(图像 / 视频等) |
GET | /v1/content_generation/tasks/{task_id} | 轮询通用内容生成任务状态与结果 |
DELETE | /v1/content_generation/tasks/{task_id} | 取消未完成的任务并退回预扣(取决于上游是否支持,见Seedance 视频入站协议的「取消任务」) |
/v1/content_generation/tasks 是比标准 OpenAI 视频流更通用的异步任务入口,覆盖图像、视频等需要后台任务执行的生成能力。
创建任务
请求体遵循对应上游的通用生成格式,至少需要 model:
bash
curl https://api.modelgo.com/v1/content_generation/tasks \
-H "Authorization: Bearer $MODELGO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"doubao-seedance-2.0-mini","content":[{"type":"text","text":"a red apple on a table"}]}'2026-09-10 国内生产:创建返回 status=queued、id 形如 gw_…;轮询同一 id 最终为 succeeded,并带 resolution=720p、ratio=16:9、duration=5。同一模型打 POST /v1/video/generations 为 model_protocol_not_offered。DELETE 取消在该上游上返回 provider_unsupported。
轮询任务
bash
curl https://api.modelgo.com/v1/content_generation/tasks/task_123 \
-H "Authorization: Bearer $MODELGO_API_KEY"创建与轮询都返回同一种 Ark 形态的任务对象,不随实际承接的上游变化:
json
{
"id": "task_123",
"model": "<model>",
"status": "succeeded",
"created_at": 1756600000,
"updated_at": 1756600120,
"content": { "video_url": "https://.../video.mp4" },
"usage": { "completion_tokens": 123, "total_tokens": 123 },
"error": null,
"resolution": "1080p",
"ratio": "16:9",
"duration": 5
}status 取值为 queued / running / succeeded / failed;id 是网关任务 ID,轮询与取消都只认它。
三种拼法,同一条流水线
同一条托管异步流水线有三个入站拼写,选哪个只取决于你想按谁的报文风格写客户端:
| 入口 | 请求体 | 响应体 |
|---|---|---|
/v1/content_generation/tasks | 通用生成格式 | Ark 任务对象(上表) |
/ark/api/v3/contents/generations/tasks | Ark 内容生成原生体 | Ark 任务对象 |
/minimax/v2/video_generation | MiniMax 视频生成 V2 原生体 | MiniMax 形态({"task_id"} / {"task":{…}}) |
三者的计费、任务落库、产物持久化与预扣/结算行为完全一致。
适用场景
- 你要调用的平台能力本身是异步任务,但不走 OpenAI Video 标准形态
- 你希望统一使用平台托管的「创建任务 → 轮询结果」模型,而不是自行管理厂商原生协议
- 你调用的是即梦等仅提供托管异步入口的视频模型
关键约定
model仍填写平台逻辑模型名,由平台决定最终路由到哪个上游实现。- 请求体字段取决于路由到的具体能力;响应形态则是固定的,见上文。
- 如果你不想自己处理厂商侧的多种原生轮询协议,优先使用这一入口。
如需标准 OpenAI 视频协议,见OpenAI 兼容视频流。