> ## Documentation Index
> Fetch the complete documentation index at: https://docs.laozhang.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Nano Banana 2 Lite API：1K 图像生成与编辑

> 调用 gemini-3.1-flash-lite-image 生成和编辑 1K 图片：10 种比例，附 OpenAI 兼容与 Gemini 原生请求和保存代码。

Nano Banana 2 Lite（`gemini-3.1-flash-lite-image`）是 Google 称速度最快的 Nano Banana 模型，在老张API可以生成和编辑 1K 图片，按次计费。

## 能力范围

| 项目 | 内容 |
| - | - |
| 模型 ID | `gemini-3.1-flash-lite-image`（稳定版） |
| 官方名称 | Google Gemini 3.1 Flash Lite Image |
| 定位 | Google 定位为 Nano Banana 系列中速度最快的模型，适合 1K 文生图、快速编辑和高调用量任务 |
| 价格 | 按次计费，2026 年 9 月 24 日公开价格配置为 \$0.025/次，最新价格见[模型与价格](/models) |
| 扣费 | 上游返回 HTTP 200 即扣一次，没有返回图片也扣费，见[计费规则](/api-capabilities/nano-banana-image#计费规则) |
| 调用方式 | OpenAI 兼容的 `/v1/chat/completions`；需要指定比例时用 Gemini 原生的 `generateContent` |
| 分辨率 | 仅 1K |
| 比例 | `1:1`、`2:3`、`3:2`、`3:4`、`4:3`、`4:5`、`5:4`、`9:16`、`16:9`、`21:9`，共 10 种，通过 Gemini 原生格式设置 |
| 图片编辑 | 支持；参考图最多 14 张，但不针对多参考图和多轮连续编辑优化 |
| Google 搜索接地 | 不支持 |

以上能力依据 [Google 图像生成文档](https://ai.google.dev/gemini-api/docs/image-generation)。

需要 2K、4K 或 Google 搜索接地时，改用 [Nano Banana 2.1](/api-capabilities/nano-banana-2-1-image) 或 [Nano Banana 2](/api-capabilities/nano-banana2-image)；复杂构图和专业成片使用 [Nano Banana Pro](/api-capabilities/nano-banana-pro-image)。五个 Nano Banana 模型的价格与能力对比见 [Nano Banana 总览](/api-capabilities/nano-banana-image)。

## 调用前准备

在[令牌管理](https://api.laozhang.ai/token)创建 API Key，计费模式选择「按量优先」（推荐）或「按次计费」：按量优先的令牌可以同时调用按量和按次计费的模型，按次计费的令牌只能调用按次计费的模型。无图响应与重试的计费说明见[计费规则](/api-capabilities/nano-banana-image#计费规则)。

设置密钥并安装依赖：

```bash theme={null}
export LAOZHANG_API_KEY="替换为你的老张API密钥"
python -m pip install requests openai
```

本页示例还需要 [Nano Banana 总览](/api-capabilities/nano-banana-image#共用代码)中的 `nano_banana.py`，请把它保存到当前目录。cURL 示例也用它把响应文件保存为图片：

* `read_image()`：读取本地图片
* `save_images()`：从 OpenAI 兼容响应的 `message.content` 中提取 data URL，或从 Gemini 原生响应的 `parts[].inlineData` 中取出 Base64 数据，解码后按 PNG、JPEG 或 WebP 保存

## OpenAI 兼容格式

OpenAI 兼容格式不能设置比例和分辨率，文生图输出 1:1 的 1K 图片。示例关闭了 OpenAI SDK 的自动重试，避免超时后重复生成和扣费。

### 生成图片

<Tabs>
  <Tab title="cURL">
    ```bash theme={null}
    curl --fail-with-body --max-time 300 \
      "https://api.laozhang.ai/v1/chat/completions" \
      -H "Authorization: Bearer $LAOZHANG_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "model": "gemini-3.1-flash-lite-image",
        "stream": false,
        "messages": [
          {
            "role": "user",
            "content": "生成一张图片：米白背景上的极简咖啡杯产品图，柔和阴影"
          }
        ]
      }' \
      -o lite-generate.json

    python nano_banana.py lite-generate.json lite-generate
    ```
  </Tab>

  <Tab title="Python">
    ```python theme={null}
    import os

    from openai import OpenAI

    from nano_banana import save_images

    client = OpenAI(
        api_key=os.environ["LAOZHANG_API_KEY"],
        base_url="https://api.laozhang.ai/v1",
        timeout=300,
        max_retries=0,
    )
    response = client.chat.completions.create(
        model="gemini-3.1-flash-lite-image",
        messages=[{
            "role": "user",
            "content": "生成一张图片：米白背景上的极简咖啡杯产品图，柔和阴影",
        }],
    )
    save_images(response.model_dump(), "lite-generate")
    ```
  </Tab>
</Tabs>

成功后会得到 `lite-generate-1.png` 等文件。

### 编辑图片

把编辑指令和图片放在同一条 user 消息中。cURL 示例使用公网图片 URL；Python 示例把本地图片转成 data URL，可以直接编辑上一步生成的图片。

<Tabs>
  <Tab title="cURL">
    ```bash theme={null}
    curl --fail-with-body --max-time 300 \
      "https://api.laozhang.ai/v1/chat/completions" \
      -H "Authorization: Bearer $LAOZHANG_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "model": "gemini-3.1-flash-lite-image",
        "stream": false,
        "messages": [{
          "role": "user",
          "content": [
            {"type": "text", "text": "保持产品不变，把背景换成浅灰色摄影棚"},
            {"type": "image_url", "image_url": {"url": "https://example.com/your-image.png"}}
          ]
        }]
      }' \
      -o lite-edit.json

    python nano_banana.py lite-edit.json lite-edit
    ```
  </Tab>

  <Tab title="Python">
    ```python theme={null}
    import os
    import sys

    from openai import OpenAI

    from nano_banana import read_image, save_images

    if len(sys.argv) < 3:
        raise SystemExit('用法：python lite_edit.py "编辑指令" 图片1 [图片2 ...]')
    prompt, paths = sys.argv[1], sys.argv[2:]

    content = [{"type": "text", "text": prompt}]
    for path in paths:
        mime, data = read_image(path)
        content.append({"type": "image_url", "image_url": {"url": f"data:{mime};base64,{data}"}})

    client = OpenAI(
        api_key=os.environ["LAOZHANG_API_KEY"],
        base_url="https://api.laozhang.ai/v1",
        timeout=300,
        max_retries=0,
    )
    response = client.chat.completions.create(
        model="gemini-3.1-flash-lite-image",
        messages=[{"role": "user", "content": content}],
    )
    save_images(response.model_dump(), "lite-edit")
    ```
  </Tab>
</Tabs>

使用 cURL 时，把 `https://example.com/your-image.png` 替换为你的图片 URL，图片需要能被公网直接访问。Python 示例保存为 `lite_edit.py` 后运行（文件名以上一步实际保存的为准）：

```bash theme={null}
python lite_edit.py "保持产品不变，把背景换成浅灰色摄影棚" lite-generate-1.png
```

## Gemini 原生格式

Gemini 原生格式通过 `generationConfig.imageConfig.aspectRatio` 设置比例。Lite 只输出 1K，`imageSize` 可以省略或设为 `1K`。

### 按比例生成图片

<Tabs>
  <Tab title="cURL">
    ```bash theme={null}
    curl --fail-with-body --max-time 300 \
      "https://api.laozhang.ai/v1beta/models/gemini-3.1-flash-lite-image:generateContent" \
      -H "Authorization: Bearer $LAOZHANG_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "contents": [{
          "role": "user",
          "parts": [{"text": "生成一张图片：深色背景的物流仪表盘概念图，青色高光"}]
        }],
        "generationConfig": {
          "responseModalities": ["IMAGE"],
          "imageConfig": {"aspectRatio": "16:9", "imageSize": "1K"}
        }
      }' \
      -o lite-native.json

    python nano_banana.py lite-native.json lite-native
    ```
  </Tab>

  <Tab title="Python">
    ```python theme={null}
    from nano_banana import post, save_images

    result = post("/v1beta/models/gemini-3.1-flash-lite-image:generateContent", {
        "contents": [{
            "role": "user",
            "parts": [{"text": "生成一张图片：深色背景的物流仪表盘概念图，青色高光"}],
        }],
        "generationConfig": {
            "responseModalities": ["IMAGE"],
            "imageConfig": {"aspectRatio": "16:9", "imageSize": "1K"},
        },
    })
    save_images(result, "lite-native")
    ```
  </Tab>
</Tabs>

图片位于 `candidates[0].content.parts[]` 的 `inlineData` 中：`mimeType` 是图片格式，`data` 是 Base64 数据。

### 用本地图片编辑

原生格式把本地图片编码为 `inlineData`，与编辑指令放在同一条消息的 `parts` 中。下面把图片改为 9:16 竖版：

<Tabs>
  <Tab title="cURL">
    ```bash theme={null}
    IMAGE=lite-generate-1.png   # 替换为你的图片路径

    # 生成 Base64 并用 jq 写入请求文件（需要 jq 1.6 及以上）
    base64 < "$IMAGE" | tr -d '\n' > image.b64

    jq -n --arg mime "$(file --mime-type -b "$IMAGE")" --rawfile data image.b64 '{
      contents: [{
        role: "user",
        parts: [
          {text: "把这张产品图改成 9:16 竖版海报，保留产品外观，上方留出标题空间"},
          {inlineData: {mimeType: $mime, data: $data}}
        ]
      }],
      generationConfig: {
        responseModalities: ["IMAGE"],
        imageConfig: {aspectRatio: "9:16"}
      }
    }' > lite-edit-request.json

    curl --fail-with-body --max-time 300 \
      "https://api.laozhang.ai/v1beta/models/gemini-3.1-flash-lite-image:generateContent" \
      -H "Authorization: Bearer $LAOZHANG_API_KEY" \
      -H "Content-Type: application/json" \
      --data-binary @lite-edit-request.json \
      -o lite-native-edit.json

    python nano_banana.py lite-native-edit.json lite-native-edit
    ```
  </Tab>

  <Tab title="Python">
    ```python theme={null}
    from nano_banana import post, read_image, save_images

    mime, data = read_image("lite-generate-1.png")  # 替换为你的图片路径

    result = post("/v1beta/models/gemini-3.1-flash-lite-image:generateContent", {
        "contents": [{
            "role": "user",
            "parts": [
                {"text": "把这张产品图改成 9:16 竖版海报，保留产品外观，上方留出标题空间"},
                {"inlineData": {"mimeType": mime, "data": data}},
            ],
        }],
        "generationConfig": {
            "responseModalities": ["IMAGE"],
            "imageConfig": {"aspectRatio": "9:16"},
        },
    })
    save_images(result, "lite-native-edit")
    ```
  </Tab>
</Tabs>

## 批量与高频调用

Lite 适合高调用量任务，但生产吞吐仍取决于 Google 上游配额、实时容量和账号状态，本文档不承诺固定的并发上限。批量接入时：

1. 复用 HTTP 连接和 SDK 客户端，不要为每张图重新创建。
2. 对 429、5xx 和网络错误使用带随机抖动的指数退避。
3. 客户端超时后，先在[调用日志](/faq/call-logs)中确认请求状态，再决定是否重试，避免重复生成和重复扣费。
4. HTTP 200 但没有图片的响应已按一次调用扣费，不要自动重试；修改提示词或参考图后再提交，见[避免没有图片的扣费](/api-capabilities/nano-banana-image#避免没有图片的扣费)。
5. 记录模型 ID、HTTP 状态码、耗时和请求时间，便于排查。
6. 持续高并发上线前，把峰值并发、日调用量和输入图片大小发送到 [hi@laozhang.ai](mailto:hi@laozhang.ai)，确认容量。

## 常见问题

### Lite 支持 2K、4K 或搜索接地吗？

都不支持，Lite 只输出 1K，也不能开启 Google 搜索接地。三个模型的请求结构相同，切换时只改模型 ID：

* 需要 0.5K–4K、14 种比例或网页与图片搜索接地：用 Nano Banana 2（`gemini-3.1-flash-image`）。
* 需要 1K–4K 和网页搜索接地、处理复杂构图：用 Nano Banana Pro（`gemini-3-pro-image`）。

### Lite 适合多图合成或保持人物一致吗？

不太适合。Lite 一次最多接受 14 张物体参考图，但 Google 的参考图表没有为它列出人物一致性参考和风格参考，并说明它不针对多参考图和多轮连续编辑优化。

换颜色、调背景这类单图局部修改可以用 Lite。要把多张图合成一张，或让同一人物在一组图中保持一致，改用 Nano Banana 2，它最多接受 10 张物体图和 4 张人物图。

### Lite 的模型 ID 是正式版吗？

是。Google 模型页把 `gemini-3.1-flash-lite-image` 列为稳定版，它没有 `-preview` 后缀，直接按原样使用即可。

### Lite 可以高并发调用吗？

可以用于高调用量任务，但没有公布的固定并发上限，上线前按[批量与高频调用](#批量与高频调用)处理重试、超时并确认容量。

## 相关文档

* [Nano Banana 总览](/api-capabilities/nano-banana-image)：五个模型对比、两种调用方式与共用代码
* [Nano Banana 2 API](/api-capabilities/nano-banana2-image)：0.5K–4K、14 种比例与搜索接地
* [Nano Banana Pro API](/api-capabilities/nano-banana-pro-image)：复杂构图与专业成片
* [Nano Banana 图片编辑 API（Standard）](/api-capabilities/nano-banana-image-edit#迁移到新模型)：把 `gemini-2.5-flash-image` 迁移到 Lite 或 Nano Banana 2
* [Gemini 协议](/api-reference/gemini)：原生请求结构与 SDK 配置
* [Google 图像生成文档](https://ai.google.dev/gemini-api/docs/image-generation)：Gemini 3.1 Flash Lite Image 的官方能力说明与参考图上限
* [Google Gemini 3.1 Flash Lite Image 模型页](https://ai.google.dev/gemini-api/docs/models/gemini-3.1-flash-lite-image)：稳定版 ID 与支持的能力


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.