文档接口与模型

图片生成

用 gpt-image-2 生成或编辑图片:接口是 /v1/images/generations 和 /v1/images/edits,写法与 OpenAI 官方图片接口一致。

更新于

生成图片

需要 GPT 分组的密钥。图片以 base64 返回,自己解码保存:

import base64
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["MALLOW_API_KEY"],
    base_url="https://api.mallowapi.com/v1",
)

result = client.images.generate(
    model="gpt-image-2",
    prompt="清晨的木桌上放着一杯拿铁,侧光,写实摄影",
    size="1024x1024",
)
with open("latte.png", "wb") as f:
    f.write(base64.b64decode(result.data[0].b64_json))

用 curl:

curl https://api.mallowapi.com/v1/images/generations \
  -H "Authorization: Bearer $MALLOW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "gpt-image-2", "prompt": "窗台上的橘猫,水彩风格", "size": "1024x1024"}'

返回的 data[0].b64_json 就是图片内容。

编辑图片

上传一张图片,并用文字说明要怎么改:

result = client.images.edit(
    model="gpt-image-2",
    image=open("latte.png", "rb"),
    prompt="把背景换成咖啡馆的吧台",
)
with open("latte-bar.png", "wb") as f:
    f.write(base64.b64decode(result.data[0].b64_json))

参数和计费

  • size、quality 等参数沿用 OpenAI 官方图片接口的写法,可选值以官方说明为准。尺寸越大、质量越高,输出的图片 token 越多,费用越高。
  • 按 token 计费:文字输入和图片输出分别计价,单价见模型价格和 gpt-image-2 模型页。
  • 生成图片通常比文字请求慢,代码里的超时时间要留够。