Amux

Generate image

最近更新:2026年9月2日

用 google/gemini-3.1-flash-lite-image 出图,Gemini 原生端点,官方 SDK 直接可用。

google/gemini-3.1-flash-lite-image 的出图调用。走 Gemini 原生的 generateContent, 与对话调用同一条地址,官方 SDK 把 base URL 指过来即可。

它是四个里最便宜的一个,代价是取值范围最窄:只有 1K 一档,也不支持联网检索。

POSThttps://gateway.amux.ai/v1beta/models/google/gemini-3.1-flash-lite-image:generateContent

鉴权

header
Authorizationstring必填

请求

application/json
contentsarray<object>必填

提示词与参考图。文本在 parts[].text,参考图在 parts[].inline_data(不含 data: 前缀的原始 base64)。有参考图即为图生图,端点不变。

contentsarray<object>
role"user" | "model"

说话方。user 是你,model 是模型此前的回复。单轮请求可以省略。

partsarray<object>

这一轮的片段,按给出的顺序生效。文本与参考图可以混在同一轮里。

partsarray<object>
textstring

文本片段。同一轮里多个 text 会按顺序拼接。

inline_dataobject

内联的参考图。只接受内联字节与 Files API,不接受 URL——传 URL 会被丢弃并记入 amux.notes

inline_dataobject
mime_typestring

图片的媒体类型,如 image/pngimage/jpegimage/webp

datastring

图片字节的 base64,不含 data:image/png;base64, 前缀。带前缀会被上游当作无效图片。

generationConfigobject必填

生成参数。出图相关的两项在 responseModalitiesresponseFormat.image

generationConfigobject
responseModalitiesarray<"TEXT" | "IMAGE">必填

必填 ["TEXT", "IMAGE"]。缺了它这条端点只回文本。

responseFormatobject

产物格式。图像相关的在 image 下。

responseFormatobject
imageobject

出图的尺寸控制。两项都可以省略,省略时由上游取默认。

imageobject
aspectRatio"1:1" | "1:4" | "1:8" | "2:3" | "3:2" | "3:4" | "4:1" | "4:3" | "4:5" | "5:4" | "8:1" | "9:16" | "16:9" | "21:9"

画面比例。这个模型接受下列 14 种比例。原生端点原样转发——填了范围外的值由上游判定,通常直接返回 400;经 /v1/images/*/v1/tasks 调用时,超范围的值会被我们丢弃并记入 amux.notes

imageSize"1K"

分辨率档位。超范围时的处理同 aspectRatio

toolsarray<object>

这个模型不支持联网检索,传了会被上游拒绝(400)。

响应

200response

生成结果。图与文本在 parts 里交错出现。

出图的开关

generationConfig.responseModalities 必须写成 ["TEXT", "IMAGE"]。 缺了它,同一条端点只返回文本。

这个模型的取值范围

比例(14 种):

1:1 · 2:3 / 3:2 · 3:4 / 4:3 · 4:5 / 5:4 · 9:16 / 16:9 · 21:9 · 1:4 / 4:1 · 1:8 / 8:1

分辨率1K

这条原生端点原样转发请求体——填了范围外的取值,由上游判定,通常直接返回 400。 我们不代为丢弃:原生调用的语义就是「你发什么我们送什么」。

OpenAI 兼容的图像端点Amux Tasks 调用时,请求体由我们渲染, 那两条路径上超出范围的取值会被丢弃并记入 amux.notes,上游随即使用自己的默认值。

OpenAI 风格的像素串 size(例如 1024x1024)同样只在那两条路径上有意义—— Gemini 原生请求体里没有这个字段。它会被折算成比例与档位,折算范围收窄到上面这些取值, 折算有损时记入 amux.notes

参考图

图生图与文生图共用这条端点,把参考图作为 inline_data 放进 contents[].parts 即可。 data 是不含 data: 前缀的原始 base64。

这个模型最多 14 张,全部作为物体参考(不支持角色与风格参考)。

以 URL 形式提供参考图不受支持——官方只接受内联字节与 Files API。

成本构成

产出按 token 计,而图像 token 与文本 token 单价不同——两者在响应的 usageMetadata.candidatesTokensDetails 里按模态分开,账单据此分项计费, 不会把图像 token 按文本价计。

一张图消耗的 token 数由分辨率决定:1K 1120 token。

具体单价见模型页按量计费。 这里不写数字:供应商与折扣都会调整,抄一份在文档里迟早和账单对不上。

不支持联网检索

这个模型不接受 tools: [{ "google_search": {} }],传了会由上游直接拒绝(400)。 需要按当前事实作图请改用 Gemini 3 Pro Image 或 Gemini 3.1 Flash Image。

不支持流式

Gemini 的流式是换动作(:streamGenerateContent),而官方文档未给出图像流式的语法, 因此这个模型上的流式请求会被拒绝。请去掉流式后重试。

一次调用返回一张图,请求体中没有批量字段。

其他调用方式

这个模型同样可以通过 OpenAI 兼容的图像端点Amux Tasks 调用。 经过协议转换的路径上,本页列出的取值范围同样生效

错误

错误按 Gemini 的错误体形状返回,status 取值与重试语义见错误与重试

cURL
curl https://gateway.amux.ai/v1beta/models/google/gemini-3.1-flash-lite-image:generateContent \
  -H "x-goog-api-key: $AMUX_API_KEY" \
  -d '{
    "contents": [
      {
        "role": "user",
        "parts": [
          {
            "text": "<string>",
            "inline_data": {
              "mime_type": "image/png",
              "data": "<string>"
            }
          }
        ]
      }
    ],
    "generationConfig": {
      "responseModalities": [
        "TEXT",
        "IMAGE"
      ],
      "responseFormat": {
        "image": {
          "aspectRatio": "1:1",
          "imageSize": "1K"
        }
      }
    },
    "tools": [
      {}
    ]
  }'
{
  "candidates": [
    {
      "content": {
        "parts": [
          {
            "text": "<string>",
            "inlineData": {
              "mimeType": "image/png",
              "data": "<string>"
            }
          }
        ]
      }
    }
  ],
  "usageMetadata": {
    "promptTokenCount": 0,
    "candidatesTokenCount": 0,
    "totalTokenCount": 0,
    "promptTokensDetails": [
      {
        "modality": "TEXT",
        "tokenCount": 0
      }
    ],
    "candidatesTokensDetails": [
      {
        "modality": "IMAGE",
        "tokenCount": 0
      }
    ]
  }
}