当前位置: 首页 > news >正文

GPT image-2 怎么调用?2026 完整接入教程 + 踩坑实录

上周接了个小活,甲方要做批量生成商品主图的工具。需求很明确:传一段文字描述,出一张高质量商品图。我第一反应是 DALL·E 3,但试了几张发现文字渲染还是拉胯,英文勉强能看,中文直接乱码。然后想起 OpenAI 前阵子放出来的 GPT image-2 —— 就是 ChatGPT 里那个画图贼强的模型,现在 API 终于开放了。折腾了两天,踩了不少坑,总算跑通了整个流程,写篇文章记录一下。

GPT image-2 是 OpenAI 2026 年开放 API 的最新图像生成模型,通过 gpt-image-1 端点调用,支持文字渲染、风格控制和透明背景输出,生成质量比 DALL·E 3 有明显提升。下面是完整的接入方案和我踩过的坑。

先说结论

对比项DALL·E 3GPT image-2 (gpt-image-1)
文字渲染英文勉强,中文基本废英文准确,中文可用
风格可控性一般,prompt 要写很长强,短 prompt 也能出好图
透明背景不支持支持(output_format=png)
图片编辑需要单独用 edit 端点同一端点支持生成+编辑
价格(1024×1024)~$0.04按 token 计费,约 $0.02-0.07
API 端点/v1/images/generations/v1/images/generations

环境准备

Python 3.9+,装最新版 openai SDK:

pipinstallopenai>=1.75.0

注意版本,老版本 SDK 不支持gpt-image-1的部分参数,我一开始用的 1.68 就报了参数错误,升级后才好。

方案一:基础文生图

最简单的调用方式,和 DALL·E 3 的接口几乎一样,换个 model 参数就行:

fromopenaiimportOpenAI client=OpenAI(api_key="your-key",base_url="https://api.ofox.ai/v1"# 聚合接口,一个 Key 调所有模型)result=client.images.generate(model="gpt-image-1",prompt="一只橘猫坐在赛博朋克风格的霓虹灯街道上,旁边有一个写着「深夜食堂」的招牌,招牌文字清晰可读",size="1024x1024",quality="high",output_format="png",n=1)# 返回的是 base64 编码的图片数据importbase64 image_data=base64.b64decode(result.data[0].b64_json)withopen("cat_cyberpunk.png","wb")asf:f.write(image_data)print("图片已保存")

跑出来的效果说实话惊到我了,「深夜食堂」四个字居然真的是对的,笔画没乱。DALL·E 3 画中文基本就是鬼画符。

几个关键参数说明:

  • qualitylowmediumhigh,价格差不少,测试阶段用 low 就行
  • output_formatpng支持透明背景,jpeg体积小,webp也支持
  • size:支持1024x10241024x1536(竖图)、1536x1024(横图)、auto

方案二:图片编辑(局部重绘)

这个是我觉得 GPT image-2 最实用的能力 —— 传一张图进去,告诉它改哪里:

fromopenaiimportOpenAIfrompathlibimportPathimportbase64 client=OpenAI(api_key="your-key",base_url="https://api.ofox.ai/v1")# 读取原图image_path=Path("product_photo.png")image_data=base64.standard_b64encode(image_path.read_bytes()).decode("utf-8")result=client.images.edit(model="gpt-image-1",image=[{"type":"input_image","image_url":f"data:image/png;base64,{image_data}",}],prompt="把背景换成纯白色,保持商品主体不变,添加柔和的阴影效果",size="1024x1024",quality="high",)edited_image=base64.b64decode(result.data[0].b64_json)withopen("product_white_bg.png","wb")asf:f.write(edited_image)

做电商抠图换背景简直好用,之前要用 remove.bg + PS 手动调,现在一个 API 调用搞定。

方案三:透明背景 + 批量生成

做商品主图最常见的需求 —— 生成透明背景的图,方便后期合成:

fromopenaiimportOpenAIimportbase64importtime client=OpenAI(api_key="your-key",base_url="https://api.ofox.ai/v1")products=["一瓶极简风格的护肤精华液,磨砂玻璃瓶身,金色瓶盖","一双白色运动鞋,侧面视角,微微悬浮","一个黑色真皮钱包,半打开状态,45度角俯拍",]fori,descinenumerate(products):result=client.images.generate(model="gpt-image-1",prompt=f"{desc},透明背景,产品摄影风格,柔和的工作室灯光",size="1024x1024",quality="high",output_format="png",# 必须 png 才支持透明通道background="transparent",# 关键参数)img=base64.b64decode(result.data[0].b64_json)withopen(f"product_{i+1}.png","wb")asf:f.write(img)print(f"第{i+1}张生成完成")time.sleep(1)# 别太快,容易触发限流

background="transparent"这个参数是 GPT image-2 新加的,DALL·E 3 没有。生成出来直接就是透明底,不用再后处理。

踩坑记录

说几个我实际踩到的坑。

坑 1:返回格式变了

DALL·E 3 默认返回url(一个临时链接),GPT image-2 默认返回b64_json。我一开始还按老代码去取result.data[0].url,结果拿到 None,debug 了半小时才发现。如果你确实想要 URL,需要显式传response_format="url",但官方文档说 URL 会在一小时后过期,建议还是用 base64 自己存。

坑 2:quality 参数对价格影响很大

GPT image-2 的计费是按 token 算的,不是按张。high质量的 1024×1024 大概消耗 4000-8000 token,low只要 1000-2000。我第一天测试没注意,全用 high,一天下来烧了好几十块。测试阶段真的用 low 就够了。

坑 3:中文 prompt 的玄学

虽然说支持中文文字渲染,但 prompt 里中文描述太长的时候,偶尔会出现文字错误。一个 workaround 是把需要渲染的文字用引号括起来,并且单独强调一下:

# 不太稳定的写法prompt="画一个咖啡店招牌,上面写着今日特惠拿铁半价"# 更稳定的写法prompt='画一个咖啡店招牌,上面写着「今日特惠 拿铁半价」,文字必须清晰准确,每个汉字都要正确'

坑 4:并发限制

GPT image-2 的 rate limit 比文本模型严格不少。我用 asyncio 开了 10 个并发,直接被 429 了。后来改成 3 个并发 + 每次间隔 2 秒,才稳定下来。批量生成的话建议做个简单的队列。

调用链路

整个调用流程其实很简单,画个图看一下:

OpenAI SDK

路由转发

生成图片

解码保存

你的代码

API 聚合网关

gpt-image-1 模型

base64 编码返回

本地 PNG/JPEG 文件

ofox.ai 是一个 AI 模型聚合平台,兼容 OpenAI API 协议,一个 Key 可以调用 GPT-5、Claude Opus 4.6、Gemini 3 等 50+ 模型,也包括 gpt-image-1。改个 base_url 就能用,不用折腾鉴权的事。

小结

GPT image-2 的 API 比 DALL·E 3 强了一个档次,文字渲染和透明背景这两个能力做电商图、营销素材、UI 素材都很实用。价格按 token 计费,小批量用其实不贵,大批量注意控制 quality 参数。

那个商品主图工具已经上线了,甲方还挺满意的。唯一的槽点是生成速度偏慢,high 质量的图大概要 10-15 秒,比 DALL·E 3 慢一些,但质量确实好,这个 trade-off 我能接受。

http://www.jsqmd.com/news/685626/

相关文章:

  • 父母发出什么样的光,孩子便绽放什么样的光芒
  • [深度解析] 兼容 X86/ARM 与多模态 NPU:基于 GB28181/RTSP 的工业级 AI 视频中台架构设计
  • 如何判断一个关键词值不值得做、能不能做得上去?|SEO 实战全流程
  • UltraRAG:基于MCP的轻量级RAG开发框架,让复杂检索生成像搭积木一样简单
  • 一维GAN实战:从零构建学习X²函数的生成对抗网络
  • 2026年口碑好的诸城矿山脱水设备/诸城化工脱水设备/脱水设备源头工厂推荐 - 品牌宣传支持者
  • 五步拿到认证——《知识产权资产成熟度评价认证白皮书》的流程、产品与费用
  • Phi-3.5-mini-instruct多语言MMLU子集对比:中文82.1% vs 英文79.6%实测数据
  • Ollama与量化模型在本地LLM开发中的实践
  • 树莓派CM4核心板DIY载板,如何彻底解决那个烦人的低电压警告?
  • 面试官:什么是RAG?为什么大模型要先“查资料”,再回答问题?
  • 企业级Wi-Fi 6E接入点LWR-X8460技术解析与应用
  • 关键词排名上去了,为什么还是没询盘?深度拆解+实操解决(谷歌SEO新手必看)
  • SONOFF CAM Slim Gen2 室内安防摄像头评测与功能解析
  • Qwen3-4B-Thinking生产环境:单用户高并发场景下的256K上下文稳定性验证
  • B站视频转文字:从海量视频中提炼知识精华的智能工具
  • 昇腾深度学习计算模式
  • Qwen3.5-9B-AWQ-4bit数据库课程设计辅助:从ER图到SQL语句生成
  • 2026年权威圆钢厂家TOP5推荐:天津消防管、天津焊管、天津管材、天津螺旋管、天津螺旋钢管、天津螺纹钢、天津角钢选择指南 - 优质品牌商家
  • React+Firebase+Alan AI开发语音控制待办事项应用
  • 现代图形API中的描述符设计与无绑定渲染优化
  • 设计师效率翻倍!手把手教你用JavaScript给Illustrator写个随机填色插件
  • 认证不是一张纸——《知识产权资产成熟度评价认证白皮书》的六大应用场景与案例模拟
  • 深入掌握AMD锐龙硬件调试:SMUDebugTool核心机制与实战应用
  • 零基础上手MiniCPM-V-2_6:Ollama一键部署,轻松实现多语言OCR
  • 2026年面了几十个公司,才知道大模型Agent岗到底想招什么样的人?
  • 【Kimi K2.6技术解析】月之暗面MoE旗舰的架构原理与能力全景
  • 2026年知名的加厚防水防尘袋PVC袋/磨砂袋批发PVC袋/透明袋现货PVC袋/PVC袋横向对比厂家推荐 - 行业平台推荐
  • Qwen3-4B-Instruct部署案例:从PDF整书解析到代码库问答实操手册
  • Phi-4-mini-flash-reasoning惊艳效果展示:同一题Temperature=0.1 vs 0.6对比