4 月 21 号 OpenAI 放了个大招——GPT-Image-2。TechCrunch 说它"出人意料地擅长生成文字",推特上到处是"设计已死"的震惊体。
刷了两天我就烦了。全是对比图和情绪输出,没几个人说清楚到底怎么用。
行,那我来。踩了两天坑,掏心窝子整理出来。
它到底是个啥
先说清楚几个概念,不然容易搞混:
- ChatGPT Images 2.0:你在 ChatGPT 聊天界面里直接让它画图,用的就是这个
- gpt-image-2:模型名字。但调 API 时端点叫
gpt-image-1——对,是 1 不是 2,别问我为什么
跟 DALL-E 3 最核心的区别:这货会"想"。
OpenAI 官方博客原话说的是"visual reasoning"。翻译成人话——DALL-E 3 是扩散模型,噪点去噪一步莽到底,根本不管布局合不合理。GPT-Image-2 把图像拆成 Token 序列,跟大模型处理文字一样先规划再动手。
结果就是——文字渲染准了,构图可控了,你能跟它"对话式"改图了。华尔街见闻那篇分析说得比较到位:"从渲染工具进化到了战略设计系统"。我觉得夸大了,但方向没错。
三种用法,按需选
用法一:ChatGPT 里直接画
最简单。打开 ChatGPT,跟它说"帮我画一张 XX"就行。
几个提效技巧:
给参考图。别光用文字描述。上传一张你想要的风格的图,说"参考这张的色调和构图,帮我画 XX",效果比纯文字 prompt 好太多。
分步迭代。别试图一句 prompt 搞定一切。先让它出个大概,然后说"把文字放大""背景换成深蓝""左边的人物删掉"——一步步调,比重写 prompt 快得多。
中文文字渲染。这是它的杀手锏。把要渲染的文字用引号括起来强调:
海报标题写「深夜食堂」四个字,楷体,白色,居中放在画面上方 1/3 位置
实际效果如下——四个字清晰可读,风格、位置、字体全部到位:
准确率比 DALL-E 3 高了不止一个档次。根据 nanowow.ai 那篇对比测评的数据,文字渲染准确率从 DALL-E 3 的约 60% 直接拉到了 99%。我自己测了 20 组中文文字,只有 1 组出了问题(是个生僻字)。
用法二:API 调用
开发者看这里。代码很简单:
from openai import OpenAI
client = OpenAI()
result = client.images.generate(
model="gpt-image-1", # 注意:不是 gpt-image-2
prompt="一只橘猫坐在赛博朋克街道上",
size="1024x1024",
quality="medium", # low / medium / high
output_format="png"
)
# 默认返回 b64_json,不是 URL!
import base64
image_data = base64.b64decode(result.data[0].b64_json)
with open("cat.png", "wb") as f:
f.write(image_data)
几个关键参数:
| 参数 | 选项 | 说明 |
|---|---|---|
| quality | low / medium / high | low 最便宜但糙,high 最贵最精 |
| size | 1024x1024 等 | 支持 3:1 到 1:3 的各种比例 |
| output_format | png / jpeg / webp | png 支持透明背景 |
| response_format | b64_json / url | 默认 b64_json,很多人栽这儿 |
用法三:图片编辑(局部重绘)
这个功能很多人没注意到。你可以上传一张图,让它只改局部:
result = client.images.edit(
model="gpt-image-1",
image=open("original.png", "rb"),
prompt="把背景从白色换成渐变蓝色,其他不变"
)
掘金上有篇文章专门测了商业设计场景,说主体锁定"让产品图批量生产成为可能"。我自己试了——换背景、改文字、调颜色,主体确实不太会变形。做电商的同学可以重点关注。
钱的问题
先别急着 high quality 全开。看看账单怎么算的:
| 质量 | 大约 Token 消耗 | 单张成本(估算) |
|---|---|---|
| low | ~1000 tokens | ~$0.04 |
| medium | ~2000 tokens | ~$0.08 |
| high | ~4000-8000 tokens | ~$0.12-0.24 |
输入部分:30.00/百万 Token。
我第一天不懂事,high quality 跑了 200 张测试——晚上看账单差点没缓过来。腾讯云开发者社区那篇接入教程也提了这事儿,说"计费模式是最容易翻车的地方"。他们没说错。
建议:开发测试阶段一律 quality="low",正式环境再开 medium 或 high。
我踩过的 5 个坑
坑 1:SDK 版本
openai 包要 ≥ 1.75.0。老版本调 gpt-image-1 会报参数错误,报错信息还挺误导人的——你以为是 prompt 写错了,其实是 SDK 太旧。
pip install --upgrade openai
坑 2:返回格式
默认返回 b64_json,不是 URL。代码里直接取 result.data[0].url 拿到的是 None。要么加 response_format="url",要么解码 base64。
我在这个坑里白瞎了半小时。气得够呛。
坑 3:生成速度
high quality 一张图要 60-90 秒。做批量生成时记得加超时和重试逻辑,别用默认的 30 秒 timeout。
坑 4:并发限制
Rate limit 比较严。批量跑别逞能一口气发几十个请求上去——429 报错会让你怀疑人生。老老实实用队列控制并发数。
坑 5:竖排文字
中文渲染虽然进步大,但竖排文字还是不太行。如果需要竖排效果,建议用后期工具叠加,别指望模型直接搞定。
跟 DALL-E 3 到底差多少
既然 OpenAI 说 5 月 12 日弃用 DALL-E 3 API,那做个对比也算有参考价值:
| 维度 | DALL-E 3 | GPT-Image-2 |
|---|---|---|
| 中文文字 | 经常缺笔画少偏旁 | 95%+ 准确率 |
| 最高分辨率 | 1792×1024 | 原生 4K |
| 编辑能力 | 基础重绘 | 主体锁定 + 参考图 |
| 生成速度 | 10-15 秒 | 60-90 秒(high) |
| 透明背景 | 不支持 | 原生支持 |
| 风格一致性 | 每次都不一样 | 可锁参考图风格 |
Creative Bloq 那篇评论说得挺到位:GPT-Image-2 不是为了"画得更好",是为了"用得更顺"。
一句话总结:慢了,但好用了。
如果你的场景是"快速出大量草图"——DALL-E 3 在被弃用前可能还有些优势。
如果你要"精确控制、文字渲染、风格一致"——GPT-Image-2 没有对手。
几个值得试的场景
我这两天测下来,觉得以下场景 ROI 最高:
- 电商产品图:上传产品图 → 换背景 → 加文字标签 → 出图。透明背景输出 + 主体锁定,流程很顺
- 公众号 / 自媒体封面:给它文章标题 + 风格描述,一次出一张 80 分封面,比找素材快
- UI 原型图:描述页面布局,它能出高保真度的 UI 界面,用来给领导看方案或者写 PRD 够了
- 多语言营销素材:同一张海报,让它换成英文/日文/韩文版本。文字渲染能力在这个场景里就是降维打击
- 信息图表:给数据和要求,它能画出结构清晰的信息图。MindStudio 的测评里也重点提了这个场景——不是特别精美,但够用
迁移清单
DALL-E 3 API 5 月 12 日弃用。如果你在用,现在该动了:
- 升级
openaiSDK 到 ≥ 1.75.0 - 把
model="dall-e-3"改成model="gpt-image-1" - 检查返回值处理:默认从 URL 变成了 b64_json
- 调整超时设置:生成时间从 ~15s 变成 60-90s
- 重新评估成本预算:计费模式从按张改成按 Token
- 测试中文文字渲染效果——这部分是纯提升,不需要改代码
搞定这几项,基本无痛迁移。
以上就是我两天实测整理出来的干货。不吹不黑,工具好不好用要看你拿它干嘛。
有啥具体问题评论区聊。踩了新坑我也会更新。