OpenAI 图像提示词指南深度解读:把图像生成从抽奖变成工程

从模型选型、六步迁移到八条提示词原则:OpenAI 把图像生成写成了一份可测量的工程手册

Posted by iceyao on Friday, September 11, 2026

引言:这份文档不是"咒语集"

OpenAI 的官方文档里有一页叫 Image prompting。标题看起来像一篇提示词教程,但通读一遍会发现,它把最大的篇幅给了三件跟"写提示词"关系不大的事:模型怎么选、参数怎么定、旧模型怎么迁。

这不是文档写得偏题,而是它诚实地反映了一件事:图像模型的提示词技巧,已经被压缩成了八条原则;真正让人踩坑的地方,转移到了工程侧。指南里给出的两个时间点很能说明压力——gpt-image-1 计划于 2026 年 10 月 23 日关停,gpt-image-1.5 计划于 2026 年 12 月 1 日关停。凡是还在用这两代模型的生产系统,接下来几个月都得做同一件事:迁移。

所以这份文档的正确读法是把它当成一份换代窗口里的工程手册:先决定用哪档模型,再按六步把迁移做成可验证的动作,最后才是提示词怎么写、结果怎么验收。

OpenAI 图像提示词指南的结构地图

一、先选模型,再调参数

两档模型:flare 与 sunburst

gpt-image-2.5 提供两个模型,定位截然不同:

模型 定位 画质 适合谁
gpt-image-2.5-flare 小模型,优化速度 与 GPT Image 2 相当 想先跑通流程、对延迟敏感的路径
gpt-image-2.5-sunburst 基础模型,优化质量 高于 GPT Image 2 对画质有硬要求的生成与精确编辑

两者都支持生成、编辑与透明背景,也都改进了精确编辑与主体保持。指南给的选型建议很克制,但有一条判断贯穿始终:

  • 新工作流:速度优先先试 flare,画质优先先试 sunburst;
  • 迁移工作流:从你当前的画质档位出发——现用 GPT Image 2 且质量已达标,先试 flare 拿延迟收益;质量不达标,先试 sunburst 拿质量;
  • 交叉验证:sunburst 过了质量关,再用同一组 prompt 试 flare;如果延迟没有改善,就保留 sunburst,不要为了"更快"牺牲画质。

参数清单与两个容易忽略的约束

参数部分信息密度很高,值得逐项记住:

  • quality:auto(默认)、low、medium、high、xhigh、max;
  • size:auto 或自定义,常用值包括 1024x1024、1536x1024、1024x1536、2048x2048、2048x1152,以及 4K 的 3840x2160 / 2160x3840;
  • background:auto、opaque、transparent。

自定义分辨率有几条硬约束:每条边不超过 3840px、两条边都必须是 16 的倍数、长短边比不超过 3:1、总像素在 655,360 到 8,294,400 之间。超过 3,686,400 像素(也就是 2560x1440)的输出属于实验性特性——这意味着"我要一张 4K 海报"这种需求,在参数层面就已经有明确的可行边界。

透明背景还有一条容易被漏掉的细节:必须显式请求 background="transparent" 并配 PNG 或 WebP,然后去检查解码后的 alpha 通道——头发、玻璃、阴影和边缘是最容易露馅的地方。output_compression 只对 JPEG / WebP 生效,对 PNG 无效。

最关键的一句警告

指南里最不像"教程"、也最值得抄进团队规范的一句话是:

同一个 quality 标签,不代表同样的画质,也不代表同样的响应时间。

这句话解释了为什么文档反复强调"在你自己的 workload 上测量"。quality 是模型内部的档位名称,不是跨模型的绝对量纲;从 GPT Image 2 迁到 2.5 时,把 medium 直接平移过去,很可能既得不到相同的画质,也得不到预期中的延迟。工程上的正确姿势是:先定模型,再调 quality,一次只改一个设置,并且在有代表性的输入上记录质量、延迟与成本。

gpt-image-2.5 两档模型选型与弃用时间线

二、迁移六步:把"换模型"变成可回滚的动作

指南给出的迁移流程是六步,顺序本身带着判断:

  1. 保存基线:收好有代表性的生产 prompt 与参考图(难改的编辑、精确文字、人脸、产品几何、透明素材),记录模型、参数与当时的输出。没有基线,后面所有比较都是感觉。
  2. 选第一候选:要延迟就 flare,GPT Image 2 达不到要求就 sunburst。首轮只换模型,prompt、参考图、尺寸、输出格式全部保持不变。
  3. 验收完整结果:检查指令遵循、身份与产品保持、文字准确、有没有意外改动、透明是否正常;同一请求重复多次看一致性;跑完整的编辑序列,而不是只测其中一步。
  4. 质量过关后再测延迟:只有质量站得住,才切到 flare 比延迟;质量掉下来就回退,不做妥协。
  5. 单变量调参:先比 quality 档位,再考虑改提示词;统计典型响应与最慢响应、失败率与重试次数、每张可用图的成本;xhigh / max 只在确实解决未满足需求时使用。另外,不要假设"更快 = 更便宜",先确认当前定价。
  6. 按工作流放量:一个工作流一个工作流地迁,先切小流量、监控、再逐步扩大,并保留上一代模型随时回滚。

六步之外,还有一条被单独拎出来的红线:反复编辑仍然会漂移。如果某个区域必须保持像素级一致,正确做法是把已批准的编辑合成回原图,而不是继续用提示词去"锁住"它。这是官方明确承认的提示词能力边界。

图像模型迁移的六步工作流

三、八条提示词原则:分三组更好记

指南把提示词技巧压缩成八条原则。按功能分成三组,记起来更省力。

组一:定义结果(原则 1–2)

先说清结果与用途。 是产品照片、广告,还是流程图?用途决定了构图、细节密度和比例。复杂需求不要糊成一段,按场景 / 主体 / 细节 / 约束分段写。

选可维护的格式。 短句、段落、类 JSON 结构、指令式、标签式都能用——文档明确说没有必须遵守的特殊语法。选最容易读、最容易改的那种。这一点和社区里流行的"咒语模板"叙事正好相反:可维护性优先。

组二:描述可见细节(原则 3–5)

材质、光线、颜色、介质。 需要真实感就写明 photorealistic / real photograph。相机参数(35mm、胶片质感)只是外观线索,不是物理模拟;拍夜景、低光、霓虹场景时,要给尺度、气氛和色彩,而不只是"氛围感"这种情绪词。

指定人物与动作。 取景范围、相对比例、视线方向、与物体的交互都要写。官方示例用的是"全身可见、包含脚"和"双手自然握住车把"这种具体到身体部位的描述——手部是图像生成的重灾区,写清楚能省掉大量重试。

精确控制文字。 要渲染的文字用引号包住,说明位置与字体;生僻词逐字母拼写;明确要求不要出现额外文字,输出后逐字核对拼写与可读性。小字或密集文字用 medium / high quality。

组三:编辑与迭代(原则 6–8)

变更与约束分离。 编辑时写"只改 X",再列出必须保留的部分(身份、几何、版式、光线、标签),最后声明排除项(多余文字、Logo、水印)。

给参考图分配角色。 多图输入时按编号说明每张图的用途——主体、风格、服装还是背景——并解释它们如何组合。丢一堆图让模型自己猜,是最常见的浪费。

有意识地迭代。 把上一轮输出作为下一轮的输入,一次只请求一处变更,复述要保留的细节;一旦结果开始漂移,回头重申关键约束。

八条提示词原则分为三组

四、案例矩阵:生成与编辑背后的同一条模式

指南给了 9 个生成示例和 8 个编辑示例,覆盖的场景很散,但模式很集中。

生成侧的九例分别是:控制风格与光线的纪实人像、自动咖啡机的流程信息图、渲染精确文字的街潮广告、透明背景的可复用 Logo、1969 年的历史场景、宠物独自在家的四格漫画、手机应用界面预览、细胞呼吸的科教图、以及带 TAM / SAM / SOM 数据的融资幻灯片。把这些例子放在一起看,能抽出三条共同做法:

  • 用途是第一约束:信息图、幻灯片、界面预览这类"功能性图片",描述方式更接近写规格书,而不是描述一幅画;
  • 文字一律加引号,并声明"只出现一次、不要水印";
  • 图表与密集文字用 high quality,而且要用 1536x1024 这类横向尺寸。

编辑侧的八例更能说明问题:翻译并保留版式、迁移视觉风格、保身份换服装、组合两张参考图、透明抠图、草图转写实、移除物体、把人放进场景。它们几乎都以同一句话收尾——Do not change anything else。编辑任务的难点从来不是"改什么",而是"不变什么"。

编辑提示词的三段结构

一个可以直接抄走的完整例子(Python,透明背景 Logo 生成 + 产品抠图):

from pathlib import Path
import base64
from openai import OpenAI

client = OpenAI()

# 1) 生成:透明背景、一次出 4 版
result = client.images.generate(
    model="gpt-image-2",
    prompt=(
        "Create an original logo for a local bakery called Field & Flour. "
        "Flat, vector-like shapes, strong silhouette, balanced negative space, "
        "no gradients. Fully transparent background, clean alpha edges, "
        "no backdrop, scenery, checkerboard, or watermark."
    ),
    size="1024x1536",
    quality="medium",
    background="transparent",
    output_format="png",
    n=4,
)
for i, item in enumerate(result.data, start=1):
    Path(f"logo-{i}.png").write_bytes(base64.b64decode(item.b64_json))

# 2) 编辑:抠图,同样保留 alpha 通道
result = client.images.edit(
    model="gpt-image-2",
    image=[Path("input_images/shampoo.webp")],
    prompt=(
        "Extract the product and isolate it on a fully transparent background. "
        "Preserve product geometry and label legibility exactly. "
        "No solid backdrop, checkerboard, scenery, or shadow."
    ),
    size="1024x1536",
    quality="medium",
    background="transparent",
    output_format="png",
)
Path("product-cutout.png").write_bytes(base64.b64decode(result.data[0].b64_json))

注意两个细节:生成和编辑都显式带了 background="transparent" 与 output_format="png",提示词里也都写了"不要棋盘格、不要阴影"。透明不是"没背景",它是文件里真实存在的 alpha 通道——这两件事必须同时说。

五、多轮迭代:一次只改一个条件

指南用两个序列演示多轮编辑。

广告牌序列:第一轮生成高速公路旁日落下的洗发水广告牌,精确文字 "Fresh and clean" 只出现一次、清晰可读、无水印;第二轮把上一轮输出作为输入,只改一个条件——“改成下雪的冬夜”。

儿童绘本序列:第一轮建立角色——绿色连帽外衣的森林小英雄,水彩绘本风格,木质弓只用于帮助别人;同时写下约束:原创角色、不要文字、不要水印、纯森林背景。第二轮延续故事:同一角色在冬季风暴后帮助一只受惊的松鼠,重复外观约束并明确"不要重新设计角色"。

这两个序列的差别值得琢磨:广告牌改的是环境,绘本改的是情节。但两者的操作完全一致——上一轮输出即下一轮输入,一次只改一处,关键约束每次复述。角色一致性不是靠"记住"实现的,是靠每轮把约束重新写一遍。

六、验收四问

指南最后给了一份检查清单,可以压缩成四个问题:

  1. 文字对不对:必需文字是否准确、可读、只出现一次?图表标签与元素关系是否正确?
  2. 身份有没有丢:人物身份、产品形状、标签与参考细节是否完好?
  3. 有没有越界:这次编辑是否只改了要求改的部分?
  4. 透明度是真的吗:需要透明时,文件里是不是真 alpha 通道,而不是画出来的背景?

换模型或改提示词时,还要在代表性输入上同时比较质量、延迟、成本三项——不是看榜单,也不是看质量档位的字面含义。

输出验收四问

总结:五条可复用的工程洞察

把这份指南读完,真正能带回团队的判断有五条:

一、模型换代窗口里,第一优先级是可迁移性,而不是更会写提示词。 两个旧模型在 2026 年内相继关停,文档把选型、参数与迁移流程放在提示词原则之前,顺序本身就是答案。

二、质量档位不是跨模型的绝对量纲。 同名 quality 不等于同画质、同延迟。选型应该在调 quality 之前完成,并且用自有 workload 测量——把图像生成当工程问题,而不是炼丹。

三、编辑任务的难点在"不变什么"。 八个编辑示例几乎都以 Do not change anything else 收尾。写编辑提示词时,先列保留项和排除项,再写变更项。

四、提示词有明确边界。 反复编辑会漂移;需要像素级一致的区域,用合成而不是语言。承认边界,比把提示词写得更长更有用。

五、一次只改一个变量,并且在小流量上验证。 从迁移的六步到迭代的一条约束,方法论是同一条:把不可解释的差异,压缩成可归因的实验。

一句话收束:图像生成的提示词技巧已经收敛,剩下的差距在工程纪律——你能否测准、能否回滚、能否在放量前知道自己在改什么。

「真诚赞赏,手留余香」

爱折腾的工程师

真诚赞赏,手留余香

使用微信扫描二维码完成支付