AI 生图接口(GPT Image / Nano Banana) 接入教程

用程序批量出图、改图:OpenAI 生图格式,按张从积分扣

接入步骤

  1. 先想清楚:要不要用接口

    只是自己画几张图,直接用网站的「生图」页就行,订阅卡还能抵扣。要用程序一次画几十上百张、或者把生图接进自己的系统,才用这个接口;接口按张从积分扣,订阅卡不抵扣。下面三样填进程序里:

    • Base URL:https://gpt.cherrychat.org/v1(写到 /v1)
    • API Key(密钥):sk-你的密钥
    • 模型名:nano-banana-2.1(也可以换 gpt-image-2、nano-banana-2)
  2. 用 curl 画一张,拿到图片链接

    复制到终端运行,等 20–60 秒,返回的 JSON 里 "url" 就是图片地址,浏览器打开就能看、能下载。

    macOS / Linux

    curl https://gpt.cherrychat.org/v1/images/generations \
      -H "Authorization: Bearer sk-你的密钥" \
      -H "Content-Type: application/json" \
      -d '{"model": "nano-banana-2.1", "prompt": "一只橘猫坐在窗台上,写实摄影", "size": "1536x1024", "response_format": "url"}'

    Windows(PowerShell)

    $body = @{
      model = "nano-banana-2.1"
      prompt = "一只橘猫坐在窗台上,写实摄影"
      size = "1536x1024"
      response_format = "url"
    } | ConvertTo-Json
    Invoke-RestMethod -Method Post -Uri "https://gpt.cherrychat.org/v1/images/generations" `
      -Headers @{ Authorization = "Bearer sk-你的密钥" } `
      -ContentType "application/json; charset=utf-8" `
      -Body ([System.Text.Encoding]::UTF8.GetBytes($body)) -TimeoutSec 300
  3. Python:画图并存成文件

    先运行 pip install openai,把代码存成 draw.py,运行 python draw.py,同目录会多出 cat.png。不写 response_format 时返回的是 base64,代码里直接解码存盘。

    import base64
    from openai import OpenAI
    
    client = OpenAI(base_url="https://gpt.cherrychat.org/v1", api_key="sk-你的密钥", timeout=300)
    
    resp = client.images.generate(
        model="nano-banana-2.1",
        prompt="一只橘猫坐在窗台上,窗外是夜景,写实摄影",
        size="1536x1024",
    )
    with open("cat.png", "wb") as f:
        f.write(base64.b64decode(resp.data[0].b64_json))
    print("已保存 cat.png")
  4. 改图:上传一张图,说要怎么改

    改图走 /v1/images/edits,用文件上传参考图。下面把 cat.png 改成戴红围巾的版本,存成 cat-scarf.png。

    import base64
    from openai import OpenAI
    
    client = OpenAI(base_url="https://gpt.cherrychat.org/v1", api_key="sk-你的密钥", timeout=300)
    
    resp = client.images.edit(
        model="nano-banana-2.1",
        image=open("cat.png", "rb"),
        prompt="给这只猫戴上一条红色围巾,背景保持不变",
    )
    with open("cat-scarf.png", "wb") as f:
        f.write(base64.b64decode(resp.data[0].b64_json))

    curl(macOS / Linux)

    curl https://gpt.cherrychat.org/v1/images/edits \
      -H "Authorization: Bearer sk-你的密钥" \
      -F model="nano-banana-2.1" \
      -F prompt="给这只猫戴上一条红色围巾,背景保持不变" \
      -F response_format=url \
      -F image=@cat.png
  5. 张数、尺寸和价格

    n 是一次要几张(1–4),只按实际画出来的张数扣积分;size 写像素,例如 1024x1024、1536x1024(横)、1024x1536(竖),会按比例出图。每张多少积分看「模型价格」页,生图模型标着「积分 / 张」。

容易踩的坑

报错 → 原因 → 怎么办

看到的报错原因怎么办
报 400 unsupported_endpoint(不支持这个接口)用对话接口调了生图模型,或用生图接口调了对话模型生图模型用 https://gpt.cherrychat.org/v1/images/generations
等了一分钟报超时(timeout / Read timed out)程序或工具的超时太短,图还没画完就断开了把超时调到 300 秒;断开的那次不扣积分
改图报 415 或「要用 multipart/form-data 上传图片」/v1/images/edits 用了 JSON,参考图没有按文件上传照第 4 步用 SDK 的 images.edit,或 curl 的 -F image=@文件名
报 400,提示内容被拒绝(safety / moderation)描述或参考图触发了内容审核换个说法再试;被拒绝的那次不扣积分
报 402 或「余额不足」(Claude 格式显示 billing_error)账户积分不够付这次调用。API 调用只扣积分,会员卡和无限卡都不抵扣到樱桃茶·智域GPT 的「商店」充值任意金额,几秒后重试即可

教程核对于 2026-11-02。工具界面改版后可能和这里略有不同,以官方文档为准。

API 接入 · API 模型价格

Operated by UK Company CHERRYCHAT LTD · Company Number 16096119 · 客服微信 JsnonoChat · 内容由 AI 生成,请仔细甄别

樱桃茶·智域GPT

网络有点慢,正在努力加载…