GPT‑6 Sol 与 Luna 登场:输入价格减半后,如何在 Astra 之下选模型

2026-09-23 35 预计阅读时间: 1 分钟
来源: oschina.net AI 摘要 Original link

Disclaimer: This article is an AI-assisted summary. Read it together with the original source when precision matters. The summary may omit context, version differences, or edge cases and is not official documentation.

预计阅读时间:10 分钟

OpenAI 为 GPT‑6 家族增加了 Sol 和 Luna。两款模型沿用了与 Astra 相似的训练方法,目标是把 Astra 在专业工作、事实性、编程和计算机使用上的进步,放进响应更快、成本更低的模型中。定位也很清楚:它们不是替代 Astra 的新旗舰,而是位于 Astra 之下、适合规模化调用的选择。

这次最容易量化的变化来自价格。来源摘要明确提到,原 GPT‑5.6 Sol 迁移为 GPT‑6 Sol 后,输入价格从 4 美元降到 2 美元,相当于减半。由于摘要没有提供完整的输出价格和计费单位,生产预算仍应以控制台中的正式价目表为准,不宜自行补全数字。

Sol、Luna 和 Astra 应该怎样分工

便宜模型最常见的误用,是把“继承旗舰能力进步”理解成“与旗舰能力完全相同”。更稳妥的理解是:Sol 和 Luna采用了相近的训练路线,但产品能力仍被放在 Astra 之下。

可以按任务风险划分模型:

任务类型 建议起点 原因
分类、抽取、改写、摘要 Sol 或 Luna 请求量大,格式较稳定,便于自动验收
常规代码生成与测试补全 Sol 或 Luna 可通过编译、单元测试和静态检查兜底
复杂架构设计、疑难调试 Astra 错误路径较长,失败成本更高
高风险事实判断 Astra 加检索与引用校验 模型档位不能替代事实验证
计算机操作 先用便宜模型规划,关键动作升级或审批 外部操作可能产生不可逆影响

Sol 与 Luna 之间如何进一步分配,不能只看名称。应该用自己的提示词、上下文长度和输出结构做测试,重点测以下指标:

  • 任务成功率:答案是否真正完成业务目标,而不只是语言流畅。
  • 事实错误率:涉及内部文档、时间和数字时,是否能给出可验证依据。
  • 代码通过率:生成结果能否通过测试、类型检查和安全扫描。
  • 延迟分位数:除平均值外,还要记录 P50、P95 和超时率。
  • 单个成功任务成本:总费用除以成功请求数,比单纯比较 token 单价更有意义。

用真实请求做一轮小型基准测试

下面是一个可以直接改造的 Python 测试脚本。它调用 Responses API,记录各模型的延迟、token 用量和完整输出,并将结果写入 JSONL 文件。

这里有两个需要明确的假设:模型 ID 使用了 gpt-6-sol、gpt-6-luna 和 gpt-6-astra 作为示例;运行前必须替换成账户中实际可用的 ID。价格也不写死在程序里,应从官方控制台确认后通过环境变量传入。

安装 SDK 并配置环境:

python -m pip install -U openai
export OPENAI_API_KEY="your-api-key"
export MODELS="gpt-6-sol,gpt-6-luna,gpt-6-astra"
# 可选:按每百万输入/输出 token 填入控制台中的实际价格
export MODEL_PRICES='{"gpt-6-sol":{"in":2,"out":0}}'

将下面内容保存为 bench_models.py:

import json
import os
import time
from pathlib import Path

from openai import OpenAI

client = OpenAI()
models = [m.strip() for m in os.environ["MODELS"].split(",") if m.strip()]
prices = json.loads(os.getenv("MODEL_PRICES", "{}"))

cases = [
    {
        "name": "structured_extraction",
        "prompt": (
            "从下面文本中提取项目名、负责人和截止日期,只输出 JSON。\n"
            "文本:支付网关升级由林晨负责,计划在 2026-05-18 前完成。"
        ),
    },
    {
        "name": "coding",
        "prompt": (
            "编写一个 Python 函数,合并重叠时间区间。"
            "同时给出至少 5 个 pytest 测试,只输出代码。"
        ),
    },
    {
        "name": "factual_discipline",
        "prompt": (
            "仅根据以下材料回答;材料没有的信息必须回答‘无法从材料确认’。\n"
            "材料:服务 A 的默认超时为 3 秒。\n问题:服务 A 的重试次数是多少?"
        ),
    },
]


def estimate_cost(model, input_tokens, output_tokens):
    price = prices.get(model)
    if not price:
        return None
    return round(
        input_tokens / 1_000_000 * price["in"]
        + output_tokens / 1_000_000 * price["out"],
        8,
    )


results = []
for model in models:
    for case in cases:
        started = time.perf_counter()
        response = client.responses.create(
            model=model,
            input=case["prompt"],
        )
        latency = time.perf_counter() - started
        usage = response.usage
        row = {
            "model": model,
            "case": case["name"],
            "latency_seconds": round(latency, 3),
            "input_tokens": usage.input_tokens,
            "output_tokens": usage.output_tokens,
            "estimated_cost_usd": estimate_cost(
                model, usage.input_tokens, usage.output_tokens
            ),
            "output": response.output_text,
        }
        results.append(row)
        print(json.dumps(row, ensure_ascii=False))

Path("benchmark-results.jsonl").write_text(
    "\n".join(json.dumps(r, ensure_ascii=False) for r in results) + "\n",
    encoding="utf-8",
)

运行:

python bench_models.py

这个脚本只负责采样,不会自动判断答案好坏。结构化抽取可以增加 JSON Schema 校验,代码题应把生成内容放进隔离容器执行测试,事实性任务则需要预先准备标准答案。不要直接执行模型生成的任意代码,也不要让测试代理访问生产凭据。

不要只看每 token 价格

输入价格从 4 美元降到 2 美元很醒目,但实际节省取决于流量结构。一个上下文很长、输出很短的检索或分析服务,会更直接地受益于输入降价;如果应用以长篇生成为主,输出价格和输出长度可能更影响账单。

评估成本时可以使用下面的公式:

请求成本 = 输入 token 数 × 输入单价 + 输出 token 数 × 输出单价
成功任务成本 = 所有请求总成本 ÷ 通过质量门槛的任务数

第二个指标尤其重要。假设便宜模型的单次请求成本下降 50%,但为了修正失败结果需要重试,或者需要 Astra 再审核一次,最终节省比例就会明显缩小。

延迟也应按完整链路计算。模型生成更快,并不代表用户体验一定更快;检索、工具调用、代码执行和重试都可能成为新的瓶颈。

更稳妥的上线方式:分层路由而不是一次性替换

生产迁移可以从低风险、高频任务开始:

  1. 从线上流量抽取脱敏样本,建立 Sol、Luna、Astra 的离线对照集。
  2. 为每类任务定义硬性门槛,例如 JSON 合法率、单元测试通过率和引用准确率。
  3. 先让新模型以影子模式运行,不直接影响用户结果。
  4. 小比例放量,并监控质量、P95 延迟、重试率和单个成功任务成本。
  5. 为失败请求保留升级到 Astra 的路径,同时限制最大重试次数。
  6. 对计算机操作、外部写入和资金相关动作保留人工确认或策略审批。

Sol 和 Luna 的价值不只是“更便宜”,而是让模型路由有了更细的成本档位。合理的目标并非把所有 Astra 请求迁走,而是让大量可验证任务停留在便宜模型上,只把真正复杂、模糊或高风险的请求升级给 Astra。这样才能把价格下降转化为稳定的生产收益,而不是把节省下来的模型费用重新花在重试和事故处理上。


相关推荐