Google Gemini · POST /v1beta/models/{model}:generateContent / POST /v1/chat/completions · 文生图 / 图生图
POST/v1beta/models/:model:generateContent
基本信息
- Base URL:
https://api.dshub.top - 原生端点:
POST /v1beta/models/{model}:generateContent - OpenAI 兼容端点:
POST /v1/chat/completions - Content-Type:
application/json - 用途:Google Gemini 图片模型的文生图和图生图。标题中已经写明两种真实请求路径。
路径总览
| 格式 | 场景 | 请求路径 | 主要参数位置 |
|---|---|---|---|
| Gemini 原生格式 | 文生图 | POST /v1beta/models/{model}:generateContent | contents[].parts[].text |
| Gemini 原生格式 | 图生图 | POST /v1beta/models/{model}:generateContent | contents[].parts[].text + inline_data / inlineData / fileData |
| OpenAI 兼容格式 | 文生图 | POST /v1/chat/completions | messages[].content + extra_body.google.image_config |
| OpenAI 兼容格式 | 图生图 | POST /v1/chat/completions | messages[].content[] 的 text 和 image_url |
可用模型
gemini-3-pro-image-previewgemini-3.1-flash-image-preview
Gemini 原生格式
文生图
路径使用 POST /v1beta/models/{model}:generateContent。把模型名放在路径的 {model} 中,正文用 contents[].parts[].text 写提示词。
图生图
仍然使用 POST /v1beta/models/{model}:generateContent。在同一个 parts 数组里同时放提示词和参考图:
inline_data.mime_type/inline_data.data:snake_case 写法。inlineData.mimeType/inlineData.data:camelCase 写法。fileData.fileUri:文件 URI 写法。
原生图片参数
generationConfig.responseModalities:图片生成必须包含IMAGE,需要文字说明时可同时传TEXT。generationConfig.imageConfig.aspectRatio:宽高比,例如1:1、16:9、9:16。generationConfig.imageConfig.imageSize:清晰度,例如1K、2K、4K。部分模型支持512/0.5K。
OpenAI 兼容格式
Gemini 生图兼容路径
路径使用 POST /v1/chat/completions,模型写在 body 的 model 字段中。图片参数放在:
extra_body.google.image_config.aspect_ratio
extra_body.google.image_config.image_size
兼容路径必须使用 snake_case。不要写 imageConfig、aspectRatio、imageSize,这些 camelCase 只用于 Gemini 原生格式。
cURL:Gemini 原生文生图
curl --location --request POST 'https://api.dshub.top/v1beta/models/gemini-3-pro-image-preview:generateContent' \
--header 'Authorization: Bearer sk-xxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"contents": [
{
"role": "user",
"parts": [
{
"text": "生成一张现代办公桌上的银色耳机产品海报,干净白底,柔和棚拍光"
}
]
}
],
"generationConfig": {
"responseModalities": ["IMAGE"],
"imageConfig": {
"aspectRatio": "16:9",
"imageSize": "2K"
}
}
}'
cURL:Gemini 原生图生图
curl --location --request POST 'https://api.dshub.top/v1beta/models/gemini-3-pro-image-preview:generateContent' \
--header 'Authorization: Bearer sk-xxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"contents": [
{
"role": "user",
"parts": [
{
"text": "基于参考图生成一张更适合电商首页的产品图,保留主体结构"
},
{
"inline_data": {
"mime_type": "image/png",
"data": "{{BASE64_IMAGE}}"
}
}
]
}
],
"generationConfig": {
"responseModalities": ["IMAGE"],
"imageConfig": {
"aspectRatio": "1:1",
"imageSize": "2K"
}
}
}'
cURL:OpenAI 兼容文生图
curl --location --request POST 'https://api.dshub.top/v1/chat/completions' \
--header 'Authorization: Bearer sk-xxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"model": "gemini-3-pro-image-preview",
"messages": [
{
"role": "user",
"content": "生成一张现代办公桌上的银色耳机产品海报,干净白底,柔和棚拍光"
}
],
"extra_body": {
"google": {
"image_config": {
"aspect_ratio": "16:9",
"image_size": "2K"
}
}
}
}'
cURL:OpenAI 兼容图生图
curl --location --request POST 'https://api.dshub.top/v1/chat/completions' \
--header 'Authorization: Bearer sk-xxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"model": "gemini-3.1-flash-image-preview",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "把参考图改成高级电商主图,保留商品结构,白底柔光"
},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/product.png"
}
}
]
}
],
"extra_body": {
"google": {
"image_config": {
"aspect_ratio": "1:1",
"image_size": "2K"
}
}
}
}'
返回说明
- 原生 Gemini 响应:图片通常在
candidates[].content.parts[].inlineData.data中,文字说明在parts[].text中。 - OpenAI 兼容响应:按 Chat Completions 兼容响应返回,图片内容可能出现在消息内容或上游兼容字段中,实际以返回体为准。
鉴权提示
在线运行面板应使用 Authorization: Bearer sk-xxx。请把环境变量 token 设置为控制台复制的完整 API Key;不要把 Bearer 写进 token 变量。
Request
Responses
- 200
- 400
- 401
- 500
成功
Response Headers
请求参数错误
Response Headers
鉴权失败
Response Headers
上游或系统错误