TGViewer
开发者工具箱|编程·开发工具·资源 开发者工具箱|编程·开发工具·资源 @devtoolboxhub · 780 subscribers
Post #1594 8
新模型发布,你的代码到底改不改

模型发布的速度远超团队评估能力,但多数焦虑其实没必要:对边界清晰的代码库,绝大多数新模型根本不需要改动。决定因素不是你跟得多紧,而是抽象边界划在哪。

剥离营销话术后,新模型与现有版本只可能有四类差异:数字(价格、上下文窗口、限速、延迟、跑分,属于模型数据而非新能力)、标识符(新模型字符串,旧模型可能带日期弃用)、请求或响应面(新参数、新响应字段、新内容类型、新工具调用形态)、行为(同一请求产出不同文本)。前两类几乎都是配置问题,第三类才真正需要写代码,第四类需要评估——那是工作,但不是开发工作,而且最可能悄悄伤到你。

什么完全不用动

新模型上线:模型标识符来自配置或目录而非代码字面量,新模型就是一行数据。价格变动:价格是数据就更新数据,是代码常量就得发版——更糟的是没注意到的价格变动是静默的,账目完美对平但系统性地多收或少收。跑分:基准分数不是关于你工作负载的证据,只是跑一遍评估集的理由。更大的上下文窗口:能发更多不是该发更多的理由,成本随实际发送量线性增长,质量并不单调递增。

什么只需配置

带日期的弃用:工作是选替代品并跑评估集,不是改代码。把日期放在能提醒真人的地方,文档里的日期依赖某人当天恰好重读文档。客户端库新默认值:SDK 升级改了重试次数、超时或默认模型,是伪装成依赖升级的行为变更,要固定版本并专门读变更日志。价格变动跨过路由阈值:按成本路由的话,竞品降价会静默改道你的流量,通常正确但应当可见。

什么需要写代码

你要用的新响应字段:推理 token 统计、分部分用量、缓存命中标记,都要读取、存储和展示。请求里的新内容类型:音频、视频、文档作为一等输入,带来新校验、新大小限制、新存储。你的抽象没有槽位的能力:这是最贵的一类,要么为所有人拓宽接口,要么为某家供应商特判——后者就是抽象腐烂的开端。某些供应商静默忽略而非拒绝的参数:静默接受比拒绝更糟,全额计费的响应返回了,但代码期望的字段缺失。要在自己的边界拒绝不支持的参数。

决定边界的五条原则

模型标识符是数据:模型字符串绝不进应用代码,来自按环境的配置,每个请求记录用了哪个模型,事后能回答"谁服务的这条请求"。价格是带来源的数据:每条价格带来源页面和读取日期,硬编码在计费计算里的价格是最贵的捷径,因为失败是静默且自洽的。每家供应商一个适配器、共享同一形状:应用只说一种方言,适配器负责翻译,新能力只改一个适配器。不支持的参数拒绝而非转发:适配器无法兑现参数必须明说,否则调用方拿到带缺失字段的计费响应且无报错。评估集存在且可指向任何东西:这是回答"新模型对我们是否更好"的唯一机制,没有它每次发布都是观点之争、每次迁移都是赌博。

发布分诊流程

是否弃用你在跑的东西?这是唯一紧急项,把日期记在会提醒的地方。是否改变你计费依据的价格?更新数据,检查是否跨路由阈值。是否新增你会用到的请求或响应字段?不会就停止阅读,大多数公告到此结束。是否有合理的质量或成本收益?跑评估集和差分测试,不是三个提示词的主观感受。其余都是阅读,有趣但不可行动。保持跟进是研究活动,应按研究来预算。

需要警惕的静默情况:模型在稳定标识符下悄悄变化。供应商不提供固定版本的话,记录响应报告的模型字符串并在变化时告警,否则第一个症状是几周后的质量投诉。

正确评估候选模型

少数通过分诊的发布,四个问题决定是否值得切换,只有第一个关乎质量。在你的集上更好吗?用你自己的标注样本、和上次相同的评分方式,公共基准更好但你的抽取 schema 更差就是更差,评分方法必须跨比较固定。每单位工作的成本?不是每 token 成本,便宜 30% 但同任务多输出 40% 的模型更贵,模型间啰嗦程度差异经常这么大,要在同一集上算每完成任务的成本。你的百分位延迟成本?中位延迟很少决定什么,p95 决定用户功能是否还跟手,推理模型尤其把尾部拉得远比中位数远。哪些非质量问题会破坏?输出格式、拒绝阈值、工具调用倾向、提示词措辞是否还生效。切换要按斜坡推进、旧路由保持热备,而不是一刀切切换,回滚应是路由变更而非发版。


同时值得做且别拖的一件事:记录每个请求由哪个模型服务。没有它,斜坡三周后的质量问题没有答案,因为数据里区分不了两个群体。
@DevToolboxHub
More from @devtoolboxhub
  1. Sep 26, 2026PostgreSQL 复制槽上限参数 max_replication_slots 解析 max_replication_slots 决定共享内存中复制槽数组的长度,仅此而已。它不决…
  2. Sep 26, 2026五仓库架构踩坑:Gitlink 与双 CI Flude 团队复盘了多仓库架构的实践代价。项目从第一分钟起就选择拆分成独立仓库,Pipeline、engine、design-docs…
  3. Sep 26, 2026Xeno Core:TypeScript 后端架构框架 Node.js 复杂系统的架构选型往往决定代码的长期命运。开发者常在两条路之间纠结:要么依赖重度使用实验性装饰器和反射(如…
  4. Sep 25, 2026用 SLO 给 AI Agent 的行为定个预算 Grafana Labs 提出把可靠性工程里的错误预算(error budget)思路用到 AI Agent 上。延迟、token…
  5. Sep 25, 2026Xcode 27.2 改用 JSON 项目格式 Xcode 27.2 用基于 JSON 的 project.xcproj 取代了沿用多年的 project.pbxproj。新建项目…
  6. Sep 25, 2026PostgreSQL 的 max_prepared_transactions 该不该开 prepared transaction 是脱离会话独立存在的两阶段提交事务。执行 PREP…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →