跳到主要内容
AI
MarkdownLLMs.txt

Grok Imagine 视频生成

更新时间:2026-06-03

本文说明如何在本站调用 Grok Imagine 视频模型。用户只需要使用本站稳定模型名和 OpenAI 兼容视频任务接口。

1. 可用模型

模型适用场景计费口径
grok-imagine文生视频、图生视频、多参考图生视频、视频编辑、视频续写按能力类型、清晰度、输入/输出视频秒数等组件计费;图生视频输入图片不单独加价

新接入统一使用 grok-imagine,用输入形态和 extra_body.operation 表达具体能力。未在本站模型列表中展示的旧模型名不要直接调用。

2. 接口概览

2.1 推荐:OpenAI 兼容视频任务接口

POST /v1/videos
GET /v1/videos/{task_id}
GET /v1/videos/{task_id}/content

POST /v1/videos 提交任务,返回视频任务 ID。客户端轮询 GET /v1/videos/{task_id} 获取状态。任务完成后,可以读取响应里的 URL,也可以通过 /v1/videos/{task_id}/content 代理获取视频文件流。

2.2 兼容:旧视频任务接口

POST /v1/videos/generations
GET /v1/videos/generations/{task_id}

POST /v1/video/generations
GET /v1/video/generations/{task_id}

旧接口仍可用,但新接入推荐 /v1/videos

2.3 认证

Authorization: Bearer sk-***
Content-Type: application/json

3. 快速选型

你想做什么推荐模型关键输入能力标识
根据提示词生成视频grok-imagineprompt + duration自动推断
让一张图片动起来grok-imagineprompt + image + duration自动推断
多张参考图生成视频grok-imagineprompt + images + duration自动推断
编辑已有视频grok-imagineprompt + video + extra_body.operation=edit_video,建议带 extra_body.input_video_secondsedit_video
续写已有视频grok-imagineprompt + video + duration + extra_body.operation=video_extend,建议带 extra_body.input_video_secondsvideo_extend

说明:extra_body.operation 是本站稳定能力提示。输入形态明确时平台会自动推断;视频编辑和续写都传 video,建议显式传 extra_body.operation 消歧。

4. 参数说明

参数类型必填说明
modelstring固定传 grok-imagine
promptstring视频生成、编辑或续写提示词
imagestring/object图生视频必填单张图片 URL;也支持 { "url": "..." }
imagesstring[]多参考图必填多张参考图片 URL
image_url / image_urlsstring/string[]图片输入兼容字段
videostring/object编辑/续写必填源视频 URL;也支持 { "url": "..." }
videosstring[]参考视频 URL 数组,适合参考视频类能力
sizestring清晰度,常用 480p720p;视频续写可能不支持该参数
aspect_ratiostring输出比例;文生视频常用 16:91:19:16,单图生视频可用 auto
durationinteger/string条件必填输出秒数。文生、图生、多参考图和续写使用;视频编辑不要传该字段
secondsstring条件必填OpenAI 兼容秒数字段;未传 duration 时可传 seconds,不要和 duration 同时传
extra_body.operationstring稳定能力提示:text_to_videoimage_to_videoreference_to_videoedit_videovideo_extend
extra_body.input_video_secondsinteger编辑/续写建议传源视频可计费秒数提示,传正整数秒。知道源视频秒数时建议传;未传时平台会探测或使用兜底值

5. 秒数规则

文生、图生、多参考图和续写都要传输出秒数。视频编辑不要传输出秒数。

场景输出秒数字段支持取值输入视频秒数
文生视频durationseconds1-15 的整数秒不需要
单图生视频durationseconds1-15 的整数秒不需要
多参考图生视频durationseconds1-10 的整数秒不需要
视频编辑不传 duration / seconds不适用建议传 extra_body.input_video_seconds
视频续写durationseconds2-10 的整数秒建议传 extra_body.input_video_seconds

说明:

  • 推荐使用 duration,例如 "duration": 6
  • 如果客户端只能使用 OpenAI 兼容字段,可以传 seconds,例如 "seconds": "6"
  • durationseconds 二选一,不要同时传。
  • 视频编辑和续写的 extra_body.input_video_seconds 是源视频秒数提示,不是输出秒数。
  • 如果不确定源视频秒数,可以不传 extra_body.input_video_seconds;平台会探测输入视频时长,并在计费记录里展示秒数来源。
  • 计费最终不会只信任用户传参,而是按任务结算记录中的输入/输出秒数来源结算。

6. 能力标识选择规则

大多数情况下不需要手动传 extra_body.operation

  • 没有图片和视频:文生视频。
  • 有一张 image:图生视频。
  • 有多张 images:参考图生视频。
  • video:建议显式传 edit_videovideo_extend

当你要编辑已有视频:

{
"extra_body": {
"operation": "edit_video",
"input_video_seconds": 8
}
}

当你要续写已有视频:

{
"duration": 6,
"extra_body": {
"operation": "video_extend",
"input_video_seconds": 8
}
}

7. 完整请求示例

7.1 文生视频

curl -X POST "{BASE_URL}/v1/videos" \
-H "Authorization: Bearer sk-***" \
-H "Content-Type: application/json" \
-d '{
"model": "grok-imagine",
"prompt": "电影感手持镜头,一名记者站在暴雪中的时代广场,路人撑伞快速走过,雪花不断打在镜头前,皮肤纹理真实,整体色调克制。",
"size": "720p",
"aspect_ratio": "16:9",
"duration": 6
}'

典型提交响应:

{
"id": "task_xxx",
"task_id": "task_xxx",
"object": "video",
"model": "grok-imagine",
"status": "queued",
"progress": 0,
"created_at": 1773980459,
"seconds": "6"
}

7.2 单图生视频

curl -X POST "{BASE_URL}/v1/videos" \
-H "Authorization: Bearer sk-***" \
-H "Content-Type: application/json" \
-d '{
"model": "grok-imagine",
"prompt": "人物缓慢转头看向镜头,头发随风轻微摆动,电影级布光,镜头有细微推进。",
"image": "https://example.com/portrait.png",
"size": "480p",
"aspect_ratio": "auto",
"duration": 10
}'

7.3 多参考图生视频

curl -X POST "{BASE_URL}/v1/videos" \
-H "Authorization: Bearer sk-***" \
-H "Content-Type: application/json" \
-d '{
"model": "grok-imagine",
"prompt": "让 @Image1 中的人物走进 @Image2 的霓虹街景,保持人物身份一致,镜头缓慢推进。",
"images": [
"https://example.com/person.png",
"https://example.com/street.png"
],
"size": "720p",
"aspect_ratio": "4:3",
"duration": 10
}'

7.4 视频编辑

curl -X POST "{BASE_URL}/v1/videos" \
-H "Authorization: Bearer sk-***" \
-H "Content-Type: application/json" \
-d '{
"model": "grok-imagine",
"prompt": "把这段视频改成电影感动漫风,同时保留原本动作节奏和构图。",
"video": "https://example.com/source.mp4",
"size": "720p",
"extra_body": {
"operation": "edit_video",
"input_video_seconds": 8
}
}'

视频编辑不要传 duration / seconds。如果知道源视频秒数,建议传 extra_body.input_video_seconds,这样预估和日志更清楚;未传时平台会探测或使用兜底值。

7.5 视频续写

curl -X POST "{BASE_URL}/v1/videos" \
-H "Authorization: Bearer sk-***" \
-H "Content-Type: application/json" \
-d '{
"model": "grok-imagine",
"prompt": "延续镜头运动,逐渐露出远处城市天际线,保持原视频色调和运动方向。",
"video": "https://example.com/source.mp4",
"duration": 6,
"extra_body": {
"operation": "video_extend",
"input_video_seconds": 8
}
}'

视频续写的 duration 表示输出续写秒数,支持 2-10 秒。如果知道源视频秒数,建议同时传 extra_body.input_video_seconds

8. 查询任务和获取视频

8.1 查询状态

curl "{BASE_URL}/v1/videos/task_xxx" \
-H "Authorization: Bearer sk-***"

处理中:

{
"id": "task_xxx",
"task_id": "task_xxx",
"object": "video",
"model": "grok-imagine",
"status": "in_progress",
"progress": 45,
"created_at": 1773980459,
"seconds": "6"
}

完成:

{
"id": "task_xxx",
"task_id": "task_xxx",
"object": "video",
"model": "grok-imagine",
"status": "completed",
"progress": 100,
"created_at": 1773980459,
"completed_at": 1773980519,
"seconds": "6",
"size": "720p",
"metadata": {
"url": "https://example.com/result.mp4"
}
}

失败:

{
"id": "task_xxx",
"object": "video",
"model": "grok-imagine",
"status": "failed",
"progress": 100,
"created_at": 1773980459,
"error": {
"code": "task_failed",
"message": "request rejected"
}
}

建议客户端每 2-5 秒轮询一次,直到 statuscompletedfailed

8.2 代理获取视频文件

curl "{BASE_URL}/v1/videos/task_xxx/content" \
-H "Authorization: Bearer sk-***" \
-o result.mp4

该接口返回 video/mp4 文件流。也可以直接使用查询响应中的 metadata.url

9. 计费说明

Grok 视频在本站使用组件式计费,公开价格以模型广场展示为准。

场景主要计费项
文生视频清晰度档、输出视频秒数
单图生视频清晰度档、输出视频秒数
多参考图生视频清晰度档、输出视频秒数
视频编辑清晰度档、输入视频秒数、输出视频秒数
视频续写输入视频秒数、输出视频秒数

公开展示会显示“按实际参数计算”和组件单价,例如:

  • 输入视频:按秒
  • 输出视频 480P:按秒
  • 输出视频 720P:按秒

图生视频和多参考图生视频中的输入图片数量可能出现在结算 facts 里,但第一版 Grok 视频规则不应把它配置成单独收费组件。

提交时可能有预扣。预扣用于任务提交阶段的余额锁定,不是把某个最大值当成单次公开售价。

10. 常见错误

把视频模型发到图片接口

grok-imagine 应调用 /v1/videos,不要发到 /v1/images/generations

编辑和续写都只传了 video

这会产生歧义。编辑传: