Gemini Omni 视频
gemini-omni-flash-preview 经 Interactions 接口同步返回 3-10 秒 720p MP4,按 Token 计费而不是按秒。
gemini-omni-flash-preview 是唯一能出视频的 Gemini 模型。与 HopBase 上其他视频模型都不同,它是同步的:一次请求就在响应体里返回成片,MP4 以 base64 形式给出,没有任务 ID,也不需要轮询。
端点
POST https://api.hop-base.com/v1beta/interactionsPOST /v1/interactions 与 POST /interactions 是等价别名,行为完全一致。
Chat Completions 拿不到视频
把 gemini-omni-flash-preview 发给 /v1/chat/completions 是能调通的,但只会返回回答里的文本部分,视频块会被丢弃。要拿成片就用 Interactions 端点。
请求
只有 model 与 input 是必填。input 可以是纯字符串,也可以是原生的步骤数组;system_instruction、generation_config 等其他原生字段原样透传。
curl https://api.hop-base.com/v1beta/interactions \
-H "Authorization: Bearer sk-your-key" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-omni-flash-preview",
"input": "生成一段 3 秒视频:白色背景上一颗红球缓慢滚动"
}'没有 duration、resolution、fps 这类参数,想要多长直接在提示词里说。
支持文本、图片、视频输入。素材可以用 data 传 base64 并带上 mime_type,也可以用远端 uri。输入视频上限 10 秒——网关不校验这一条,超长由上游拒绝。
输出
| 项目 | 取值 |
|---|---|
| 时长 | 3-10 秒 |
| 分辨率 | 720p |
| 帧率 | 24 FPS |
| 封装 | MP4,以 base64 返回 |
| 上下文窗口 | 1,048,576 Token |
成片在 type 为 model_output 那一步的 steps[].content[] 里:
{
"status": "completed",
"model": "gemini-omni-flash-preview",
"steps": [{
"type": "model_output",
"content": [{ "type": "video", "mime_type": "video/mp4", "data": "<base64-mp4>" }]
}],
"usage": {
"total_input_tokens": 20,
"total_output_tokens": 17819,
"output_tokens_by_modality": [{ "modality": "video", "tokens": 17376 }]
}
}整个 MP4 都在 JSON 响应体里,所以响应会很大,客户端缓冲区要留够。
超时与限制
视频生成慢,而这个端点没有异步模式——Prefer: respond-async 对 Gemini 生图有效,对这里无效。
- 客户端超时要设得足够长,网关对原生端点给到五分钟。
- 经 CDN 转发的请求可能在 100 秒附近被切断。该端点在等待期间不发任何保活流量,所以一次长生成有可能表现为网关超时,而请求本身并没有问题。
- 超时的请求不上报用量,因此不计费。
- HopBase 在这条路径上刻意不重试 504:结果未知就重放,有可能把片子生成两次、也付两次钱。
模型 ID 带 preview,能力与可用性可能随时变更。
分组
Omni 视频由 Gemini 官方直连分组提供,与 Gemini 对话、Gemini 生图是同一个分组、同一把密钥,不需要另买视频套餐。可用性以 GET /v1/models 为准,实际单价见登录后的模型广场。