菜单图像生成

图像生成

使用 Google 的图像模型(Nano Banana / Gemini Image 系列)把文字描述(prompt)变成图片。该 endpoint 兼容 OpenAI Images API——只需把 openai SDK 指向 Geraikita 的 base URL,使用同一个 gk- key 和同一个 GeraiPoints 余额。

Endpoint

POSThttps://ai.geraikita.com/v1/images/generations
请求头值
AuthorizationBearer gk-...(或 x-api-key: gk-...)
Content-Typeapplication/json

一次请求 = 一个 prompt,生成 1–4 张图片。不支持流式输出——图片全部完成后一次性返回响应。

Body 参数

参数类型说明
modelstring必填图像模型 ID,例如 gemini-3.1-flash-image 或 gemini-3-pro-image——完整列表见下方价格表。
promptstring必填对所需图片的描述,最多 4000 个字符。
ninteger可选图片数量,1–4。默认 1。每张成功生成的图片单独计费。
sizestring可选可选值:auto | 1024x1024 | 1536x1024 | 1024x1536 | 1792x1024 | 1024x1792。默认 auto:由模型选择比例,通常为横向 16:9(约 1376×768)。尺寸只是比例提示——最终分辨率由模型决定。
response_formatstring可选url(默认)返回图片链接,或 b64_json 在响应中直接返回 base64 图片数据。

其他字段(例如 quality 或 style)会被忽略。

示例

每次请求通常需要 15–45 秒,使用备用线路时最长约 4 分钟。请把客户端超时设为至少 300 秒,以免图片完成前请求被中断。
curl https://ai.geraikita.com/v1/images/generations \
  --max-time 300 \
  -H "Authorization: Bearer gk-xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-3.1-flash-image",
    "prompt": "木桌上的棕榈糖冰咖啡促销海报,温暖的清晨光线,顶部有醒目的大字 \"八折优惠\",扁平插画风格",
    "n": 1,
    "size": "1024x1024"
  }'

响应示例

data 中每张成功生成的图片对应一个对象——根据 response_format 为 url 或 b64_json。若部分图片失败,对象数量可能少于 n。

200 OK · application/json
{
  "created": 1793464057,
  "data": [
    { "url": "https://api.geraikita.com/cdn/ai-gambar/2026/11/xxxxxxxxxxxx.jpg" }
  ]
}

响应头:X-Geraikita-Images = 成功生成的图片数,X-Geraikita-GP-Charged = 该请求扣除的 GeraiPoints。

价格

图像模型按成功生成的图片张数计费——不按 token。当前价格(可能调整)见下表及价格页。

暂时无法加载图像模型价格——请查看价格页。

  • 生成失败的图片不计费,被拒绝的请求(参数错误或违反内容政策)同样不计费。
  • 请求处理之前,GeraiPoints 余额必须足够支付 n × 每张价格;否则返回 402。
  • 图像模型不包含在 Unlimited plan、Bansos(免费套餐)或其他免费额度中——始终从 GeraiPoints 余额扣费。
  • 每张图片在 dashboard 的使用记录中占一行,并标注图像。

错误码

错误格式与 OpenAI 相同:一个 error 对象,包含 message、type、param 和 code。

状态码type / code含义
400invalid_request_error参数无效(例如 n 不在 1–4 范围内、size 不受支持、prompt 为空或过长)。不计费。
400content_policy_violationprompt 违反内容政策(见下文)。不计费。
401—缺少 API key 或 key 无效。
402insufficient_quotaGeraiPoints 余额不足以支付所请求的图片数量——请充值。
403—该 API key 不允许使用此模型——请在 dashboard 中将其加入该 key 的模型列表。
404model_not_found未知模型,或不是图像模型。
429rate_limit_exceeded请求过多——上限为每个 key 每分钟 10 次请求。请按 Retry-After 响应头等待。
502image_generation_failed服务器端图像生成失败。不计费——请重试。
错误示例
{
  "error": {
    "message": "...",
    "type": "...",
    "param": "...",
    "code": "..."
  }
}

通过 /v1/chat/completions 调用图像模型会返回 400,并提示改用本 endpoint——请使用 /v1/images/generations。

提示词技巧

  • prompt 可以用中文、英文、印尼文或其他语言书写。
  • 模型可以在图片中写字——把要显示的文字原样放在引号里,例如 写上 "八折优惠"。
  • 描述主体、场景、风格(照片、扁平插画、3D、水彩)、光线和构图——越具体,结果越贴近预期。
  • 按用途选择 size:1024x1024 用于信息流,1024x1792 用于快拍/竖图,1792x1024 用于横幅。
  • 需要多个版本?在一次请求中把 n 设为最多 4——注意每张成功的图片都会计费。

内容政策

以下请求将被拒绝:

  • 色情或露骨内容。
  • 剥削或危害儿童的内容。
  • 虐待性暴力或血腥内容。
  • 真实的政治人物或真实的公众人物。

被拒绝的请求返回 400,code 为 content_policy_violation,且不计费。

图片链接与存储

data[].url 中的 URL 是公开的——任何持有链接的人都能打开图片——而且不保证永久可用。请在生成后立即下载并保存到你自己的存储中,或请求 b64_json 直接在响应中获取图片数据。