跳转到主要内容
POST
/
v1beta
/
models
/
{model}
:
{operator}
curl --request POST \
  --url https://wisdom-gate.juheapi.com:{operator}/v1beta/models/{model}:62437 \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "contents": [
    {
      "parts": [
        {
          "text": "How does AI work?"
        }
      ]
    }
  ]
}
'
{
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"text": "AI, or artificial intelligence, works by using algorithms and data to enable machines to learn from experience, adapt to new inputs, and perform tasks that typically require human intelligence."
}
]
},
"finishReason": "STOP",
"index": 0
}
],
"usageMetadata": {
"promptTokenCount": 5,
"candidatesTokenCount": 25,
"totalTokenCount": 30
}
}

概述

Gemini 图像生成 API 允许您使用 Google 的 Gemini 模型从文本描述生成图像。此端点支持灵活的宽高比、多种分辨率(高达 4K)和多轮图像编辑功能。
最新消息:现已支持 gemini-3-pro-image-preview

快速开始

只需在官方 SDK 或请求中替换 Base URL 和 API Key 即可使用:
  • Base URLhttps://wisdom-gate.juheapi.com(替换 generativelanguage.googleapis.com
  • API Key:将 $GEMINI_API_KEY 替换为您的 $WISDOM_GATE_KEY

基础示例:生成图像

curl -s -X POST \
  "https://wisdom-gate.juheapi.com/v1beta/models/gemini-3-pro-image-preview:generateContent" \
  -H "x-goog-api-key: $WISDOM_GATE_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [{
      "parts": [{
        "text": "达芬奇风格的帝王蝶解剖素描。在有纹理的羊皮纸上详细绘制头部、翅膀和腿部,并附有英文注释。"
      }]
    }],
    "tools": [{"google_search": {}}],
    "generationConfig": {
      "responseModalities": ["TEXT", "IMAGE"],
      "imageConfig": {
        "aspectRatio": "1:1",
        "imageSize": "1K"
      }
    }
  }' | jq -r '.candidates[0].content.parts[] | select(.inlineData) | .inlineData.data' | head -1 | base64 --decode > butterfly.png

重要说明

模型差异不同的 Gemini 图像模型可能支持不同的分辨率和功能。gemini-3-pro-image-preview 支持高达 4K 分辨率,而 gemini-2.5-flash-image 支持 1K 和 2K 分辨率。我们强烈建议查阅 模型目录 了解每个模型的完整参数列表和使用说明。
响应透传原则Wisdom Gate 通常不会在逆向格式之外修改模型响应,确保您收到与原始 Gemini API 提供商一致的响应内容。
强制图像输出为确保生成图像而不是纯文本响应,请在请求中设置 "responseModalities": ["IMAGE"](不含 TEXT)。这将强制模型生成图像。

参考文档

有关 Gemini 图像生成的更多详情,我们建议参阅 Gemini 官方文档 Gemini 图像生成指南:
自动生成的文档请求参数和响应格式从 OpenAPI 规范自动生成。所有参数、其类型、描述、默认值和示例都直接从 openapi.json 提取。向下滚动查看交互式 API 参考。

常见问题

哪些模型支持图像生成?

目前支持的模型:
  • gemini-3-pro-image-preview:支持高达 4K 分辨率,多种宽高比
  • gemini-2.5-flash-image:支持 1K 和 2K 分辨率,灵活的宽高比

如何配置宽高比?

Gemini 2.5 Flash Image 支持多种宽高比,方便为不同设备创建内容。所有分辨率默认消耗 1,290 令牌。 支持的宽高比:
  • 1:1 - 正方形
  • 3:2 - 横向
  • 2:3 - 纵向
  • 3:4 - 纵向
  • 4:3 - 横向
  • 4:5 - 纵向
  • 5:4 - 横向
  • 9:16 - 竖屏(手机)
  • 16:9 - 横屏(宽屏)
  • 21:9 - 超宽
curl -s -X POST \
  "https://wisdom-gate.juheapi.com/v1beta/models/gemini-2.5-flash-image:generateContent" \
  -H "x-goog-api-key: $WISDOM_GATE_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [{
      "parts": [{
        "text": "山脉上美丽的日落"
      }]
    }],
    "generationConfig": {
      "responseModalities": ["IMAGE"],
      "imageConfig": {
        "aspectRatio": "16:9"
      }
    }
  }'

如何生成 4K 图像?

4K 分辨率适用于 gemini-3-pro-image-preview 模型。在 imageConfig 中设置 "imageSize": "1K"
curl -s -X POST \
  "https://wisdom-gate.juheapi.com/v1beta/models/gemini-3-pro-image-preview:generateContent" \
  -H "x-goog-api-key: $WISDOM_GATE_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [{
      "parts": [{
        "text": "现代摩天大楼的详细建筑渲染图"
      }]
    }],
    "generationConfig": {
      "responseModalities": ["TEXT", "IMAGE"],
      "imageConfig": {
        "aspectRatio": "16:9",
        "imageSize": "1K"
      }
    }
  }'

如何进行多轮图像编辑?

您可以在多轮对话中保持上下文以迭代优化图像:
# 第一轮:生成初始图像
curl -s -X POST \
  "https://wisdom-gate.juheapi.com/v1beta/models/gemini-3-pro-image-preview:generateContent" \
  -H "x-goog-api-key: $WISDOM_GATE_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contents": [{
      "role": "user",
      "parts": [{
        "text": "创建一个生动的信息图,将光合作用解释为植物最喜欢的食物食谱。展示"原料"(阳光、水、二氧化碳)和"成品"(糖/能量)。风格应该像彩色儿童食谱书的一页,适合四年级学生。"
      }]
    }],
    "generationConfig": {
      "responseModalities": ["TEXT", "IMAGE"]
    }
  }' > turn1_response.json

# 从第一个响应中提取图像
jq -r '.candidates[0].content.parts[] | select(.inlineData) | .inlineData.data' turn1_response.json | head -1 | base64 --decode > photosynthesis.png

# 第二轮:基于之前的响应优化
# (在 contents 数组中包含之前的对话)

如何强制仅输出图像?

为防止纯文本响应,设置 "responseModalities": ["IMAGE"](不含 TEXT):
data = {
    "contents": [{
        "parts": [{
            "text": "黎明时分宁静的山景"
        }]
    }],
    "generationConfig": {
        "responseModalities": ["IMAGE"],  # 只有 IMAGE,没有 TEXT
        "imageConfig": {
            "aspectRatio": "16:9"
        }
    }
}

如何从响应中提取图像?

图像以 base64 编码数据的形式在 inlineData 字段中返回:
import base64

response = requests.post(url, headers=headers, json=data)
result = response.json()

for candidate in result.get("candidates", []):
    for part in candidate.get("content", {}).get("parts", []):
        if "inlineData" in part:
            image_data = part["inlineData"]["data"]
            mime_type = part["inlineData"]["mimeType"]
            
            # 解码并保存
            image_bytes = base64.b64decode(image_data)
            extension = mime_type.split("/")[1]  # 例如从 "image/png" 得到 "png"
            filename = f"generated_image.{extension}"
            
            with open(filename, "wb") as f:
                f.write(image_bytes)
            print(f"图像已保存为 {filename}")

如何控制成本?

  1. 选择合适的模型gemini-2.5-flash-imagegemini-3-pro-image-preview 更经济
  2. 使用较低分辨率:1K 和 2K 消耗的令牌比 4K 少
  3. 监控令牌消耗:查看响应中的 usageMetadata 字段
  4. 所有宽高比默认消耗 1,290 令牌(Gemini 2.5 Flash Image)

授权

Authorization
string
header
必填

Bearer token authentication. Include your API key in the Authorization header as 'Bearer YOUR_API_KEY'

路径参数

model
string
必填

The model identifier (e.g., 'gemini-pro', 'gemini-pro-vision')

operator
string
必填

The operation to perform. Use 'generateContent' for standard requests, or 'streamGenerateContent?alt=sse' for streaming responses with Server-Sent Events format.

请求体

application/json
contents
object[]
必填

Array of content parts that make up the conversation

systemInstruction
object

System instruction to guide the model's behavior

generationConfig
object

Configuration for content generation

safetySettings
object[]

Safety settings for content filtering

响应

Successful content generation response

candidates
object[]
必填

Array of generated content candidates

usageMetadata
object

Token usage statistics for the request

promptFeedback
object

Feedback about the prompt, including safety ratings