跳转到主要内容
POST
/
v1
/
chat
/
completions
curl --request POST \ --url https://api.apiyi.com/v1/chat/completions \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data ' { "model": "gpt-image-2-vip", "messages": [ { "role": "user", "content": "横版 16:9 电影画幅,黄昏时的海边老灯塔,写实风格" } ] } '
{
  "id": "chatcmpl-abc123",
  "object": "chat.completion",
  "created": 1702855400,
  "model": "gpt-image-2-vip",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "![image](https://r2cdn.copilotbase.com/r2cdn2/xxxxx.png)"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 25,
    "completion_tokens": 150,
    "total_tokens": 175
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.apiyi.com/llms.txt

Use this file to discover all available pages before exploring further.

对话式端点特点一个端点同时支持文生图与带参考图改图,方便直接传入在线图片 URL(CDN 链接或 base64 data URL)作为参考图,并能天然做多轮迭代。右侧 Playground 填入 API Key 后,直接从下拉选择 example(文生图 / 带参考图改图 / 多轮迭代)即可。如果你希望同一套代码兼容官转和官逆,建议使用 /v1/images/generations/v1/images/edits(OpenAI Images API 标准格式)。
选择模式
  • 仅输入文本 messages文生图
  • messages 中加入 image_url(URL 或 base64 data URL)→ 带参考图改图
  • 保留 assistant 历史消息继续追问 → 多轮迭代改图
gpt-image-2-all 的区别:调用方式完全一致,把 model 换成 gpt-image-2-vip、在 prompt 里加上目标尺寸描述即可。⚠️ 对话式端点没有独立的 size 字段——尺寸通过 prompt 描述传达(与 -all 的写法一致);要严格锁尺寸,请用 文生图接口size 字段。
🖥️ 浏览器 Playground 限制(响应含 base64 时)本端点通常以 markdown URL 形式返回图片(![image](https://...)),Playground 显示正常。如果模型返回的是 base64 data URL(嵌在 message content 文本里),或你在 image_url 里传入了大 base64 输入图,响应字符串可能达数 MB,浏览器 Playground 可能弹出 请求时发生错误: unable to complete request ——实际请求已经成功,只是浏览器无法显示这么长的内容。推荐做法:遇到此提示时,直接复制下方”代码示例”到本地运行,程序会从 content 中正确解析出图片链接或 base64 数据。

代码示例

Python(文生图)

import requests

API_KEY = "sk-your-api-key"

response = requests.post(
    "https://api.apiyi.com/v1/chat/completions",
    headers={"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"},
    json={
        "model": "gpt-image-2-vip",
        "messages": [
            {"role": "user", "content": "横版 16:9 电影画幅,黄昏时的海边老灯塔,写实风格"}
        ]
    },
    timeout=300  # 保守值,吸收长尾 + 图片上传/下载耗时
).json()

print(response["choices"][0]["message"]["content"])

Python(带参考图改图)

import requests
import base64

API_KEY = "sk-your-api-key"

# 可用 HTTPS URL,也可以用 base64 data URL
with open("photo.png", "rb") as f:
    data_url = "data:image/png;base64," + base64.b64encode(f.read()).decode()

response = requests.post(
    "https://api.apiyi.com/v1/chat/completions",
    headers={"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"},
    json={
        "model": "gpt-image-2-vip",
        "messages": [
            {
                "role": "user",
                "content": [
                    {"type": "text", "text": "把这张图改成水彩画风"},
                    {"type": "image_url", "image_url": {"url": data_url}}
                ]
            }
        ]
    },
    timeout=300
).json()

print(response["choices"][0]["message"]["content"])

cURL(文生图)

curl -X POST "https://api.apiyi.com/v1/chat/completions" \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image-2-vip",
    "messages": [
      {"role": "user", "content": "横版 16:9,赛博朋克雨夜街景,霓虹招牌写着 Hello World"}
    ]
  }'

cURL(带参考图改图)

curl -X POST "https://api.apiyi.com/v1/chat/completions" \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image-2-vip",
    "messages": [
      {
        "role": "user",
        "content": [
          { "type": "text", "text": "把这张图改成水彩画风" },
          { "type": "image_url", "image_url": { "url": "https://example.com/photo.png" } }
        ]
      }
    ]
  }'

Node.js(文生图)

const API_KEY = "sk-your-api-key";

const response = await fetch("https://api.apiyi.com/v1/chat/completions", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${API_KEY}`,
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    model: "gpt-image-2-vip",
    messages: [
      { role: "user", content: "1024x1024 方形 LOGO,极简猫咪线条" }
    ]
  })
});

const data = await response.json();
console.log(data.choices[0].message.content);

OpenAI SDK(推荐,Python)

from openai import OpenAI

client = OpenAI(
    api_key="sk-your-api-key",
    base_url="https://api.apiyi.com/v1"
)

resp = client.chat.completions.create(
    model="gpt-image-2-vip",
    messages=[{
        "role": "user",
        "content": "生成一张横版 16:9 的国画风格水墨山水"
    }]
)
print(resp.choices[0].message.content)

参数说明速查

参数类型必填说明
modelstring固定填 gpt-image-2-vip
messagesarray对话消息数组;支持 system / user / assistant 三种 role
messages[].contentstring | array纯文本字符串(文生图)或多模态数组(带图改图)
streamboolean是否流式。本模型为一次性出图,建议保持 false
多模态 content 片段content 为数组时):
字段类型必填说明
typeenumtextimage_url
textstring条件type=text 时必填
image_url.urlstring条件type=image_url 时必填。支持 https://...data:image/png;base64,...
详细的字段说明与可选值请查看右侧 Playground。下拉 “Example” 可在 文生图 / 带参考图改图 / 多轮迭代 之间切换。

响应格式

对话式端点返回标准的 OpenAI chat.completion 响应结构,生成的图片以 URL 或 data URL 形式出现在 choices[0].message.content 文本中
{
  "id": "chatcmpl-abc123",
  "object": "chat.completion",
  "created": 1702855400,
  "model": "gpt-image-2-vip",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "![image](https://r2cdn.copilotbase.com/r2cdn2/xxxxx.png)"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 25,
    "completion_tokens": 150,
    "total_tokens": 175
  }
}
解析建议:用正则 https?://[^\s)]+\.(png|jpg|jpeg|webp)data:image/[^\s)]+content 文本中抽取图片链接即可。

对话式端点的优势

同端点双能力

不需要在 generations / edits 两个端点之间切换,统一走一个端点

方便传入在线 URL

image_url 直接接受 CDN 图片地址或 base64 data URL,无需 multipart 上传

天然多轮迭代

保留 assistant 历史消息即可继续精调,逻辑与 ChatGPT 一致

SDK 生态最完整

OpenAI 官方 SDK、LangChain、各类 Chat 前端都能直接对接
要严格锁尺寸:对话式端点没有独立 size 字段。需要严格输出 30 档常见尺寸时,请改走 文生图接口/v1/images/generations)。

相关资源

模型概览(含完整 size 表)

30 档 size 完整对照表、定价、技术规格

文生图 API(/v1/images/generations)

OpenAI Images API 兼容端点,传 size 锁定输出尺寸

图片编辑 API(/v1/images/edits)

multipart/form-data 上传参考图改图

姐妹模型 gpt-image-2-all

不需要锁尺寸时调用方式一致,出图更快

授权

Authorization
string
header
必填

在 API易控制台获取的 API Key

请求体

application/json
model
enum<string>
默认值:gpt-image-2-vip
必填

模型名称,固定为 gpt-image-2-vip

可用选项:
gpt-image-2-vip
messages
object[]
必填

对话消息数组。支持多轮对话与多模态内容。

stream
boolean
默认值:false

是否流式返回。本模型为一次性出图,建议保持 false。Playground 不支持流式预览。

temperature
number
默认值:1

采样温度(对生图影响较小,保持默认即可)

必填范围: 0 <= x <= 2

响应

成功生成图片(图片链接或 data URL 会出现在 choices[0].message.content 中)

id
string
示例:

"chatcmpl-abc123"

object
string
示例:

"chat.completion"

created
integer

创建时间戳(Unix 秒)

示例:

1702855400

model
string
示例:

"gpt-image-2-vip"

choices
object[]
usage
object