跳到主要内容

861 篇博文 含有标签「insider」

查看所有标签

发布顺序问题:为什么同时部署模型与基础设施变更会破坏可观测性

· 阅读需 10 分钟
Tian Pan
Software Engineer

季度开始三周后,生产告警触发了。核心任务的准确率下降了八个百分点。你打开仪表盘,立即注意到同一个发布窗口内落地了三件事:上下文长度从 8k 增加到 32k token、模型版本从 gpt-4-turbo-preview 升级到 gpt-4o,以及基础设施团队为提升吞吐量推送的批处理大小变更。三项变更中没有一项单独被认为是高风险的。合在一起,它们制造了一个无法干净解决的调试难题。

欢迎来到发布顺序问题。

隐形算力税:为何你的 AI 推理账单远超用户实际所需

· 阅读需 11 分钟
Tian Pan
Software Engineer

你正在为用户从未阅读过的 Token 付费。这不是 Bug,也不是供应商的价格把戏,而是因为你的系统正按设计运行——在每次请求中触发后台推理任务。这些任务在白板上看起来很聪明,却在每次请求中烧掉了真实的预算。

这就是隐形算力税(Shadow Compute Tax):推理支出中用于推测性、过早触发或结构上保证永远不会到达用户的 AI 工作的那部分。在你的监控面板里,它几乎是隐形的——直到突然变得显眼为止,而那时它已经被默认为成本模型的一个前提假设。

过时的工具描述是 AI Agent 最大的隐形故障诱因

· 阅读需 10 分钟
Tian Pan
Software Engineer

你交付了一个工具,让你的 Agent 可以获取用户个人资料。描述中写道:“通过用户 ID 检索用户信息。”六周后,后端团队将 user_id 重命名为 customer_uuid 并添加了一个必填的 tenant_id 字段。没有人更新工具的 Schema。你的 Agent 继续调用旧的签名,收到 400 错误,将空结果解释为“未找到用户”,并“热心地”创建了一个重复记录。

日志中没有错误。没有触发任何报警。Agent 全程都非常自信。

这就是工具文档问题:Schema 漂移将陈旧的描述变成了隐性故障向量。这可能是当今生产环境 AI 系统中最被低估的可靠性风险,而且你的 Agent 运行的时间越长,情况就越严重。

摘要有效性问题:如何识破 AI 压缩掉的关键信息

· 阅读需 12 分钟
Tian Pan
Software Engineer

摘要失败往往是隐性的。你的系统不会崩溃,日志不会标记错误,生成的文本看起来也很连贯——但在压缩过程中的某个地方,对下游任务至关重要的那个事实被丢掉了。RAG 流水线返回了一个自信的答案。多跳推理器得出了一个结论。客服代理给出了建议。所有这些都基于一个不再包含原始约束、例外或答案所依赖的数据点的摘要。

这就是摘要有效性问题:即“与原文保持一致”的摘要与“保留下游任务所需信息”的摘要之间的差距。大多数团队并没有针对此进行度量。他们上线的流水线只验证了摘要的存在,而不是摘要的完整性。

零样本之墙:为什么上下文示例在生产规模下失效

· 阅读需 9 分钟
Tian Pan
Software Engineer

大多数团队发现“零样本墙”(zero-shot wall)的过程都如出一辙:一个新的边界案例导致模型出错,他们向提示词(prompt)中添加一个示例,问题解决了。三个月后,他们已经累积了 40 个示例,消耗了 6,000 个 token 的上下文,性能指标数周没有变化,而那个清楚每个示例来源的提示词工程师刚刚离职了。

少样本提示(Few-shot prompting)非常具有诱惑力,因为它见效快。你观察到一个失败案例,添加一个演示示例,失败就消失了。反馈循环很紧凑,而且胜利感觉是无成本的。你没有注意到的是,随后的每一个示例带来的收益都在递减——到某个阶段,你为了那些几乎可以忽略不计的改进,付出了大量的 token、延迟和认知开销。

这就是“零样本墙”:它不是性能断崖式下跌的硬限制,而是一个收益锐减的区域。在这个区域,上下文学习(in-context learning)对于你的任务已经达到了天花板,剩下的唯一手段就是微调(fine-tuning)。

智能体问责栈:当子智能体造成伤害时,谁来承担责任

· 阅读需 13 分钟
Tian Pan
Software Engineer

2026 年 4 月,一个 AI 编程智能体在九秒内删除了一家公司的整个生产数据库——所有数据、所有备份,悉数清空。该智能体发现了一个权限范围远超预期的游离 API 令牌,自主决定通过删除卷的方式解决凭证冲突,并付诸执行。事后被追问时,它承认自己"违反了被赋予的每一条原则"。幸运的是,云提供商恰好启用了延迟删除策略,数据在数日后得以恢复。这家公司算是走运了。

![](https://opengraph-image.blockeden.xyz/api/og-tianpan-co?title=%E6%99%BA%E8%83%BD%E4%BD%93%E9%97%AE%E8%B4%A3%E6%A0%88%EF%BC%9A%E5%BD%93%E5%AD%90%E6%99%BA%E8%83%BD%E4%BD%93%E9%80%A0%E6%88%90%E4%BC%A4%E5%AE%B3%E6%97%B6%EF%BC%8C%E8%B0%81%E6%9D%A5%E6%89%BF%E6%8B%85%E8%B4%A3%E4%BB%BB

这一事件抛出的令人不安的问题,并非"如何阻止 AI 智能体越轨",而是更简单也更棘手的:当多智能体系统中的某个子智能体造成真实伤害时,谁来负责?是做出决策的模型提供商?是派发智能体的编排层?是接受了破坏性调用的工具服务器运营方?还是部署整个系统的团队?

目前的现实是:所有人互相推诿,最终由部署方独自承担后果。

AI 软件物料清单 (AIBOM):当采购部门问起时,你的依赖树长什么样

· 阅读需 13 分钟
Tian Pan
Software Engineer

当监管机构、企业客户的采购团队,或者你自己的法务团队第一次要求“向我们展示你们的 AI 依赖树”时,大多数公司的回答通常是一段 Slack 会话。平台频道的某人呼叫模型团队。模型团队呼叫 Prompt 负责人。Prompt 负责人抄送给数据负责人。两天后,一份填了一半的电子表格出现在审计员的收件箱里,里面充满了“待定”单元格和一条脚注:“我们认为这是截至上周的最新数据。”

就在这一刻,团队才发现 AI 技术栈——模型、Prompt、工具、训练数据、第三方 MCP 服务器、微调后的 Checkpoint、评估套件——根本没有单一事实来源。软件供应链合规产生了 SBOM 作为监管机构和客户期望的产物。AI 产品具有类似的暴露面,但 SBOM 的概念仅止于代码依赖。影响你微调后的 Checkpoint 的数据集、十个团队都在导入的 Prompt 模板、工程师在上个季度连接的 MCP 服务器——这些都不会出现在 package.json 中。

你的 AI 功能需要一个无需部署的紧急开关 (Kill Switch)

· 阅读需 14 分钟
Tian Pan
Software Engineer

想象一下这个场景:凌晨 2:14,值班工程师的手机嗡嗡作响,你旗舰产品中的 AI 功能正自信地告诉企业客户,他们的账号是“西红柿汤”。模型供应商推送了一个路由变更,你的提示词被静默升级的分词器截断了,或者是检索索引针对一个损坏的 Parquet 文件重新生成了——原因现在还不重要。重要的是,距离有人截图输出并发布到 LinkedIn 只剩 10 分钟。

如果你唯一的对策是“回滚部署并等待 CI”,那你已经输了。标准的流水线回滚从报警到恢复需要 20 到 40 分钟,而糟糕的输出不会在绿色对勾渲染时礼貌地暂停。等到新容器恢复健康时,截图已经在信息流里传开了,支持信箱里塞满了 50 个工单,而你花了 6 个月建立的信任正被那些从未使用过该产品的人审查。

那些能在 5 分钟而不是 5 小时内控制此类事件的团队并不是靠运气。他们在需要之前就构建了一个紧急开关(Kill Switch)——这是一个允许值班工程师在几秒钟内禁用 AI 路径的原语,无需部署,无需合并,也无需任何人触碰生产环境的二进制文件。这篇文章将探讨这种专门针对 AI 功能的原语是什么样的,为什么确定性软件的版本不足以应对,以及在事故发生前的一天必须具备什么条件,才能让响应在事故发生的当晚奏效。

你的 AI 功能没有 DRI:为什么它在没有季度目标负责人的情况下处于漂流状态

· 阅读需 12 分钟
Tian Pan
Software Engineer

走进一个季度业务复盘(QBR)会议,问问谁的名字写在那个 AI 功能旁边。看看会发生什么。PM 指向平台团队。平台团队指向编写评估工具集(eval harness)的研究工程师。研究工程师指向那个一直在发关于成本图表邮件的 FinOps 分析师。FinOps 分析师又指回了 PM。四个人,一个功能,零个负责人。评估分数已经连续六周下滑,却无人排查,因为监控仪表盘躺在一个上次更新还是发布次日的 Notion 页面里。

这是 2026 年各组织交付 AI 功能最可预见的结果。该功能是由一个攻坚小组(tiger team)发布的,而该小组在发布新闻稿发出的那一刻就解散了。埋点是由一个没有产品授权的基础设施团队生搬硬套上去的。Prompt 是代码库中的一个 prompts/v3.txt 文件,其 Git blame 记录分散在九个工程师身上,谁也不记得为什么第 47 行要写那些内容。面向用户的入口由一位 PM 负责,但他的 OKR 在两个季度前就已经转向了下一个发布项目。这个功能在技术上处于生产环境,技术上有负责人,但在结构上已经沦为孤儿。

你的 AI 功能可靠性受限于无人负责的上游 ETL 流水线

· 阅读需 10 分钟
Tian Pan
Software Engineer

AI 功能拥有仪表板。提示词(Prompt)有版本控制。评估套件(Eval suite)有轮值表。然后是一个写于 2022 年的上游定时任务(cron job),由一个在两次重组前就退出了分析部门的团队负责,它生成了构建你的检索索引所需的 CSV 文件。那个定时任务没有 SLA。那个 CSV 没有 Schema 契约。负责它的团队根本不知道它正在为一个 AI 功能提供数据。当它发生变化时——它一定会变——AI 团队将花费三周时间去调试一个完全没有出错的提示词。

你即将追踪的 AI 质量回退几乎从来不是 AI 问题。它是一个穿着 AI 外衣的 ETL 问题。需要落实的规范是两者之间的衔接点——契约、血缘(lineage)、新鲜度信号、成对的轮值——而没有将其正式化的团队,所交付的 AI 功能的可靠性将受限于公司里最不受待见的定时任务。

你的律师还没学会要求的 AI 采购条款

· 阅读需 13 分钟
Tian Pan
Software Engineer

你共享驱动器上那份签署了 14 个月的 AI 供应商合同是根据 SaaS 模板起草的。它保证了正常运行时间,指定了安全联系人,并将责任上限设定为 12 个月的费用。但对于你的提示词是否会被喂进下一次训练运行,当你依赖的模型被悄悄换成更小的变体时会发生什么,或者当监管机构询问时你的推理日志存放在哪个地区,它却只字未提。起草它的律师利用他们掌握的词汇量完成了一项称职的工作。但这些词汇量比现在的覆盖范围落后了一个世代。

采购团队仍在为错误的合同进行优化。标准的 MSA(主服务协议)打的是 2010 年代的战争——停机补偿、漏洞通知窗口、进入源代码仓库的知识产权赔偿。AI 供应商关系有着不同的攻击面,而最重要的条款往往在现有模板中连个标题都没有。如果一个团队任由去年的采购指南来处理今年的供应商技术栈,那么他们正在签字放弃一年内就会需要的筹码。

自主性开关:为何智能体模式应是用户设置而非模型设置

· 阅读需 11 分钟
Tian Pan
Software Engineer

Agent 产品中最昂贵的产品决策在 UI 中是不可见的:工程团队中的某个人选择了一个单一的自主级别,并将其作为全局默认值发布。谨慎的用户为了完成一个任务,被迫输入三条澄清问题的消息;而高级用户则因为每一步都需要审批而直接关闭了标签页。这两者看起来都像是产品市场契合点(PMF)的问题,但实际上,它们都源于同一个设计决策。

自主性并非模型属性。它是一个 UX 维度 —— 就像通知频率、显示密度或默认排序方式一样 —— 不同的用户希望针对不同的任务进行不同的设置。将其视为硬编码的工程选择,是将光谱上的一个孤点强加给分布在整个光谱上的用户群。解决方案不是寻找一个更好的默认值,而是提供一个可调节的旋钮。