来源:互联网 更新时间:2026-07-22 07:12
调用返回成功,却愣是在目录里找不到图片?这通常不是模型没画出来,而是代码忘了把 b64_json 解码并写入文件。编辑接口的坑更大:参考图、蒙版和提示词全提交了,但蒙版尺寸、格式或透明通道不合要求,结果就是一片空白。OpenAI 图片 API 当前的做法是把单次生成与编辑放在 Image API,连续多轮修改放在 Responses API。第一次接入时,建议先走 Image API,验证链路最短。
当前官方页面把 gpt-image-2 标为最新 GPT Image 模型。如果只需要根据一段提示词生成一张图,或拿现有图片做一次编辑,直接使用 Image API。需要在对话里反复改图、保留前一轮上下文,才使用带 image_generation 工具的 Responses API。另外,部分组织在调用 GPT Image 前可能需要完成 API Organization Verification,权限报错时应先检查组织状态,不要反复更换模型名称。

总览里有两项能力:
export OPENAI_API_KEY="你的密钥";Windows PowerShell 可执行 setx OPENAI_API_KEY "你的密钥",随后新开一个 PowerShell 窗口。不要把真实密钥写进 Python 文件、截图或版本库。
OpenAI() 客户端时不需要再传入明文密钥,SDK 能从环境读取。
setx 后仍在旧终端测试,也会读不到新值。
python -m pip install --upgrade openai,再创建 outputs 文件夹。项目中不要使用名为 openai.py 的文件,避免覆盖 SDK 包名。
python -c "from openai import OpenAI; print('ok')" 输出 ok。
images.generate 发起单次生成。generate_image.py。
client.images.generate,再读取返回数组第一项的 b64_json。
from pathlib import Path
import base64
from openai import OpenAI
client = OpenAI()
result = client.images.generate(
model="gpt-image-2",
prompt=(
"A clean editorial still life of a ceramic cup beside a notebook, "
"soft morning window light, no text, no logo"
),
size="1024x1024",
quality="low",
)
output = Path("outputs/first-image.png")
output.write_bytes(base64.b64decode(result.data[0].b64_json))
print(output.resolve())
outputs/first-image.png 能被图片查看器正常打开且文件大小不为 0。
result.data 为空时先打印错误对象和请求 ID,不要直接取下标。

Generate Images 段落同时给出 Image API 和 Responses API 两条路线。新手先保持 Image API 选项,确认生成、解码、落盘三步都通,再考虑多轮上下文。
images.generate 或 images.edit 的参数列表。
quality="low",成品再切到 medium 或 high。常用尺寸包括方形 1024x1024、横图 1536x1024 和竖图 1024x1536。gpt-image-2 还接受满足约束的自定义分辨率:最长边不超过 3840 像素,两条边都是 16 的倍数,长短边比例不超过 3:1,总像素位于 655360 到 8294400 之间。
gpt-image-2 传 background="transparent",当前模型不支持该选项。
output_format 与 output_compression 参数。

这张页面要看两处:上方列出尺寸、质量、格式、压缩和背景选项;提示框明确说明 gpt-image-2 当前不接受透明背景。尺寸表还能用于排查自定义分辨率为什么被拒绝。
images.edit。edit_image.py,并把 reference.png 放在同一目录。
from pathlib import Path
import base64
from openai import OpenAI
client = OpenAI()
with open("reference.png", "rb") as reference:
result = client.images.edit(
model="gpt-image-2",
image=reference,
prompt=(
"Keep the cup shape and camera angle. Change the table to dark oak, "
"add soft evening light, no text, no logo."
),
size="1024x1024",
quality="low",
)
Path("outputs/edited-image.png").write_bytes(
base64.b64decode(result.data[0].b64_json)
)
edited-image.png 保留提示词要求的参考图特征,同时完成指定改动。
gpt-image-2 会以高保真方式处理输入图,不接受自定义 input_fidelity;不要靠添加该参数解决构图偏差。

Edit Images 段落列出三种任务:修改现有图片、使用一张或多张参考图生成新图、上传蒙版指定替换区域。先确认自己的目标属于哪一类,提示词才不会同时要求“完全保留”和“彻底重画”。
client.images.edit 的 image、mask 和 prompt 参数。
client.responses.create 的 tools 参数。
tools=[{"type": "image_generation"}];第二轮通过 previous_response_id 连接上一轮,再提交新的修改要求。action 保持 auto 时由模型决定生成或编辑,也可设为 generate;只有上下文里已有图片时才强制 edit。
image_generation_call,后续轮次在上一张图的基础上变化。
action="edit" 会返回错误;先完成一轮生成,或把 action 改回 auto。
image_generation_user_error 不应原样自动重试,应先修改提示词、图片或参数。
moderation_blocked 时先判断拦截发生在输入还是输出阶段,修改不合适的提示或输入图;不要通过无限重试消耗额度。
gpt-image-2 请求透明背景。七麦数据官网网页地址 七麦数据官方入口在线首页
问卷星官方网站入口地址 问卷星网页版在线使用
币安Binance官方中文网站 币安App最新版下载及新手注册指南
闲鱼的严选验货在哪里看?闲鱼严选和验货宝哪个可靠
PokePay加密卡2026完整指南:申请开卡全攻略+多场景应用技巧
淘宝直播如何看回放在哪里看?怎么查看淘宝直播回放
摩托车活塞环性能如何
为何比特币BTC价格跌破7.3万美元?一文拆解影响近期比特币行情的五大原因
索尼限时赠送PS Plus Premium七日会员,需手
ThinkBook系列最新价格全解析:2026年选购避坑与实时询价指南
迷你网名古风男生霸气(精选100个)
豆包AI专业版使用教程【新手必看】
文雅简易网名男生可爱(精选100个)
GPT5.6惨遭切脑,Fable 5回归要变弱鸡版?
《梦幻西游》特殊鬼怪怎么抓-隐藏变异鬼应对要点
币圈十大实用工具:从实时行情监控到数据分析、资产管理
王者荣耀「西行封妖记」【孙权-仙扇使者】6月25日上线!
闲鱼严选和验货宝哪个可靠?闲鱼的验货宝怎么样,,
币安杀入美股市场,重头戏bStocks还没来
陈姓和杨姓网名大全男生(精选100个)
手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc