跳转到主要内容

GPT Image 2.6 API 导出 SVG 矢量图:svg.model 怎么填、一张多少钱

GPT Image 2.6 SVG 收两笔钱:中间位图和写代码的模型。1024 图标 medium 在 OpenAI 约 $0.054–0.057,复杂场景常两三分钟后 502。

LaoZhang AI Team发布于18 分钟阅读
文章目录
GPT Image 2.6 导出 SVG 的两笔费用:中间位图约 $0.043,gpt-6.1-terra 写代码约 $0.011–0.014,每张合计约 $0.054–0.057

GPT Image 2.6 用 API 导出 SVG 矢量图,是在 POST /v1/images/generations 上把 output_format 设成 "svg",模型用 gpt-image-2.6-flare 或 gpt-image-2.6-sunburst,再加一个 OpenAI 指南里没写的 svg 对象,在 svg.model 里指定一个能看图的文本模型,比如 gpt-6.1-terra。返回的 data[0].b64_json 解码后就是 .svg 文件。截至 2026 年 11 月 5 日(发布第二天),openai Python 库从 3.46.0 起直接支持这个参数,更早的版本要用 extra_body 传。

SVG 不是图像模型直接画出来的。API 先让图像模型画一张中间位图,再让 svg.model 指定的文本模型看着这张图写出 SVG 代码,所以一次请求有两笔费用。按 OpenAI 官方价,一张 1024×1024 的图标在 quality: "medium" 下,中间位图约 $0.043,gpt-6.1-terra 写代码约 $0.011–0.014,合计约 $0.054–0.057。写作模型换成更贵的型号,第二笔会成倍增加。

它适合图标、logo 和简单插画。细节多的整幅场景,比如一整间咖啡店内景,在老张 API 文档团队的测试里多数等了两三分钟后收到 502;这类图留在 PNG 更省事。拿到文件后还要看一眼文字是活的 <text> 还是已经转曲:三份真实的 2.6 SVG 里两种情况都有,决定了你能不能直接改字。

SVG 怎么来的:先画中间位图,再由写作模型写代码

GPT Image 2.6 的 SVG 输出分两段完成,两段各有自己的模型、参数和用量。OpenAI 图片生成指南的 SVG 一节说,API 先生成一张 reference image,再用它产出 SVG。这里的 reference image 不是你上传的参考图:它是 API 内部用顶层 model(Flare 或 Sunburst)先画的一张位图,你不用传,响应里也拿不到,下文称它为中间位图。

第二段由一个文本模型完成,下文称写作模型(OpenAI 文档里叫 authoring model),就是 svg.model 填的那个。OpenAI 开发者论坛的 SVG 讨论帖里,回帖者指出这一步是让一个带视觉能力的语言模型"看图写 SVG",不是算法描摹。所以同一张中间位图交给不同的写作模型,出来的路径数量、细节和成功率都不一样,费用也按写作模型自己的单价算。

参数也按这两段分工。quality 和 complexity 只作用于中间位图:前者决定这张位图的画质和 token 数,后者按 OpenAI 图片生成 API 参考的说法控制"规划画面花多少计算",在 SVG 输出里同样只管中间位图。svg.reasoning.effort 只管写作模型思考多少,和画面复杂度无关。响应里也有两块用量:usage 是图像模型的 token,svg_usage 是写作模型的 input_tokens、output_tokens、reasoning_tokens 和 model。

SVG 生成分两段:图像模型按 quality 和 complexity 画中间位图,记入 usage;svg.model 指定的写作模型看图写 SVG 代码,记入 svg_usage

同一个 output_format 字段还能填 "gif" 生成循环动图,那是另一套参数,见 GPT Image 2.6 用 API 生成 GIF。

用 Python 或 curl 导出 SVG:从请求到存成 .svg 文件

能跑通的请求只比普通生图多两个字段:output_format: "svg" 和 svg 对象。下面以 OpenAI 直连为例,用老张 API 时只换 base_url 和 key,差别在后面的线路一节。

  1. 升级 Python 库:pip install -U "openai>=3.46.0"。3.46.0 是 2026 年 11 月 5 日发布的版本,论坛回帖确认它把 svg 加成了正式参数。

  2. 发请求并保存文件。超时建议放到 300 秒,因为失败的请求往往在两三分钟后才返回:

python
import base64
from openai import OpenAI

client = OpenAI(timeout=300)  # 读取环境变量 OPENAI_API_KEY

result = client.images.generate(
    model="gpt-image-2.6-flare",
    prompt="一个扁平风格的咖啡杯图标,杯子冒着热气,杯身上有一片绿色叶子图案,暖棕色和奶白色配色",
    output_format="svg",
    size="1024x1024",
    quality="medium",
    svg={"model": "gpt-6.1-terra"},
)

with open("icon.svg", "wb") as f:
    f.write(base64.b64decode(result.data[0].b64_json))

print(result.usage)                         # 中间位图的用量
print(getattr(result, "svg_usage", None))   # 写作模型的用量
  1. 如果暂时不能升级到 3.46.0,把 svg={...} 那一行换成 extra_body={"svg": {"model": "gpt-6.1-terra"}},其余不变。论坛里最早跑通的示例就是这种写法,用的写作模型是 gpt-6.1-sol。

  2. 不用 SDK 时直接发 HTTP,再用一行 Python 解码:

bash
curl https://api.openai.com/v1/images/generations \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image-2.6-flare",
    "prompt": "一个扁平风格的咖啡杯图标,杯子冒着热气,杯身上有一片绿色叶子图案,暖棕色和奶白色配色",
    "output_format": "svg",
    "size": "1024x1024",
    "quality": "medium",
    "svg": {"model": "gpt-6.1-terra"}
  }' -o svg.json

python3 -c "import base64,json; d=json.load(open('svg.json')); open('icon.svg','wb').write(base64.b64decode(d['data'][0]['b64_json']))"

SVG 请求有几条硬限制,都写在 OpenAI 指南和 API 参考里:n 只能是 1,不支持 stream、partial_images、output_compression 和 prompt_rewriter,这些字段要从请求里删掉;只有生成接口能出 SVG。需要透明底时可以加 background: "transparent",SVG 也支持。

svg 对象要不要写,取决于账号。API 参考的原话是:开启了 SVG 模型选择的账号必须提供 svg.model,没开启的要省略整个对象;论坛回帖者观察到的是"必填"。哪些账号属于哪种情况,OpenAI 没有公开说明。所以先按上面的写法带上 svg.model,如果报错说不接受这个对象,再去掉它重试。svg.reasoning.effort 可以不写,省略时用写作模型自己的默认值。

svg.model 填哪个:gpt-6.1-terra 7 次全成,gpt-5.5 细节最好也最贵

不确定时填 gpt-6.1-terra。OpenAI 的指南和 API 参考都没说该用哪个型号,也没写对写作模型有什么要求;OpenAI 开发者论坛的回帖者认为它得是高质量、支持视觉的语言模型。目前能看到的对比来自 老张 API 的 GPT Image 2.5/2.6 接入文档:文档团队 2026 年 11 月 5 日用同一个 1024 图标提示词直连 OpenAI,每个模型至少跑 3 次,结果如下。

说明:laozhang.ai 是我们自己的服务,其价格是平台报价,不是独立比较的结论。

svg.model成功次数单张耗时写 SVG 的费用(OpenAI 官方价)出图效果
gpt-6.1-terra7/733–43 秒约 $0.011–0.014线条干净,接近 gpt-5.5
gpt-5.53/342–70 秒约 $0.09–0.16细节最好
gpt-6-sol、gpt-6.1-sol各 2/333–49 秒约 $0.02–0.04良好
gpt-5.4-mini3/316 秒未单独给出形状粗糙
gpt-5.6-terra0/3——不建议

失败的请求全部是 OpenAI 返回的 502。要注意两个名字很像的型号:gpt-6.1-terra 是 7/7,gpt-5.6-terra 是 0/3,复制时别填错。

这张表只有一个提示词,费用会随画面变化很大。同一团队更早的测试里,简单 logo 和复杂插画让写作模型输出的 token 能差到约 300 倍,所以 gpt-5.5 的 $0.09–0.16 只对简单图标成立。把 svg.reasoning.effort 调到 high 也要谨慎:同一测试里它用掉的 token 是默认档的 2.6–14 倍,图标用默认档就够。需要更多细节时,表里有依据的做法是换 gpt-5.5;调高推理档能不能换来更好的图,这组测试没有给出结论,只给出了更高的用量。

一张 SVG 多少钱:OpenAI 约 $0.054–0.057,免费写作模型约 $0.043

按 OpenAI 指南的计费说明,中间位图按图像模型的单价收费,写代码的 token 按写作模型的单价收费,总价取决于两边各用了多少 token。GPT Image 2.6 的图像输出是每百万 token $30(OpenAI API 价格页),1024×1024 的中间位图在 low 档约 824 个输出 token,medium 档约 1,449 个,这两个数来自老张 API 文档团队 2026 年 11 月 5 日的单图测试。

线路qualitysvg.model中间位图写 SVG每张合计
OpenAI 直连lowgpt-6.1-terra约 $0.025约 $0.011–0.014约 $0.036–0.039
OpenAI 直连mediumgpt-6.1-terra约 $0.043约 $0.011–0.014约 $0.054–0.057
OpenAI 直连mediumgpt-6.1-sol约 $0.043约 $0.02–0.04约 $0.06–0.08
OpenAI 直连mediumgpt-5.5约 $0.043约 $0.09–0.16约 $0.13–0.20
老张 API 官方转发low省略,默认 gpt-6.1-terra约 $0.0250约 $0.025
老张 API 官方转发medium省略,默认 gpt-6.1-terra约 $0.0430约 $0.043
老张 API 官方转发mediumgpt-5.5约 $0.043按官方价,约 $0.09–0.16约 $0.13–0.20

中间位图一列的算法是 824 × $30 ÷ 1,000,000 ≈ $0.025,1,449 × $30 ÷ 1,000,000 ≈ $0.043;写 SVG 一列取上一节的实测范围。提示词本身的文本输入不到 $0.001,表里忽略了。quality 一定要写:老张 API 文档记录过,不传时 Flare 会按提示词自己挑档位,一张细节多的 1024 图能用到约 5,800 个 token。

老张 API 官方转发分组的计费规则在上面那份接入文档里:中间位图按 usage 以官方价计,写作模型用默认的 gpt-6.1-terra 或另外 8 个低价模型(gpt-5.4-mini、gpt-5.4-nano、gpt-5-mini、gpt-5-nano、gpt-4.1-mini、gpt-4o-mini、gpt-5.6-luna、gpt-6-luna)时不收写作费;换成 gpt-5.5、gpt-6-sol 这类模型,按官方价折算成文本输入 token,记在 svg_usage.billed_as_text_input_tokens,免费模型这一项是 0。

自己核算时,从响应里取两块数:usage 里的图像输出 token 乘 $30/1M,再按 svg_usage 里的输入、输出 token 和写作模型的价格算第二笔。普通 PNG 各画质档在 2.6 和 2.5 上的价格差,见 GPT Image 2.6 和 2.5 区别:low/medium 贵 3–4 倍,high 档起同价。

老张 API 哪条线路能出 SVG:只有 OpenAI Official 分组

在老张 API 上要出 SVG,令牌必须属于 OpenAI Official 或 OpenAI Official Enterprise 分组,模型 ID 用不带后缀的 gpt-image-2.6-flare 或 gpt-image-2.6-sunburst。按次计费的 -vip 和 -web 线路不出 SVG。2026 年 11 月 5 日用默认分组的 key 做了三次探测,三次都是非 200 响应,不扣费:

  • gpt-image-2.6-flare-vip 加 output_format: "svg":返回 400,GIF and SVG output are not supported on this route; use gpt-image-2.6-flare / gpt-image-2.6-sunburst in the OpenAI Official group.
  • gpt-image-2.6-web 加 output_format: "svg":返回 400,SVG output is not supported on this route; use gpt-image-2.6-flare / gpt-image-2.6-sunburst in the OpenAI Official group.
  • 默认分组的 key 直接调 gpt-image-2.6-flare:返回 503,Current group default has no available channels for model gpt-image-2.6-flare。

所以看到第三条报错,不是模型名写错了,是 key 的分组不对,要在控制台换一个 OpenAI Official 分组的令牌。这组探测只能证明哪条线路会拒绝,没有拿到 SVG;前面表里的成功率、耗时和单价来自文档团队用官方转发和直连 OpenAI 的测试。

换好分组后,请求体和上面 OpenAI 的写法一样,base_url 改成 https://api.laozhang.ai/v1。省略 svg.model 时网关默认用 gpt-6.1-terra,这是老张 API 的默认值,不是 OpenAI 的。写作模型填了图像模型会返回 model_not_found;填了不支持的文本模型返回 unsupported_svg_model,不扣费。OpenAI 返回 502 时网关会重试或切换,全部失败时一般返回 svg_generation_failed,同样不扣费,也不收中间位图的钱。

说明:laozhang.ai 是我们自己的服务,其价格是平台报价,不是独立比较的结论。

等了两三分钟还失败:细节多的整幅场景会 502

SVG 失败多半跟画面复杂度有关,跟参数无关。老张 API 文档团队 2026 年 11 月 5 日用一个"整间咖啡店内景"的提示词测试,gpt-6.1-terra 4 次全部失败,每次都在 150–170 秒后收到 OpenAI 的 502;换其他写作模型,复杂提示词也大多在 30–200 秒后 502,而简单图标一直稳定。文档对此的解释是:画面越满,写作模型要写的 SVG 代码越长,费用和等待时间都跟着涨。

判断一张图该不该走 SVG,看它是不是"几块形状加几种颜色"。图标、logo、扁平插画这类图适合 SVG,测试里生成稳定,文件也只有几 KB;照片感的画面、带光影和大量纹理的整幅场景,失败率高,就算成功,代码也会很长,改起来未必比位图方便。后一类留在 PNG 更合适。如果你要的其实是一张能叠到其他背景上的透明位图,用 output_format: "png" 加 background: "transparent",生成后怎么判断真假透明见 GPT Image 透明背景变棋盘格:真假透明怎么判断、怎么修。

遇到复杂画面 502,老张 API 文档给的办法是稍后重试或简化提示词。简化的一种做法是把场景拆成几个单独的图标分别生成,再在矢量编辑器里拼起来,每一张都落在测试里稳定的那一类。

矢量 logo 提示词怎么写:形状少、颜色少、留足边距

写矢量 logo 的提示词,要让中间位图本身就"像矢量图",写作模型才能用少量路径还原它。OpenAI 提示词指南里的可复用 logo 示例给了几条:写清品牌名和构成标志的形状;要求干净的、类似矢量的形状,轮廓鲜明,负空间均衡;扁平设计、少描边、非必要不用渐变;完全透明背景,单个居中的 logo,四周留足边距。同一个提示词加上 output_format="svg" 和 n=1 就能出 SVG。

"非必要不用渐变"对 SVG 的影响很直接。老张 API 文档里那张咖啡图标,示例提示词是"一个扁平风格的咖啡杯图标……暖棕色和奶白色配色",没提背景和渐变,生成的文件里有 5 个渐变、13 种填充色,还铺了一整块深色渐变背景;OpenAI 示例的 Flare logo 按上面的写法提示,只用了 2 种填充色。颜色越少,后面改色越省事。通用的提示词写法见 GPT Image 2.6 提示词写法。

拿到的 SVG 能不能直接改:三份 2.6 文件的检查结果

能改,但要先看文字有没有转曲。2026 年 11 月 5 日,用 rsvg-convert 在 Mac 上检查了三份真实的 GPT Image 2.6 SVG:OpenAI 指南里同一提示词生成的 Flare 版 Field & Flour logo 和 Sunburst 版,以及老张 API 文档里那张用 Flare 和默认 gpt-6.1-terra 生成的咖啡图标。

文件大小主要元素文字位图、外链、脚本64 px 和 2048 px 渲染改一个色值
Flare,Field & Flour4,976 字节12 个 path、1 个 circle、5 个 g字标已转曲,全是路径无正常生效,该色值 1 处
Sunburst,Field & Flour4,571 字节24 个 path、1 个 rect、2 个 text2 个活的 <text>,没转曲无正常生效,该色值 2 处
Flare,咖啡图标3,791 字节12 个 path、5 个 ellipse、2 个 rect、5 个渐变无文字,<title> 用提示词的语言无正常生效,该色值 1 处

三份的 viewBox 都是 0 0 1024 1024,都不到 5 KB。分组也有可读的 id,比如 loaf、steam、cup、handle,在编辑器里能按名字找到面包、热气、杯子。差别在文字:Sunburst 版的 "Field & Flour" 写的是 font-family="Georgia, 'Times New Roman', serif","BAKERY" 是 Arial, Helvetica, sans-serif,打开文件的电脑装了什么字体,字就长什么样,好处是能直接改字;Flare 版把字画成了路径,在哪里打开都一样,但改字要重画。三份文件不足以说明 2.6 总会或从不转曲,每份新文件都要自己看。Figma、Illustrator 的导入没有实测,从结构看,三份都只用了 path、基本图形、分组和渐变这些基础元素。

Flare 版 logo 字标已转曲全是路径,Sunburst 版保留 2 个活的 text 元素,用 grep -c 统计 text 标签即可分辨

拿自己的文件照下面检查一遍,五步都在终端里完成(rsvg-convert 在 Mac 上用 brew install librsvg 安装):

  1. 看文字有没有转曲:grep -c "<text" icon.svg。结果大于 0 说明有活文字,要确认 font-family 里的字体在用的地方有;结果是 0 说明文字已经转曲,或者图里本来就没字。
  2. 看有没有位图和外部资源:grep -n -E "<image|data:|<script|<foreignObject" icon.svg 应该没有输出。OpenAI 说明返回的是静态矢量内容,不含脚本、外部资源和内嵌位图;有输出就别直接放进网页。
  3. 小尺寸和大尺寸各渲染一次:rsvg-convert -w 64 icon.svg -o icon-64.png 和 rsvg-convert -w 2048 icon.svg -o icon-2048.png,看 64 px 时细线和小字是否还认得出。
  4. 列出用了哪些颜色:grep -o -i -E "#[0-9a-f]{6}" icon.svg | sort | uniq -c。颜色太多、或者有一整块背景色,说明提示词该收紧。
  5. 改一个色值再渲染:sed 's/#70371c/#1f4fd1/g' icon.svg > icon-blue.svg,把 #70371c 换成你文件里的色值。注意同一个色值可能出现在好几处,Sunburst 样本就有 2 处,全部替换才能整体改色。

能不能把现有 PNG 转成 SVG,或者编辑 SVG:两条都不行

GPT Image 2.6 目前不能把你手上的 PNG 或旧 logo 转成 SVG,也不能编辑已经生成的 SVG,原因各不相同。SVG 只能从 POST /v1/images/generations 出,这个接口只吃文字提示词,不收你的图片;能收图片的编辑接口 /v1/images/edits 又不支持 SVG 输出。反过来,SVG 文件也不能作为编辑接口的输入图:OpenAI 指南写明 SVG 不是编辑接口支持的位图输入,API 参考也写着"SVG edits are not supported"。

所以要改一个已经生成的 SVG,有两条路:它本身是文本,小改动(换色、删一个分组、调字号)直接改代码或在矢量编辑器里改;大改动就改提示词重新生成。想在一张位图上圈出某处让模型改,那是编辑接口的 markup 功能,输出的是位图,做法见 GPT Image 2.6 用 API 做 markup 圈选编辑。

参考来源7

本文引用的外部页面,按正文出现顺序排列。最后更新于 2026年11月5日。

  1. 1.OpenAI 图片生成指南的 SVG 一节developers.openai.com/api/docs/guides/image-generation
  2. 2.OpenAI 开发者论坛的 SVG 讨论帖community.openai.com/t/1412920
  3. 3.OpenAI 图片生成 API 参考developers.openai.com/api/reference/resources/images/methods/generate
  4. 4.OpenAI API 价格页developers.openai.com/api/docs/pricing
  5. 5.OpenAI 提示词指南里的可复用 logo 示例developers.openai.com/api/docs/guides/image-prompting
  6. 6.Flare 版 Field & Flour logodevelopers.openai.com/images/platform/guides/image-prompting/field-and-flour-gpt-image-2-6-flare.svg
  7. 7.Sunburst 版developers.openai.com/images/platform/guides/image-prompting/field-and-flour-gpt-image-2-6-sunburst.svg