Skip to main content
POST
生成图片(Gemini 原生,非流式)
使用 Gemini 原生 generateContent 请求和响应结构生成图片。在图片模型中,此端点仅供 Google/Gemini 图片模型使用;Seedream、GPT Image 等其他图片模型请使用 OpenAI 图片生成接口 或各自的专用接口。Gemini 聊天模型的原生调用不属于本图片接口文档的范围。

功能特性

  • 使用 Gemini 原生 generateContent 协议生成图片,不使用 OpenAI Images 的请求或响应结构
  • 支持文生图、单图编辑、多图参考合成和多轮继续编辑
  • 可通过 generationConfig.imageConfig 指定模型支持的宽高比与输出档位
  • 在 candidates[].content.parts[] 中接收文本及 Base64 图片;流式输出请使用流式接口

认证方式

POST https://api.hairoute.ai/v1/models/{model}:generateContent 将 {model} 替换为你在 模型列表 中可用的 Google/Gemini 图片模型名;请求体中不传 model。使用 HaiRoute API Key,在请求头中传 x-goog-api-key: YOUR_API_KEY,也可用 Authorization: Bearer YOUR_API_KEY。请勿将 Google API Key 用作 HaiRoute Key。

支持的图片模型

此端点仅用于 Google/Gemini 图片模型。

快速示例

生成成功后,图片在 candidates[].content.parts[].inlineData 中,以 mimeType 和 Base64 编码的 data 返回;文本(如有)位于同一 parts 数组的 text 字段。下方示例中的 Base64 仅为占位,不是实际图片:
将 inlineData.data 解码为图片字节后,按照 mimeType 保存文件。响应不会变成 OpenAI Images 的 data[].url 结构;用量、候选内容及可选字段会随模型和实际请求变化。

关键参数

这里使用原生 generationConfig.imageConfig,不是 OpenAI Images 的 size、quality、response_format 参数;不同模型的可用宽高比和档位以模型配置为准。

生成方式

以下示例只展示请求体;四种方式都使用本页同一个端点与认证方式,不需要新增 mode 参数。图片 Base64 均为占位符,需替换为真实图片的纯 Base64 数据。

文生图

只传文本提示词,不传输入图片;可直接使用上面的快速示例。局部修改、风格转换等是提示词要求,不是独立的接口参数。

单图编辑

在同一条 user 消息中传入一张图片和编辑指令。下面是更换背景的例子;也可以在文本中要求保留主体、修改局部元素或调整风格。

多图参考合成

将多张参考图放入同一条 user 消息的 parts,用文本说明各图的用途。图片数量、尺寸及实际效果取决于所选模型和渠道的限制。

多轮继续编辑

把前一轮的 user 请求、实际返回的 candidates[0].content(作为 model 消息)和本轮的新指令依次放进 contents。下面仅示意结构:
实际调用时不要手写或裁剪上一轮的 model 内容;请原样回传上一轮的 candidates[0].content,包括图片、文本及 thoughtSignature(如果返回)。多轮编辑和多图参考的效果取决于所选图片模型。

常见错误排查

先检查 HTTP 状态及返回体中的 error。不要在日志或求助信息中贴出 API Key、完整图片 Base64。

下一步

请求头

x-goog-api-key
string
必填

HaiRoute API Key。此处展示原生请求头;也可改用 Authorization: Bearer YOUR_API_KEY 认证(二选一)。

路径参数

model
string
必填

HaiRoute 可用的 Google/Gemini 图片模型名称

请求体

application/json
contents
object[]
必填

必填。Gemini 原生消息;文生图使用 user 消息及 text part,图生图可加入 inlineData part。

Minimum array length: 1
systemInstruction
object
generationConfig
object

Gemini 原生生成配置;具体能力由所选图片模型决定。

响应

Gemini 原生 GenerateContentResponse,图片位于 candidates[].content.parts[].inlineData。

Gemini 原生 GenerateContentResponse,图片位于 candidates[].content.parts[].inlineData。

candidates
object[]
usageMetadata
object
modelVersion
string
responseId
string