Gemini
Gemini 图像生成与编辑聚合说明
Gemini 图像生成和编辑都通过 Gemini 原生 generateContent 完成。文本提示写入 contents[].parts[].text,参考图写入 parts[].inline_data。
接口路径
| 方法 | 路径 | 用途 |
|---|---|---|
| POST | /v1beta/models/{model}:generateContent | Gemini 图像生成与图像编辑 |
curl -X POST "https://api.routescope.ai/v1beta/models/gpt-4o-mini:generateContent" \ -H "Content-Type: application/json" \ -d '{ "contents": [ { "parts": [ { "text": "写一首四句的中文短诗,主题是城市夜雨。" } ] } ], "generationConfig": { "temperature": 0.7, "maxOutputTokens": 100000 } }'{
"candidates": [],
"usageMetadata": {},
"modelVersion": "string"
}Authorization
BearerAuth
模型 relay 接口鉴权。请求头:Authorization: Bearer 。
In: header
Path Parameters
Gemini 模型名。
Request Body
application/json
输入内容数组,用于承载用户、模型或工具之间的一轮或多轮消息。每个元素是一个 Content 对象,通常包含 role 与 parts:role 表示消息来源,常用 user、model,单轮用户输入可省略;parts 是内容片段数组,可包含 text 文本、inlineData/inline_data Base64 媒体数据(需提供 mime_type 与 data)、functionCall、functionResponse、executableCode 或 codeExecutionResult。适用于文本对话、图片/音频/视频/文档理解、函数调用和多模态生成等场景。数组长度及媒体大小以上游模型和业务配置限制为准。
Gemini 系统指令。
生成配置,例如温度、topK、topP、最大输出长度。
安全策略设置。 safetySettings 列表。范围:数组长度以上游或业务配置为准。
Gemini 工具定义。 工具定义列表。范围:数组长度和 schema 复杂度以上游限制为准。
Response Body
application/json
模型选择表
| 模型 ID | 能力 | 适用场景 |
|---|---|---|
gemini-2.5-flash-image | 图像生成、图像编辑 | 低延迟图像生成、局部修改、图文混合响应和多轮视觉创作。 |
gemini-3.1-flash-image-preview | 图像生成、图像编辑 | Nano Banana 2 高效率图像生成、宽画幅素材和批量创意探索。 |
gemini-3-pro-image-preview | 图像生成、图像编辑 | 专业级图像资产、复杂指令、多轮编辑、文字渲染和高分辨率输出。 |
通用参数
| 字段 | 类型 | 必选 | 说明 |
|---|---|---|---|
contents | array | 是 | Gemini 内容数组。 |
contents[].parts[].text | string | 是 | 生成提示词或编辑指令。 |
contents[].parts[].inline_data | object | 否 | 输入参考图,图像编辑时使用。 |
generationConfig.responseModalities | string[] | 否 | 返回模态,生成图片时建议 ["IMAGE"] 或 ["TEXT","IMAGE"]。 |
generationConfig.imageConfig.aspectRatio | string | 否 | 画幅比例。 |
generationConfig.candidateCount | integer | 否 | 候选数量,建议保持 1。 |
safetySettings | array | 否 | Gemini 安全策略设置。 |
模型差异参数
| 字段 | 适用模型 | 默认值/范围 | 差异说明 |
|---|---|---|---|
contents[].parts[].inline_data.mime_type / data | gemini-2.5-flash-image | 支持 image/png、image/jpeg、image/webp、image/heic、image/heif | 2.5 Flash 的 MIME 和 Base64 字段可拆开理解。 |
contents[].parts[].inline_data | gemini-3.1-flash-image-preview、gemini-3-pro-image-preview | 对象包含 mime_type 与 Base64 data | 3.x 图像模型以 inline_data 对象传入参考图。 |
generationConfig.imageConfig.aspectRatio | gemini-2.5-flash-image、gemini-3-pro-image-preview | 默认 1:1,支持 1:1、3:2、2:3、3:4、4:3、4:5、5:4、9:16、16:9、21:9 | 常规比例集。 |
generationConfig.imageConfig.aspectRatio | gemini-3.1-flash-image-preview | 默认 1:1,支持 1:1、1:4、1:8、2:3、3:2、3:4、4:1、4:3、4:5、5:4、8:1、9:16、16:9、21:9 | 支持更宽/更窄的特殊画幅。 |
generationConfig.imageConfig.imageSize | gemini-3-pro-image-preview | 默认 1K,支持最高 4K,具体以渠道为准 | 仅 Gemini 3 Pro Image 列出。 |
生成示例
curl "https://api.routescope.ai/v1beta/models/gemini-3.1-flash-image-preview:generateContent" \
-H "Authorization: Bearer $ROUTESCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [{ "role": "user", "parts": [{ "text": "生成一张 21:9 的 AI 模型路由横幅,适合技术文档首页" }] }],
"generationConfig": {
"responseModalities": ["IMAGE"],
"imageConfig": { "aspectRatio": "21:9" }
}
}'编辑示例
curl "https://api.routescope.ai/v1beta/models/gemini-2.5-flash-image:generateContent" \
-H "Authorization: Bearer $ROUTESCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{
"role": "user",
"parts": [
{ "text": "把这张图改成扁平插画风格,保留主体构图" },
{
"inline_data": {
"mime_type": "image/png",
"data": "BASE64_IMAGE_DATA"
}
}
]
}
],
"generationConfig": { "responseModalities": ["IMAGE"] }
}'响应结构
Gemini 图像响应为 Gemini 原生结构,图片通常在 candidates[].content.parts[].inlineData 中返回,响应中也可能包含 usageMetadata。不要改写成 OpenAI 风格 data[].url。
业务提示
- 计费倍率按后台模型倍率与渠道倍率配置执行。
- 高分辨率会显著增加延迟和消耗。
- 预览模型可能存在可用性变化,生产环境建议配置备用模型。
最后更新于