接口说明
GPT Image 2 是 OpenAI 推出的新一代 AI 生图模型,理解能力强、画面细节丰富,既能通过文字描述作画,也可依托参考图进行二次修改、风格复刻与创意调整,出图质量和写实度大幅提升。

本接口接入 OpenAI GPT Image 2 图像生成模型,内置强大 AI 绘图能力,支持文生图、参考图编辑两大核心模式,可快速生成高清优质创意图像。
基础信息
- 接口域名:
https://www.yuntts.com
- API 前缀:
/api/v1
- 请求方法:
POST
- 认证方式:
Bearer Token
GPT Image 2 生图接口
接口地址
POST https://www.yuntts.com/api/v1/gpt-image2/generate
请求头
| 字段名 |
类型 |
必填 |
描述 |
| Authorization |
string |
是 |
Bearer Token |
| Content-Type |
string |
是 |
application/json |
请求参数
| 参数 |
类型 |
必填 |
说明 |
prompt |
string |
是 |
图片描述提示词 |
aspect_ratio |
string |
否 |
图片比例,默认 1:1,可选 3:2、2:3、4:3、3:4、16:9、9:16 |
reference_images |
array |
否 |
参考图片URL数组(参考图编辑模式) |
x_channel |
string |
否 |
通道选择,默认 default |
请求示例
模式1:文生图
{
"prompt": "一只可爱的橘猫在阳光明媚的花园里玩耍,高清摄影风格,细节丰富,色彩鲜艳",
"aspect_ratio": "16:9",
"x_channel": "premium"
}
模式2:参考图编辑
{
"prompt": "将这张图片转换为赛博朋克风格,添加霓虹灯效果,夜晚场景",
"aspect_ratio": "1:1",
"reference_images": [
"https://example.com/reference.jpg"
],
"x_channel": "official"
}
响应格式
成功响应
{
"code": 200,
"message": "任务提交成功",
"data": {
"task_id": "gpt_image2_69eca0e4747e3",
"status": "submitted"
}
}
失败响应
{
"code": 400,
"message": "请输入提示词",
"data": null
}
GPT Image 2 任务状态查询接口
接口地址
POST https://www.yuntts.com/api/v1/gpt-image2/status
请求头
| 字段名 |
类型 |
必填 |
描述 |
| Authorization |
string |
是 |
Bearer Token |
| Content-Type |
string |
是 |
application/json |
请求参数
| 参数 |
类型 |
必填 |
说明 |
task_id |
string |
是 |
任务ID,由生图接口返回 |
请求示例
{
"task_id": "gpt_image2_69eca0e4747e3"
}
响应格式
处理中响应
{
"code": 200,
"message": "success",
"data": {
"task_id": "gpt_image2_69eca0e4747e3",
"status": "processing",
"progress": 50,
"prompt": "一只可爱的橘猫在阳光明媚的花园里玩耍...",
"aspect_ratio": "16:9",
"created_at": "2026-04-25 19:18:35",
"updated_at": "2026-04-25 19:18:36"
}
}
完成响应
{
"code": 200,
"message": "success",
"data": {
"task_id": "gpt_image2_69eca0e4747e3",
"status": "completed",
"progress": 100,
"prompt": "一只可爱的橘猫在阳光明媚的花园里玩耍...",
"aspect_ratio": "16:9",
"result_image_url": "https://www.yuntts.com/uploads/da569727-cb54-4d4a-a017-053ad34ab014.png",
"created_at": "2026-04-25 19:18:35",
"updated_at": "2026-04-25 19:18:36"
}
}
失败响应
{
"code": 200,
"message": "success",
"data": {
"task_id": "gpt_image2_69eca0e4747e3",
"status": "failed",
"progress": 0,
"prompt": "一只可爱的橘猫在阳光明媚的花园里玩耍...",
"aspect_ratio": "16:9",
"error_message": "API请求失败: 超时",
"created_at": "2026-04-25 19:18:35",
"updated_at": "2026-04-25 19:19:00"
}
}
状态说明
| 状态 |
描述 |
pending |
任务等待中 |
submitted |
任务已提交到API |
processing |
图片生成中 |
completed |
生成完成 |
failed |
生成失败 |
完整调用流程
步骤1:提交生图任务
curl -X POST https://www.yuntts.com/api/v1/gpt-image2/generate
-H "Content-Type: application/json"
-H "Authorization: Bearer YOUR_API_KEY"
-d '{
"prompt": "一只可爱的橘猫在花园里玩耍",
"aspect_ratio": "16:9",
"x_channel": "premium"
}'
步骤2:轮询任务状态
curl -X POST https://www.yuntts.com/api/v1/gpt-image2/status
-H "Content-Type: application/json"
-H "Authorization: Bearer YOUR_API_KEY"
-d '{"task_id": "gpt_image2_69eca0e4747e3"}'
步骤3:获取生成结果
当状态为 completed 时,从响应中获取 result_image_url。
错误码说明
| 错误码 |
消息 |
说明 |
| 400 |
请输入提示词 |
prompt 参数不能为空 |
| 400 |
余额不足,请先充值 |
用户余额不足以支付生成费用 |
| 401 |
无效的 API 密钥 |
API 密钥错误或已过期 |
| 500 |
API密钥未配置 |
系统未配置 MXAPI API 密钥 |
| 500 |
任务创建失败 |
数据库操作失败 |
| 500 |
积分扣除失败 |
余额扣除操作失败 |
| 500 |
API提交失败 |
调用远程 API 失败 |
6. 注意事项
- 认证:所有请求都需要在请求头中添加
Authorization: Bearer YOUR_API_KEY
- 轮询间隔:建议轮询间隔为 3-5 秒,避免过于频繁的请求
- 参考图片:参考图片 URL 必须是可访问的公共 URL
- 价格:生成图片会消耗用户积分,具体价格可在系统设置中配置
- 通道选择:不同通道可能影响生成速度和稳定性
- 图片比例:选择合适的比例以获得最佳视觉效果
支持的图片比例
| 比例 |
适用场景 |
1:1 |
社交媒体头像、产品展示 |
3:2 |
风景照片、横幅 |
2:3 |
人像照片、社交媒体帖子 |
4:3 |
传统照片、文档 |
3:4 |
竖版照片、移动设备 |
16:9 |
宽屏展示、视频封面 |
9:16 |
竖屏视频、Instagram故事 |
示例代码
JavaScript 示例
// 提交生图任务
async function submitGenerateTask() {
const response = await fetch('https://www.yuntts.com/api/v1/gpt-image2/generate', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_API_KEY'
},
body: JSON.stringify({
prompt: '一只可爱的橘猫在花园里玩耍',
aspect_ratio: '16:9'
})
});
const result = await response.json();
if (result.code === 200) {
const taskId = result.data.task_id;
startPolling(taskId);
}
}
// 轮询任务状态
function startPolling(taskId) {
const interval = setInterval(async () => {
const response = await fetch('https://www.yuntts.com/api/v1/gpt-image2/status', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_API_KEY'
},
body: JSON.stringify({ task_id: taskId })
});
const result = await response.json();
if (result.code === 200) {
const status = result.data.status;
if (status === 'completed') {
clearInterval(interval);
console.log('生成完成:', result.data.result_image_url);
} else if (status === 'failed') {
clearInterval(interval);
console.error('生成失败:', result.data.error_message);
}
}
}, 3000);
}
Python 示例
import requests
import time
API_KEY = 'YOUR_API_KEY'
BASE_URL = 'https://www.yuntts.com/api/v1'
def submit_task():
url = f'{BASE_URL}/gpt-image2/generate'
headers = {
'Content-Type': 'application/json',
'Authorization': f'Bearer {API_KEY}'
}
data = {
'prompt': '一只可爱的橘猫在花园里玩耍',
'aspect_ratio': '16:9'
}
response = requests.post(url, headers=headers, json=data)
result = response.json()
if result['code'] == 200:
return result['data']['task_id']
return None
def check_status(task_id):
url = f'{BASE_URL}/gpt-image2/status'
headers = {
'Content-Type': 'application/json',
'Authorization': f'Bearer {API_KEY}'
}
data = {'task_id': task_id}
response = requests.post(url, headers=headers, json=data)
return response.json()
# 调用示例
task_id = submit_task()
if task_id:
while True:
status = check_status(task_id)
if status['code'] == 200:
task_status = status['data']['status']
if task_status == 'completed':
print('生成完成:', status['data']['result_image_url'])
break
elif task_status == 'failed':
print('生成失败:', status['data']['error_message'])
break
time.sleep(3)
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)