接口指南 · 图片
GPT 图片生成与编辑
文生图使用 JSON,图生图使用 multipart/form-data。图片生成是耗时请求,请等待完整结果,并检查能否下载和解码。
可选模型
| 模型 ID | 说明 |
|---|---|
| gpt-image-2 | 本站已接入的上游图片路由;不承诺固定速度或质量排序 |
| gpt-image-2.5 | 本站已接入的上游图片路由;不承诺固定速度或质量排序 |
| gpt-image-2.5-flare | 本站已接入的上游图片路由;不承诺固定速度或质量排序 |
| gpt-image-2.5-sunburst | 本站已接入的上游图片路由;不承诺固定速度或质量排序 |
文生图
POST /v1/images/generations,Content-Type: application/json。
curl --max-time 360 https://api.hygoi.com/v1/images/generations \
-H "Authorization: Bearer $IGO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-image-2","prompt":"白色背景上的蓝色圆形,简洁,无文字。","n":1,"size":"1024x1024","response_format":"b64_json"}' \
-o image-response.json
图生图与编辑
POST /v1/images/edits,发送真实图片文件,不是服务器内网路径。让 curl 自动生成 multipart 的 Content-Type 与 boundary。
curl --max-time 360 https://api.hygoi.com/v1/images/edits \
-H "Authorization: Bearer $IGO_API_KEY" \
-F 'model=gpt-image-2' \
-F 'prompt=保留主体,将背景改成浅蓝色。' \
-F 'image=@input.png;type=image/png' \
-F 'n=1' -F 'size=1024x1024' -F 'response_format=b64_json' \
-o image-response.json
参数与价格
| 参数 | 建议与限制 |
|---|---|
| model | 使用上表完整模型 ID |
| prompt | 非空的生成或编辑说明 |
| n | 建议 1;避免未经确认的批量提交 |
| size | 1K: 1024x1024;2K: 2048x2048;4K: 4096x4096 |
| response_format | b64_json 或 url;依上游实际返回字段处理 |
| image | 仅 /images/edits:multipart 图片文件 |
当前每张 1K $0.04、2K $0.08、4K $0.10,分组加价倍率 1。请明确填写上表方形档位;未列出的尺寸可能落入默认计费分支,勿自行推断价格。请求档位不等于严格的输出像素保证,上游可能返回如 1254×1254 的实际图片;2K/4K 的最终像素与可用性仍受上游限制。本文不将本站价格标注为官方定价。
下载与完整解码(Python)
安装 requests、Pillow 后执行。兼容返回 base64 或 URL。不要将带签名链接放入公开日志。
import base64
import io
import json
from pathlib import Path
import requests
from PIL import Image
body = json.loads(Path("image-response.json").read_text())
if body.get("error"):
raise RuntimeError(body["error"])
item = body["data"][0]
if item.get("b64_json"):
data = base64.b64decode(item["b64_json"], validate=True)
elif item.get("url"):
response = requests.get(item["url"], timeout=(15, 120))
response.raise_for_status()
data = response.content
else:
raise RuntimeError("响应中没有可用图片")
with Image.open(io.BytesIO(data)) as image:
image.verify()
with Image.open(io.BytesIO(data)) as image:
image.load()
print(image.format, image.size)
Path("output-image").write_bytes(data)
超时、结果与保存
建议图片读取超时 360 秒,并结合实际业务设置上限。不要因客户端超时便自动重试:先检查控制台记录,上游可能仍在执行。普通图片接口在本次接入中按完整 JSON 结果处理,不要默认具有逐张 SSE 推送能力。结果链接可能有有效期,需要长期使用请及时下载到自己的存储;本站没有统一保证所有图片永久保存或固定 5 小时删除。
最近更新:2026 年 10 月 24 日 · 参数、价格与可用性以本站当前配置为准。