# Nano Banana 文生图:aspectRatio、imageSize 与各模型支持的比例和分辨率 Source: https://ofox.ai/zh/docs/develop/models/nano-banana/text-to-image 模型 ID 与接口选择见 [Nano Banana 概览](https://ofox.ai/zh/docs/develop/models/nano-banana)。 **要点**:比例由 `aspectRatio` 指定,分辨率由 `imageSize` 指定,两者均位于 `generationConfig.imageConfig` 中。 ## 文生图示例 **Python** ```python filename="nano_banana.py" import base64 from google import genai from google.genai import types client = genai.Client( api_key="YOUR_OFOX_API_KEY", http_options={"api_version": "v1beta", "base_url": "https://api.ofox.ai/gemini"}, ) resp = client.models.generate_content( model="google/gemini-3.1-flash-image", contents="白色桌面上的一个红苹果", config=types.GenerateContentConfig( response_modalities=["IMAGE"], image_config=types.ImageConfig(aspect_ratio="16:9", image_size="2K"), ), ) for part in resp.candidates[0].content.parts: if part.inline_data: with open("output.png", "wb") as f: f.write(part.inline_data.data) ``` **cURL** ```bash filename="Terminal" curl 'https://api.ofox.ai/gemini/v1beta/models/google/gemini-3.1-flash-image:generateContent' \ --max-time 600 \ -H "x-goog-api-key: $OFOX_API_KEY" \ -H 'Content-Type: application/json' \ -d '{ "contents": [{ "parts": [{ "text": "白色桌面上的一个红苹果" }] }], "generationConfig": { "responseModalities": ["IMAGE"], "imageConfig": { "aspectRatio": "16:9", "imageSize": "2K" } } }' | jq -r '.candidates[0].content.parts[] | select(.inlineData) | .inlineData.data' | base64 --decode > output.png ``` Python SDK 返回的 `inline_data.data` 为二进制数据,可直接写入文件;cURL 返回的是 base64 字符串,需先解码。 ## 各模型支持的取值 | | Nano Banana 2.1 | Nano Banana 2 | Pro | 2 Lite | Nano Banana | |---|---|---|---|---|---| | `imageSize` | `1K`、`2K`、`4K` | `512`、`1K`、`2K`、`4K` | `1K`、`2K`、`4K` | 仅 `1K` | 不支持,固定约 1K | | 常用 10 种比例 | 支持 | 支持 | 支持 | 支持 | 支持 | | `1:4`、`4:1`、`1:8`、`8:1` | 支持 | 支持 | 不支持 | 支持 | 不支持 | | 输出格式 | PNG | PNG | PNG | JPEG | PNG | 常用 10 种比例:`1:1`、`2:3`、`3:2`、`3:4`、`4:3`、`4:5`、`5:4`、`9:16`、`16:9`、`21:9`。不在列表中的比例(如 `5:3`)将返回 `400 Request contains an invalid argument`。 **分辨率写法**:`imageSize` 建议使用大写 `1K`、`2K`、`4K`,与 Google 官方文档一致;OfoxAI 实测亦接受小写。`512` 档不带单位 K。 **不传 `imageConfig`**:比例由模型决定。需要固定比例请显式传入。 ## 实测输出尺寸 | 模型 | 请求 | 实际输出 | 耗时 | |---|---|---|---| | Nano Banana 2.1 | `1:1` · `1K` | 1024×1024 | 约 15 秒 | | Nano Banana 2.1 | `1:8` · `1K` | 352×2928 | 约 17 秒 | | Nano Banana 2.1 | `1:1` · `4K` | 4096×4096 | 约 140 秒 | | Nano Banana 2 | `1:1` · `1K` | 1024×1024 | 约 11 秒 | | Nano Banana 2 | `16:9` · `1K` | 1376×768 | 约 13 秒 | | Nano Banana 2 | `1:8` · `512` | 176×1456 | 约 9 秒 | | Nano Banana 2 | `9:16` · `4K` | 3072×5504,约 16 MB | 约 28 秒 | | Nano Banana Pro | `4:5` · `2K` | 1856×2304 | 约 24 秒 | | Nano Banana Pro | `16:9` · `4K` | 5504×3072,约 16 MB | 约 33 秒 | | Nano Banana 2 Lite | `21:9` · `1K` | 1584×672 | 约 5 秒 | | Nano Banana | `21:9` | 1536×672 | 约 7 秒 | 4K 的 PNG 约 16 MB,经 base64 编码后响应体超过 20 MB。请确认客户端、代理与日志系统不会截断大体积响应。 遇到报错请参阅 [报错排查](https://ofox.ai/zh/docs/develop/models/nano-banana/errors)。