GPT-5.6 Sol vs Terra vs Luna: which tier should you actually use?

GPT-5.6 Sol vs Terra vs Luna: which tier should you actually use?

GPT-5.6 Sol、Terra 与 Luna:你到底该用哪个版本?

When GPT-5.6 landed as three models instead of one, my first reaction was mild annoyance. Sol, Terra, Luna — great names, zero help when I’m staring at a config file deciding which string to paste into model. So I did the boring thing: I wired all three into the same app, ran a week of real traffic through them, watched the token meter, and wrote down what I learned. This is that write-up — the decision tree I wish someone had handed me on day one. 当 GPT-5.6 以三个模型而非一个模型发布时,我的第一反应是有些恼火。Sol、Terra、Luna——名字起得不错,但当我盯着配置文件,纠结该把哪个字符串填入模型字段时,这些名字毫无帮助。于是我做了件枯燥的事:我将这三个模型全部接入同一个应用,运行了一周的真实流量,观察了 Token 消耗,并记录下了我的心得。这就是那份总结——一份我希望在第一天就有人递给我的决策指南。

The 30-second version

30 秒速览

Three tiers, same API shape, same features. The only thing that changes is depth vs. cost vs. latency. Official OpenAI list prices, per million tokens: 三个层级,相同的 API 结构,相同的功能。唯一改变的是深度、成本与延迟。OpenAI 官方标价(每百万 Token):

TierModel stringList price (in / out)My one-liner
Solgpt-5.6-sol$5 / $30The flagship. Reach for it when a wrong answer is expensive.
Terragpt-5.6-terra$2.50 / $15The default that surprised me.
Lunagpt-5.6-luna$1 / $6The volume workhorse.
层级模型字符串标价 (输入/输出)我的简评
Solgpt-5.6-sol$5 / $30旗舰版。当错误回答代价高昂时,请选择它。
Terragpt-5.6-terra$2.50 / $15让我感到惊喜的默认选择。
Lunagpt-5.6-luna$1 / $6高并发下的主力军。

Note the shape of that output column: $30, $15, $6. Output tokens are where the money goes, and they scale 5:1 against input across all three. Keep that ratio in your head — it makes tier choice mostly a question of how much the model talks, not how much you feed it. 注意输出列的价格:$30、$15、$6。输出 Token 才是真正的开销所在,且三个模型在输入与输出上的比例均为 5:1。请记住这个比例——它意味着选择层级主要取决于模型“话多不多”,而不是你喂给它多少数据。

Terra is the plot twist

Terra 是个意外的惊喜

I expected to run Sol everywhere and grumble about the bill. Then I A/B’d Sol against Terra on my actual coding-assistant traffic — diffs, refactors, “why is this test flaky” spelunking. OpenAI’s own line is that Terra hits about 97% of Sol’s benchmark performance, and honestly? On day-to-day dev work I couldn’t feel the missing 3%. Same fixes, same explanations, half the list price. That reframed the whole exercise for me. The question stopped being “can I afford Sol?” and became “do I have a specific reason to escalate off Terra?” For most requests the answer is no. Terra became my baseline and Sol became the exception I reach for deliberately — not the reverse. 我本以为我会到处使用 Sol,然后对着账单抱怨。后来,我在实际的编程助手流量中对 Sol 和 Terra 进行了 A/B 测试——包括代码差异分析、重构以及排查“为什么这个测试不稳定”。OpenAI 官方称 Terra 能达到 Sol 约 97% 的基准性能,说实话?在日常开发工作中,我根本感觉不到那 3% 的差距。同样的修复、同样的解释,价格却只有一半。这彻底改变了我的看法。问题不再是“我用得起 Sol 吗?”,而是“我有充分的理由升级到 Sol 吗?”对于大多数请求,答案是否定的。Terra 成为了我的基准,而 Sol 成为了我刻意选择的例外——而不是反过来。

Where Sol still earns its keep for me: genuinely hard reasoning where the cost of being wrong dwarfs the token bill. Architecture reviews, gnarly migrations, research synthesis across a big pile of context. And ultra mode — the 5.6 family can orchestrate parallel sub-agents on complex tasks, and that coordination is exactly the kind of work where the deepest tier pays for itself. Sol 依然有其价值的地方在于:真正困难的推理任务,即错误代价远超 Token 费用的场景。例如架构评审、复杂的代码迁移、跨大量上下文的研究综述。还有“超频模式”(Ultra mode)——5.6 系列可以在复杂任务中协调并行子代理,这种协调工作正是最深层级模型物有所值的地方。

Luna is not a downgrade, it’s a different job

Luna 不是降级,而是为了不同的工作

Luna is the one people mis-read. It’s not “watered-down Sol,” it’s the tier you point at work where per-token cost dominates and the quality ceiling basically never binds: bulk classification, tagging, extraction, summarizing a firehose of records. When you’re doing the same small operation ten thousand times, a dollar of input vs. five dollars of input is the entire P&L. Luna is also the fastest of the three, so it’s my pick for anything latency-sensitive — autocomplete, a streaming chat UI — paired with stream: true. Luna 是被人们误解最深的一个。它不是“缩水版 Sol”,而是当你面临按 Token 计费成本占主导,且对质量上限要求不高时的首选:例如批量分类、打标签、提取信息、总结海量记录。当你需要重复执行一万次同样的小操作时,1 美元输入与 5 美元输入的差价就是利润的全部。Luna 也是三者中最快的,因此它是任何对延迟敏感场景(如自动补全、流式聊天界面)的首选,配合 stream: true 使用效果更佳。

The cache math nobody puts on the slide

没人写在 PPT 里的缓存算术

Here’s the part that actually changed my routing, and it’s the reason I’d tell you not to just default to the smallest tier. GPT-5.6 ships with predictable caching: a prompt prefix is guaranteed to stay cached for at least 30 minutes, and you can drop your own cache breakpoints. Cache reads bill at 10% of the input price. That number quietly rewrites the arithmetic for any prefix-heavy workload. 这是真正改变我路由策略的部分,也是我建议你不要默认选择最小层级的原因。GPT-5.6 带有可预测的缓存机制:提示词前缀保证至少缓存 30 分钟,你还可以设置自己的缓存断点。缓存读取的费用仅为输入价格的 10%。这个数字悄悄改写了任何重前缀工作负载的成本计算。

Think about a RAG setup where every request re-sends the same fat corpus prefix. Without caching you pay full input rate on that prefix every single call. Pin it behind a breakpoint and you pay full rate once per 30-minute window, then 10% on every hit after. Run the numbers on a realistic prefix-to-suffix ratio and Terra-with-cache can land below Luna-uncached on effective per-request cost — while giving you Terra-grade answers. I stopped reaching for the smallest tier reflexively and started modeling the prefix ratio first. Sometimes the “more expensive” tier is the lower-cost system. 想象一下 RAG(检索增强生成)设置,每个请求都重复发送相同的大型语料库前缀。如果没有缓存,你每次调用都要为该前缀支付全额输入费用。将其固定在断点后,你每 30 分钟只需支付一次全额费用,之后每次命中只需支付 10%。根据实际的前缀与后缀比例计算一下,你会发现开启缓存的 Terra 在单次请求的有效成本上可能低于未开启缓存的 Luna——同时还能获得 Terra 级别的回答质量。我不再下意识地选择最小层级,而是先对前缀比例进行建模。有时,“更贵”的层级反而是成本更低的系统。

My actual routing rules

我的实际路由规则

After all that, here’s the decision tree I run in production: 总结以上,这是我在生产环境中运行的决策树:

  • Deep reasoning / high-stakes (architecture, tricky migrations, ultra-mode agent pipelines) → Sol. Output quality wins when a mistake is expensive.

  • Everyday work (coding assistant, general chat, most product features) → Terra. ~97% of Sol at half the list price; escalate specific request types to Sol only when your evals show the gap is real.

  • High-frequency / bulk (classification, extraction, summarization, latency-critical UX) → Luna, with stream on where it helps.

  • 深度推理/高风险任务(架构、棘手的迁移、超频模式代理流水线)→ Sol。当错误代价高昂时,输出质量是第一位的。

  • 日常工作(编程助手、通用聊天、大多数产品功能)→ Terra。以一半的价格获得 Sol 约 97% 的性能;仅当评估显示差距确实存在时,才将特定请求升级到 Sol。

  • 高频/批量任务(分类、提取、总结、对延迟敏感的 UX)→ Luna,并在需要时开启流式传输。

The meta-rule: start on Terra, promote to Sol by request-type when evals justify it, route the bulk lane to Luna. Match the workload, not the badge. 核心原则:从 Terra 开始,当评估证明有必要时,按请求类型升级到 Sol,并将批量任务路由到 Luna。匹配工作负载,而不是盲目追求高阶模型。

Trying all three behind one key (no OpenAI account)

用一个 Key 尝试所有三个模型(无需 OpenAI 账号)

The nice part is that testing this costs almost nothing in effort. I ran all three tiers through byesu — an AI API gateway that speaks the OpenAI-compatible Chat Completions API. One sk- key covers all three GPT-5.6 tiers, so comparing them is a one-string change in a loop, and billing is pay-as-you-go per token — no subscription, no separate OpenAI account to provision. 好消息是,进行这些测试几乎不需要什么成本。我通过 byesu 运行了所有三个层级——这是一个支持 OpenAI 兼容 Chat Completions API 的 AI 网关。一个 sk- 密钥即可覆盖所有三个 GPT-5.6 层级,因此对比它们只需在循环中更改一个字符串,且按 Token 计费——无需订阅,也无需单独配置 OpenAI 账号。

(Code snippet omitted for brevity) (代码片段略)

Log usage on every call — that in/out split is the whole game. Once you can see input vs. output tokens per tier on your prompts, the pricing table above stops being abstract and the right tier basically picks itself. 记录每次调用的使用情况——输入/输出的拆分是关键所在。一旦你能看到每个层级在你的提示词下的输入与输出 Token 数,上面的价格表就不再抽象,合适的层级自然会脱颖而出。

One gotcha worth flagging: when you create the token, put it in the OpenAI GPT group. Wrong group is the usual cause of a “no available channel” error, and the model string has to be exactly gpt-5.6-sol / -terra / -luna. 值得注意的一个坑:创建 Token 时,请将其放入 OpenAI GPT 组。组别错误通常是导致“无可用通道”(no available channel)错误的原因,且模型字符串必须完全匹配 gpt-5.6-sol / -terra / -luna