作者注:OpenAI 官方开源了基于 gpt-image-2 的 Photobooth 演示项目,本文深度拆解源码、流式实现原理,并讲解如何通过 apiyi 官转通道零门槛复现该能力。
OpenAI 官方在 GitHub 上开源了 openai-imagegen-demo 项目,这是配合 gpt-image-2 发布的 Next.js 演示应用,演示了流式图像生成、肖像风格化、多风格并发等新模型独有的能力。项目地址:github.com/openai/openai-imagegen-demo。
这不是又一个 Hello World 示例,源码里藏着 OpenAI 官方推荐的 partial_images 渐进式流式输出模式,以及 /v1/images/edits 端点在多图编辑场景下的最新用法。
核心价值: 读完本文,你将彻底理解这份官方 Demo 的架构、关键参数、复现步骤,并知道在国内如何通过 apiyi 官转通道免翻墙、免等待地使用相同的 gpt-image-2 API。

openai-imagegen-demo 核心要点
| 要点 | 说明 | 价值 |
|---|---|---|
| 项目定位 | OpenAI 官方开源的 Photobooth 演示,展示 gpt-image-2 肖像风格化 | 最权威的 gpt-image-2 集成参考 |
| 技术栈 | Next.js 15 App Router + TypeScript + Tailwind + shadcn/ui | 现代 Web 技术栈,生产级可复用 |
| 核心端点 | POST /v1/images/edits,搭配 stream: true 与 partial_images |
官方首个流式图像生成 Demo |
| 模型 | gpt-image-2,质量档 high,尺寸 1024x1536(2:3 肖像) |
强调人像保真、表情还原 |
| 授权 | MIT License,可自由商用、二次开发 | 商业项目可直接集成 |
| 接入方式 | 官方需 OpenAI API Key;官转通道 apiyi.com 国内可直连 |
降低门槛、无需 VPN |
imagegen-demo 项目定位详解
openai-imagegen-demo 本质是一个交互式照相馆(Photobooth):用户上传或拍摄一张自拍,选择最多 4 种预设风格(如针织风、数字艺术、油画等),应用并发调用 gpt-image-2 的 images/edits 端点,在流式中逐步返回每种风格的成品。
与市面上常见的"文生图 Demo"不同,这份官方仓库聚焦在两个新能力上:图生图(image editing) 和 流式渐进输出(partial_images)。前者解决了"保持人物一致性"这一工程难题,后者让等待体验从 30 秒黑屏变成逐帧渐现。

imagegen-demo 项目架构解读
关键源码剖析
项目核心只有一个 API Route:app/api/photobooth/route.ts,它负责把前端的肖像图片和风格 prompt 打包后,用流式模式请求 OpenAI 的 /v1/images/edits 端点。关键请求体结构如下:
const body = {
model: "gpt-image-2",
prompt: `${style.prompt}\n\n${OPENAI_IMAGE_OUTPUT_REQUIREMENTS}`,
images: [{ image_url: imageDataUrl }],
size: "1024x1536",
quality: "high",
output_format: "png",
stream: true,
partial_images: 2,
};
三个细节值得关注:
stream: true+partial_images: 2是 gpt-image-2 独有的流式能力,服务端会推送 2 次中间帧再交付最终图images参数 接收单张或多张参考图的 data URL,支持多图融合编辑OPENAI_IMAGE_OUTPUT_REQUIREMENTS强制要求"肖像 2:3 比例、保持人物姿态与表情",这是写好图像编辑 prompt 的黄金范式
流式事件解析
Route 通过 SSE(Server-Sent Events)监听官方响应,处理以下三类事件:
image_edit.partial_image:中间帧,向前端推送style-partialimage_edit.completed:最终成品,向前端推送style-finalerror:抛出异常,前端统一捕获
前端在 React 侧用自定义 hook 维护一个 writeQueue Promise 链,确保多风格并发时事件顺序不错乱,这也是该 Demo 最具工程参考价值的部分。
imagegen-demo 快速上手
极简复现步骤
按照官方 README,完整跑通只需 5 行命令:
git clone https://github.com/openai/openai-imagegen-demo
cd openai-imagegen-demo
cp .env.example .env.local
echo "OPENAI_API_KEY=sk-xxxxx" >> .env.local
npm install && npm run dev
查看通过 apiyi 官转通道运行的完整 .env.local 配置
# 方案一:使用 OpenAI 官方 API(需境外网络 + API 配额)
OPENAI_API_KEY="sk-proj-xxxxx"
# 方案二:使用 apiyi 官转通道(国内直连、免翻墙)
OPENAI_API_KEY="your-apiyi-key"
OPENAI_BASE_URL="https://vip.apiyi.com/v1"
# 可选:组织与项目 ID
OPENAI_ORG_ID=""
OPENAI_PROJECT_ID=""
然后只需把 app/api/photobooth/route.ts 里硬编码的 endpointBase 替换为读取 process.env.OPENAI_BASE_URL ?? "https://api.openai.com/v1",即可无缝切换官方和官转通道。
const endpointBase = process.env.OPENAI_BASE_URL ?? "https://api.openai.com/v1";
const response = await fetch(`${endpointBase}/images/edits`, {
method: "POST",
headers: {
"Authorization": `Bearer ${apiKey}`,
"Content-Type": "application/json",
},
body: JSON.stringify(body),
});
接入建议: 国内开发者直接跑 OpenAI 官方 Demo 会遇到三大障碍(网络、API 配额、支付方式)。推荐通过 API易 apiyi.com 官转通道获取兼容 Key,把
OPENAI_BASE_URL指向https://vip.apiyi.com/v1即可在本地一键启动,流式事件和参数完全对齐官方。
imagegen-demo 接入方案对比

| 接入方案 | 网络要求 | 开通速度 | 单次价格 | SDK 改动量 |
|---|---|---|---|---|
| OpenAI 官方直连 | 需境外网络 | 需绑卡 + 等待审核 | 按 token 计费(约 $0.15+/张) | 零改动 |
| fal 企业 API | 境外访问 | 需签企业协议 | 按 token 计费 | 轻度改造 |
| apiyi 官转通道 | 国内直连 | 注册即用 | 按 token 透明计费 | 仅改 base_url |
| apiyi 官逆通道 | 国内直连 | 注册即用 | 固定 $0.03 / 张 | 仅改 model 名 |
方案解读
OpenAI 官方直连分析: 官方通道在合规性和 SLA 上保持绝对领先,是 imagegen-demo 的默认目标环境。但国内运行需翻墙、需要国际信用卡、API 额度审核周期长。相比之下,apiyi 官转通道在网络可达性和开通速度上更适合验证期和国内生产环境。
fal 企业 API 分析: fal 在 2026 年 4 月 21 日同步发布了 gpt-image-2 的企业端点,在高并发 SLA 上表现出色。但面向企业客户,独立开发者接入门槛高。对于想在本地跑通 imagegen-demo 的开发者,apiyi 更轻量。
apiyi 官转 vs 官逆差异: 官转意味着 apiyi 透传你的请求到 OpenAI 官方 API,计费、SLA、功能与官方完全一致,适合商用场景;官逆则是通过逆向 ChatGPT 网页端实现,价格固定 $0.03/张更便宜,适合原型验证。两种通道在 apiyi 平台并行提供,开发者可按需切换。
对比说明: 上述数据综合自 OpenAI 官方定价、fal 企业发布稿以及
docs.apiyi.com技术文档,可通过 API易 apiyi.com 实测验证。
gpt-image-2 关键参数详解(来自 imagegen-demo 源码)
基于 imagegen-demo 的 lib/constants.ts,以下是官方推荐的 gpt-image-2 默认参数组合:
| 参数 | Demo 默认值 | 说明 | 调整建议 |
|---|---|---|---|
| model | gpt-image-2 |
当前最新图像模型 | 保持不变 |
| size | 1024x1536 |
2:3 肖像比例 | 社媒横图改 1536x1024 |
| quality | high |
最高画质档 | medium/low 降本 |
| output_format | png |
支持透明背景 | Web 场景可用 webp 省流量 |
| stream | true |
开启 SSE 流式 | 实时应用必选 |
| partial_images | 2 |
推送 2 次中间帧 | 最大 3,等待体验 vs 带宽权衡 |
Prompt 工程最佳实践
Demo 的 OPENAI_IMAGE_OUTPUT_REQUIREMENTS 常量是一段极具参考价值的 prompt 模板:
"portrait orientation (2:3 aspect ratio), preserve the exact people, poses, facial expressions, and scene composition as faithfully as possible"
这段话揭示了 gpt-image-2 图像编辑的黄金范式:
- 显式指定比例:即使设置了
size参数,prompt 里仍要重申比例,提高命中率 - 强调保真要求:
preserve the exact ...是保持人物一致性的关键咒语 - 列举保真维度:人物、姿态、表情、场景分别点名,越具体还原度越高

常见问题 FAQ
Q1: openai-imagegen-demo 是什么项目?
openai-imagegen-demo 是 OpenAI 官方开源在 GitHub 的 Photobooth 演示应用,使用 Next.js 15 + TypeScript + gpt-image-2 实现"上传肖像 → 选择风格 → 流式生成多风格图片"的完整工作流。它是目前最权威的 gpt-image-2 images/edits 端点集成参考,采用 MIT 协议允许商用。
Q2: imagegen-demo 和其他图像生成 Demo 有什么区别?
区别主要在两点:一是使用了 gpt-image-2 全新的 /v1/images/edits 端点做图生图(而非传统 DALL-E 的文生图),能保持人物一致性;二是启用了 stream: true + partial_images 流式能力,让用户看到图片逐步渲染的过程,而不是 30 秒黑屏等待。其他社区 Demo 多为 DALL-E 3 文生图,不具备这两大能力。
Q3: imagegen-demo 发布于什么时候?
该仓库随 OpenAI 在 2026 年 4 月 21 日发布的 ChatGPT Images 2.0 同步开源。配合 gpt-image-2 模型在 API 和 Codex 中的正式上线,官方希望通过这个 Demo 降低开发者集成门槛,目前 README 仍在持续更新。
Q4: imagegen-demo 最适合哪些应用场景?
主要适合以下四类场景:
- 社交应用换装 / 换风格: 用户上传自拍生成国风、油画、赛博朋克版本
- 电商商品图风格统一: 批量把产品照转成品牌统一视觉风格
- 会议 / 活动 AI 照相馆: 线下活动的互动拍照装置
- 教学 Demo / 黑客松原型: 快速演示 gpt-image-2 新能力
Q5: 如何通过 API 快速运行 imagegen-demo?
推荐通过 apiyi 官转通道快速复现:
- 访问 API易 apiyi.com 注册账号并创建 API Key
- Clone 仓库:
git clone https://github.com/openai/openai-imagegen-demo - 在
.env.local写入OPENAI_API_KEY和OPENAI_BASE_URL=https://vip.apiyi.com/v1 - 修改 route.ts 让
endpointBase读取process.env.OPENAI_BASE_URL npm install && npm run dev即可在localhost:3000看到效果
apiyi 支持 gpt-image-2、Nano Banana Pro、Flux 等多种主流图像模型的统一接入,方便在本地快速对比和切换。
Q6: imagegen-demo 的 partial_images 参数如何工作?
partial_images 指定服务端在最终图返回前推送多少次中间帧。Demo 默认值为 2,意味着单次生成会经历"首次草图 → 二次优化 → 最终成品"三个阶段。每个中间帧都通过 SSE 事件 image_edit.partial_image 推送,前端可实时渲染,避免 30 秒长等待的黑屏体验。该参数最大支持 3,但中间帧越多会增加带宽开销。
Q7: 国内开发者如何零门槛跑通 imagegen-demo?
国内直接运行官方 Demo 会遇到三大障碍:网络访问 OpenAI API、需要国际信用卡绑卡、API 配额审核周期长。通过 apiyi 官转通道可一次性解决:
- 在
apiyi.com注册账号,支持支付宝 / 微信充值 - 获取兼容 OpenAI 协议的 API Key
- 在
.env.local设置OPENAI_BASE_URL=https://vip.apiyi.com/v1 route.ts读取该环境变量,其他代码零改动
整个过程约 5 分钟,无需翻墙,计费与 OpenAI 官方透明对齐。
Q8: imagegen-demo 有哪些已知限制?
客观说明当前限制:
- 单图生成时长: 高质量档(
quality: high)单张约 20-30 秒,批量需并发优化 - 人物一致性非 100%: 复杂姿态或多人场景仍可能出现轻微变形
- 成本考量: OpenAI 官方按 token 计费,单张高质量约 $0.15 起,批量场景建议改用
medium质量或使用 apiyi 官逆通道($0.03/张) - 风格预设有限: Demo 仅内置 ~10 种风格,需要自行扩展
lib/styles.ts - 移动端拍照兼容性: iOS Safari 摄像头权限在首次访问时可能需手动授权
openai-imagegen-demo 核心要点 Key Takeaways
- OpenAI 官方开源: 配合 gpt-image-2 发布的权威 Demo,MIT 协议可商用
- 聚焦图生图能力: 使用
/v1/images/edits端点,保持人物一致性的工程范式 - 流式渲染黑科技:
stream: true+partial_images: 2把等待从黑屏变为渐进渲染 - Next.js 15 全栈: App Router + SSE 架构是图像生成应用的现代最佳实践
- 国内接入捷径: 通过 API易 apiyi.com 官转通道,修改一个 base_url 即可直连
- Prompt 黄金范式:
preserve the exact ...是保真度关键咒语,值得抄进自己项目 - 官转 vs 官逆双通道: 商用选官转(与 OpenAI 对齐),验证选官逆(固定 $0.03/张)
总结
openai-imagegen-demo 是理解 gpt-image-2 新能力的最佳入口,核心价值有三:
- 权威参考: 官方亲手写的集成范式,参数、prompt、流式架构一次看齐
- 生产级代码: Next.js 15 + SSE + 多风格并发,可直接复用到自己项目
- 国内可复现: 通过 apiyi 官转通道,国内开发者 5 分钟跑通官方 Demo
如果你想立即尝试 gpt-image-2 的流式图像编辑能力,推荐直接通过 API易 apiyi.com 获取兼容 Key,克隆 openai-imagegen-demo 并把 OPENAI_BASE_URL 指向 https://vip.apiyi.com/v1,即可在本地还原 OpenAI 官方演示效果。
延伸阅读 Related Articles
如果你对 gpt-image-2 和 openai-imagegen-demo 感兴趣,推荐继续阅读:
- 📘 gpt-image-2 Reverse API 哪里有?3 分钟接入 apiyi 官逆通道 – 了解官逆通道 $0.03/张的低成本方案
- 📊 gpt-image-2 vs Nano Banana Pro 图像模型横评 – 对比主流图像模型的能力差异
- 🚀 gpt-image-2 应用场景 6 大行业落地指南 – 探索电商、教育、社媒等真实使用案例
📚 参考资料
-
OpenAI imagegen-demo 官方仓库: 完整源码、README 与安装文档
- 链接:
github.com/openai/openai-imagegen-demo - 说明: 第一手源码与安装指南,了解 gpt-image-2 集成范式的权威起点
- 链接:
-
OpenAI 官方 gpt-image-2 API 文档: 模型参数、端点、计费说明
- 链接:
developers.openai.com/api/docs/models/gpt-image-2 - 说明: 查阅所有支持的参数、价格、限流规则
- 链接:
-
OpenAI ChatGPT Images 2.0 发布页: 新模型能力介绍
- 链接:
openai.com/index/introducing-chatgpt-images-2-0/ - 说明: 了解 gpt-image-2 的设计思路、核心能力和使用场景
- 链接:
-
apiyi gpt-image-2 官转通道文档: 国内直连接入指南
- 链接:
docs.apiyi.com/en/api-capabilities/gpt-image-2-all/overview - 说明: 获取兼容 Key、base_url 配置和价格详情
- 链接:
作者: APIYI 技术团队
技术交流: 欢迎在评论区分享你的 imagegen-demo 实战案例,更多文档可访问 API易 docs.apiyi.com 文档中心
