外观
GPT Image 2
gpt-image-2 支持文生图和图片编辑,并使用 OpenAI 兼容的 size 与 quality 控制项。
API 形式
| 操作 | Endpoint | 模式 |
|---|---|---|
| 图片生成 | POST /v1/images/generations | 同步 |
| 图片生成任务 | POST /v1/async/images/generations | 异步 |
| 图片编辑 | POST /v1/images/edits | 同步 |
| 图片编辑任务 | POST /v1/async/images/edits | 异步 |
价格
每张图片的积分由输出尺寸档位和质量档位决定。quality=auto 按 high 计费,size=auto 默认进入 1K 档。
| 尺寸档 | 长边 | low | medium | high / auto |
|---|---|---|---|---|
| 1K | <= 1536px | 1 | 4 | 14 |
| 2K | <= 2048px | 2 | 17 | 67 |
| 4K | <= 3840px | 4 | 34 | 133 |
请求显示的 costCredits 等于矩阵值乘以 n。
请求字段
通用字段放在请求体一级,下面列出的模型专用参数放进 providerOptions。
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
model | string | 是 | gpt-image-2. 模型 ID,区分大小写。 |
prompt | string | 是 | 描述主体、构图、风格或需要修改的内容。Pixapi 最多保留前 2,000 字符;生成和编辑都要提供非空提示词。 |
n | integer | 否 | 默认 1,只支持整数 1。 |
size | string | 否 | 填写 宽x高 像素尺寸,例如 1024x1024。 默认 auto。自定义尺寸:宽高为 16 的倍数,长边 ≤ 3840,宽高比不超过 3:1,总像素 655,360–8,294,400。 |
image | string / string[] | 编辑时必填 | 公网 HTTP(S) 图片 URL 或 URL 数组;/images/edits 必填。 最多 14 个 URL,不支持 Base64 输入。 |
quality | string | 否 | auto(默认)、low、medium、high,较高质量可能耗时更长。 |
providerOptions | object | 否 | 模型专用选项,详见下表。 |
providerOptions
本表所有字段都写在 providerOptions 内,不要与 model 并列。
| 字段 | 类型 | 说明 |
|---|---|---|
output_format | string | 输出图片格式:png(默认,支持透明背景)、jpeg(文件更小,不含 Alpha)、webp(支持透明背景)。 |
background | string | 背景模式:auto(默认)、opaque(不透明)、transparent(透明)。transparent 只能与 output_format: "png" 或 output_format: "webp" 搭配,JPEG 不支持 Alpha 通道。 |
moderation | string | 内容审核强度:auto(默认)或 low(更宽松)。 |
output_compression | integer | 输出压缩强度 0–100,仅对 jpeg 和 webp 输出生效。 |
mask_url | string | 局部重绘的公网 PNG 遮罩 URL。必须传 image,且与第一张图尺寸一致;透明像素表示编辑区域。使用带 Alpha 通道、低于 4 MB 的 PNG。 |
nsfw_check | boolean | 是否审核提示词和图片,默认 false。 |
输入规则
Pixapi 只接受 1 张输出、最多 14 张参考图。输出尺寸请通过 size 指定。
示例
bash
curl https://api.pixapi.ai/v1/images/generations \
-H "Authorization: Bearer $PIXAPI_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2",
"prompt": "A polished product photo of a ceramic coffee cup",
"n": 1,
"size": "1024x1024",
"quality": "high"
}'py
import os
import requests
response = requests.post(
"https://api.pixapi.ai/v1/images/generations",
headers={
"Authorization": f"Bearer {os.environ['PIXAPI_KEY']}",
"Content-Type": "application/json",
},
json={
"model": "gpt-image-2",
"prompt": "A polished product photo of a ceramic coffee cup",
"n": 1,
"size": "1024x1024",
"quality": "high"
},
)
response.raise_for_status()
print(response.json())js
const response = await fetch('https://api.pixapi.ai/v1/images/generations', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.PIXAPI_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"model": "gpt-image-2",
"prompt": "A polished product photo of a ceramic coffee cup",
"n": 1,
"size": "1024x1024",
"quality": "high"
}),
});
if (!response.ok) {
throw new Error(await response.text());
}
console.log(await response.json());go
package main
import (
"bytes"
"fmt"
"io"
"net/http"
"os"
)
func main() {
body := []byte(`{
"model": "gpt-image-2",
"prompt": "A polished product photo of a ceramic coffee cup",
"n": 1,
"size": "1024x1024",
"quality": "high"
}`)
req, err := http.NewRequest(
"POST",
"https://api.pixapi.ai/v1/images/generations",
bytes.NewBuffer(body),
)
if err != nil {
panic(err)
}
req.Header.Set("Authorization", "Bearer "+os.Getenv("PIXAPI_KEY"))
req.Header.Set("Content-Type", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
result, _ := io.ReadAll(resp.Body)
fmt.Println(string(result))
}自定义尺寸限制见 GPT Image。
