图像模型进阶用户更新于
POST/v1/images/generations
Gemini 2.5 Flash Image
请求 ID gemini-2.5-flash-image
协议
POST /v1/images/generations· 生成图片示例POST /v1/images/edits· 编辑图片示例POST /v1beta/models/gemini-2.5-flash-image:generateContent· Gemini generateContent示例GET /v1/images/tasks/{task_id}· 查询图片任务示例
认证
请求需要 API Key。在控制台的 API Key 管理 获取密钥。发送 JSON 请求时,设置 Content-Type: application/json。
Authorization: Bearer YOUR_API_KEY- Gemini ·
x-goog-api-key: YOUR_API_KEY
请求参数
POST /v1/images/generations
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
model | string | 必填 | 填写此模型的请求 ID gemini-2.5-flash-image. |
prompt | string | 必填 | 描述要生成的图像。 |
aspect_ratio | string | 选填 | 输出图像的宽高比。 例如 1:1 或 16:9。 省略时根据 size 推导。 默认 1:1. |
image_size | string | 选填 | 输出分辨率档位。 可用值 1K. 默认 1K. |
n | integer | 选填 | 单次请求的图片数量,建议保持为 1。 默认 1. |
image_urls | string[] | 选填 | JSON 参考图数组。每项可为公开 HTTPS 图片链接或 Base64 图片 data URL。 兼容字段 image_input. 参考图上限 4. |
?async | string | 选填 | URL 查询参数。传 1、true 或 yes 返回 202 和 task_id。省略时等待生成结果。 |
POST /v1/images/edits
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
model | string | 必填 | 填写此模型的请求 ID gemini-2.5-flash-image. |
prompt | string | 必填 | 描述要对参考图进行的修改。 |
aspect_ratio | string | 选填 | 输出图像的宽高比。 例如 1:1 或 16:9。 省略时根据 size 推导。 默认 1:1. 编辑时通过 JSON 请求体传入。 |
image_size | string | 选填 | 输出分辨率档位。 可用值 1K. 编辑时通过 JSON 请求体传入。 默认 1K. |
n | integer | 选填 | 单次请求的图片数量,建议保持为 1。 默认 1. |
image_urls | string[] | 视条件 | JSON 参考图数组。每项可为公开 HTTPS 图片链接或 Base64 图片 data URL。 兼容字段 image_input. 参考图上限 4. 使用 JSON 编辑时至少传一张。 |
image[] | file[] | 视条件 | 使用 multipart/form-data 编辑时,至少上传一张图片,可重复传此字段。单文件也可用 image。 参考图上限 4. |
?async | string | 选填 | URL 查询参数。传 1、true 或 yes 返回 202 和 task_id。省略时等待生成结果。 |
POST /v1beta/models/gemini-2.5-flash-image:generateContent
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
model (path) | string | 必填 | URL 路径中的模型 ID,填写 gemini-2.5-flash-image。 |
contents | object[] | 必填 | 按顺序排列的会话内容。每项使用 parts 保存输入片段。 |
contents[].role | string | 选填 | 消息角色。普通用户输入使用 user,模型历史消息使用 model。 |
contents[].parts | object[] | 必填 | 内容项中的片段数组。文本片段使用 text。 |
contents[].parts[].inlineData | object | 视条件 | 内联媒体对象。使用 mimeType 和 Base64 编码的 data。可用媒体类型取决于模型和接入点。 |
systemInstruction | object | 选填 | 系统指令对象。把指令文字放入 parts[].text。 |
generationConfig.maxOutputTokens | integer | 选填 | 输出 token 的上限。可用上限因模型和接入点而异。 |
generationConfig.responseModalities | string[] | 选填 | 输出类型列表。使用 ["IMAGE"] 请求图片。 |
请求示例
先将 API Key 设置为本机环境变量 ICODEEASY_API_KEY,并选择支持直接 HTTP 调用的接入点。接入点要求特定客户端时,按对应客户端指南配置。
示例中的素材 URL 和素材 ID 需要替换成自己的有效素材。
Images Generations
bash
curl -sS 'https://api.icodeeasy.cc/v1/images/generations' \
-H "Authorization: Bearer $ICODEEASY_API_KEY" \
-H 'Content-Type: application/json' \
--data '{
"model": "gemini-2.5-flash-image",
"prompt": "A watercolor illustration of a paper lantern by a lake.",
"aspect_ratio": "16:9",
"image_size": "1K"
}'
Images Edits
bash
curl -sS 'https://api.icodeeasy.cc/v1/images/edits' \
-H "Authorization: Bearer $ICODEEASY_API_KEY" \
-H 'Content-Type: application/json' \
--data '{
"model": "gemini-2.5-flash-image",
"prompt": "Change the background to a pale blue wall. Preserve the subject.",
"image_urls": [
"https://example.com/reference.png"
],
"aspect_ratio": "16:9",
"image_size": "1K"
}'
Gemini generateContent
bash
curl -sS 'https://api.icodeeasy.cc/v1beta/models/gemini-2.5-flash-image:generateContent' \
-H "x-goog-api-key: $ICODEEASY_API_KEY" \
-H 'Content-Type: application/json' \
--data '{
"contents": [
{
"role": "user",
"parts": [
{
"text": "A watercolor illustration of a paper lantern by a lake."
}
]
}
],
"generationConfig": {
"responseModalities": [
"IMAGE"
]
}
}'
查询图片任务
bash
curl -sS 'https://api.icodeeasy.cc/v1/images/tasks/YOUR_TASK_ID' \
-H "Authorization: Bearer $ICODEEASY_API_KEY"
响应与任务
/v1/images/generations · /v1/images/edits
HTTP 200 · 同步成功
使用 ?sync=1 时,成功响应中的 data[].url 是图片地址。created 为 Unix 秒时间戳,id 为任务 ID。
json
{
"id": "d142c93a-de26-40c9-be62-0de840d10960",
"created": 1781599773,
"data": [
{
"url": "https://example.com/generated-image.png"
}
]
}
HTTP 202 · 异步提交
json
{
"task_id": "d142c93a-de26-40c9-be62-0de840d10960",
"status": "pending"
}
使用 ?async=1 后,用同一 API Key 查询 GET /v1/images/tasks/{task_id}。status 可为 pending、completed 或 failed。完成后从 result_url 读取图片地址。
HTTP 200 · 查询到已完成任务
json
{
"task_id": "d142c93a-de26-40c9-be62-0de840d10960",
"status": "completed",
"model": "gemini-2.5-flash-image",
"result_url": "https://example.com/generated-image.png"
}
常见错误
查询返回 failed 时读取 error。若存在 error_detail,根据 retryable 判断是否适合重新提交。
Gemini generateContent · JSON
遍历 candidates[].content.parts[],从含有 inlineData 的块中读取图片。按 mimeType 保存 Base64 解码后的 data。
json
{
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"inlineData": {
"mimeType": "image/png",
"data": "BASE64_IMAGE_DATA"
}
}
]
}
}
]
}
完整接入指南 · 查看完整接口指南,了解请求字段、任务状态和响应格式。
能力与限制
text_to_image· 支持image_to_image· 支持image_editing· 支持native_generation· 支持reference_images· 有条件支持 — 需要以支持的请求格式提供有效参考图- 限制 参考图:最多 4 张 · 分辨率: 1k
兼容别名与退役重定向
gemini-2.5-flash-image-preview→gemini-2.5-flash-image(别名)