鉴权与连接
- Base URL
https://host.docker.internal:8000- Authorization
Authorization: Bearer YOUR_API_KEY- Content-Type
application/json- 模型名 (model)
gemini-3.1-flash-lite-image
接入协议
为什么选这个协议
适合原本使用 Gemini SDK 或 generateContent 接口的用户直接迁移。
接口地址
POST/v1beta/models/gemini-3.1-flash-lite-image:generateContent
Authorization: Bearer YOUR_API_KEYContent-Type: application/json请求 / 响应 JSON
请求示例
图片链接方式fileData.fileUri
{
"contents": [
{
"role": "user",
"parts": [
{
"text": "生成一张产品海报,白色背景,商业摄影风格"
},
{
"fileData": {
"fileUri": "https://example.com/reference.png"
}
}
]
}
],
"generationConfig": {
"responseModalities": [
"IMAGE"
]
}
}Base64 方式inlineData.mimeType + inlineData.data
{
"contents": [
{
"role": "user",
"parts": [
{
"text": "生成一张产品海报,白色背景,商业摄影风格"
},
{
"inlineData": {
"mimeType": "image/jpeg",
"data": "BASE64_IMAGE_DATA"
}
}
]
}
],
"generationConfig": {
"responseModalities": [
"IMAGE"
]
}
}响应示例
{
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"inlineData": {
"mimeType": "image/png",
"data": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgAqJvhoAAAAASUVORK5CYII="
}
}
]
}
}
],
"modelVersion": "gemini-3.1-flash-lite-image",
"usageMetadata": {
"promptTokenCount": 8,
"candidatesTokenCount": 16,
"totalTokenCount": 24
}
}请求字段 / 响应字段
// INPUT SCHEMA
| 字段 | 类型 | 必填 |
|---|---|---|
| contents | array | Y |
| contents[] | object | Y |
| contents[].role | string | Y |
| contents[].parts | array | Y |
| contents[].parts[] | object | Y |
| contents[].parts[].text | string | Y |
// RESPONSE SCHEMA
| 字段 | 类型 | 必填 |
|---|---|---|
| candidates[].content.parts[].inlineData.mimeType | string | N |
| candidates[].content.parts[].inlineData.data | image | N |
| usageMetadata.totalTokenCount | integer | N |
代码示例
cURLrequest.sh
curl -X POST "https://host.docker.internal:8000/v1beta/models/gemini-3.1-flash-lite-image:generateContent" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"contents": [
{
"role": "user",
"parts": [
{
"text": "生成一张产品海报,白色背景,商业摄影风格"
},
{
"fileData": {
"fileUri": "https://example.com/reference.png"
}
}
]
}
]
}'
# 上传参考文件 cURL
curl -X POST "https://host.docker.internal:8000/v1/files/upload" \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "kind=image" \
-F "purpose=reference" \
-F "file=@demo.png"为什么选这个协议
适合需要提交任务并轮询状态的图像、视频、音频生成工作流。
接口地址
POST/v1/jobs
Authorization: Bearer YOUR_API_KEYContent-Type: application/json请求 / 响应 JSON
// REQUEST
{
"model": "gemini-3.1-flash-lite-image",
"input": {
"prompt": "生成一张产品海报,白色背景,商业摄影风格",
"image_url": "https://example.com/input.png",
"reference_image_urls": [
"https://example.com/reference.png"
],
"reference_images": [
"https://example.com/reference.png"
],
"mask": "https://example.com/mask.png",
"size": "2752x1536",
"quality": "medium",
"output_format": "png",
"response_format": "url",
"background": "auto",
"n": 1,
"user": "user-123",
"style": "Describe the output you want",
"aspect_ratio": "1:1、3:2、2:3、3:4、4:3、4:5、5:4、9:16、16:9"
}
}// RESPONSE
{
"id": "job_example",
"object": "job",
"status": "processing",
"model": "gemini-3.1-flash-lite-image",
"created": 1710000000,
"request_id": "req_example"
}请求字段 / 响应字段
// INPUT SCHEMA
| 字段 | 类型 | 必填 |
|---|---|---|
| prompt | string | Y |
| image_url | image | N |
| reference_image_urls | array | N |
| reference_images | array | N |
| mask | image | N |
| size | string | N |
| quality | enum | N |
| output_format | enum | N |
| response_format | enum | N |
| background | enum | N |
| n | integer | N |
| user | string | N |
| style | string | N |
| aspect_ratio | string | N |
// RESPONSE SCHEMA
| 字段 | 类型 | 必填 |
|---|---|---|
| candidates[].content.parts[].inlineData.mimeType | string | N |
| candidates[].content.parts[].inlineData.data | image | N |
| usageMetadata.totalTokenCount | integer | N |
代码示例
cURLrequest.sh
curl -X POST "https://host.docker.internal:8000/v1/jobs" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "gemini-3.1-flash-lite-image",
"input": {
"prompt": "生成一张产品海报,白色背景,商业摄影风格",
"image_url": "https://example.com/input.png",
"reference_image_urls": [
"https://example.com/reference.png"
],
"reference_images": [
"https://example.com/reference.png"
],
"mask": "https://example.com/mask.png",
"size": "2752x1536",
"quality": "medium",
"output_format": "png",
"response_format": "url",
"background": "auto",
"n": 1,
"user": "user-123",
"style": "Describe the output you want",
"aspect_ratio": "1:1、3:2、2:3、3:4、4:3、4:5、5:4、9:16、16:9"
}
}'
# 上传参考文件 cURL
curl -X POST "https://host.docker.internal:8000/v1/files/upload" \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "kind=image" \
-F "purpose=reference" \
-F "file=@demo.png"
# 查询任务状态 cURL
# 将 job_example 替换为提交任务返回的 task_id
curl -X GET "https://host.docker.internal:8000/v1/jobs/job_example" \
-H "Authorization: Bearer YOUR_API_KEY"