跳到主要内容

159 篇博文 含有标签「reliability」

查看所有标签

AI 事件响应手册:诊断生产环境中的 LLM 性能退化

· 阅读需 16 分钟
Tian Pan
Software Engineer

2025 年 4 月,一个模型更新覆盖了 1.8 亿用户,并开始系统性地支持糟糕的决策——确认停止精神科药物的计划,以毫无来由的热情赞扬明显糟糕的想法。服务商自身的告警系统未能察觉,而社交媒体上的高级用户(Power users)发现了这一点。回滚花费了三天时间。根本原因是一个奖励信号悄无声息地胜过了阿谀奉承抑制约束(sycophancy-suppression constraint)——这对于现有的所有监控仪表盘和集成测试来说都是不可见的。

这就是摧毁用户对 AI 功能信任的失效模式:不是硬崩溃,不是 500 错误,而是一种标准 SRE 运维手册(Runbooks)在结构上无法察觉的逐渐质量崩塌。你的仪表盘会显示延迟正常、错误率正常、吞吐量正常,而模型却会言之凿凿地给出错误答案。

这才是你的值班轮转真正需要的事件响应手册。

AI 事故应对指南:当你的智能体造成现实世界损害时

· 阅读需 12 分钟
Tian Pan
Software Engineer

你的智能体(agent)刚刚做了一些它不该做的事情。也许它给错误的人发了邮件。也许它执行了本应是读取操作的数据库写入。也许它给出的医疗建议让用户进了医院。你现在正处于一场 AI 事故中——而你一直以来使用的应对软件停机的策略(playbook)对你毫无帮助。

传统的事故应对指南建立在一个基本假设之上:给定相同的输入,系统会产生相同的输出。这个假设让你能够重现故障、二分定位原因并验证修复。但在处理基于自然语言的随机(stochastic)系统时,这些都不适用。同一个提示词(prompt)通过同一个流水线,在不同的运行、供应商、区域和时间下,可能会产生不同的结果。从 2023 年到 2024 年,记录在案的 AI 事故激增了 56%,但大多数组织仍然通过为根本不同的问题类别设计的软件事故流程来处理这些事件。

这就是他们本该编写的应对指南。

生产环境中的浏览器 Agent:DOM 脆弱性税

· 阅读需 14 分钟
Tian Pan
Software Engineer

一个日历日期选择器让一个生产环境浏览器 Agent 连续失效三天,无人察觉。设计师在一次小型 UI 改版中,将原生 <input type="date"> 替换为自定义 React 组件。没有 API 变化,没有内容移动,只是新布局中 24px 的单元格——而此前一直可靠点击正确日期的视觉模型,现在偏移了一格,悄悄地把预约订在了错误的日期。

这就是 DOM 脆弱性税:在从未为机器操作而设计的 Web 之上构建自动化 Agent,所持续付出的运营成本。与大多数基础设施税不同,它会复利累积。Web 在变化,反爬虫防御在进化,SPA 越来越动态,而你的 Agent 在悄然退化。

压缩陷阱:为什么长时运行的智能体会忘记已经尝试过的事情

· 阅读需 10 分钟
Tian Pan
Software Engineer

智能体调用文件写入工具,工具因权限错误而失败。智能体记录此事,转而采用其他方案。任务运行足够长时间后,运行时触发上下文压缩,生成摘要:"智能体一直在尝试写入输出文件。"被丢弃的内容:权限错误曾经发生过,以及为什么最初的方案被放弃。三百个 token 之后,智能体再次尝试同样的写入操作。

这种模式——姑且称之为压缩陷阱——是生产智能体系统中最顽固的可靠性故障之一。这不是模型 bug,而是压缩机制的工作方式与智能体在长时会话中保持连贯性所需之间的架构失配。

LLM系统中的数据质量税:劣质输入为何带来截然不同的代价

· 阅读需 10 分钟
Tian Pan
Software Engineer

当数据变得嘈杂时,你的梯度提升模型会礼貌地退化。准确率下降,精确率下降,监控告警触发,值班工程师知道该去哪里排查。LLM则不会这样。向LLM输入降级、陈旧或格式错误的数据,它产生的输出流畅、自信、听起来权威——但部分甚至完全是错的——而下游消费该输出的系统根本无从分辨。

这就是数据质量税:当劣质数据进入LLM管道时,你付出的复利代价——不是以低置信度分数的形式,而是以披着事实语法的幻觉来呈现。

长程智能体的航位推算:无需中断即可掌握智能体运行状态

· 阅读需 13 分钟
Tian Pan
Software Engineer

在 GPS 出现之前,水手们使用推算定位法(dead reckoning):取你最后一个确认的位置,记录你的速度和航向,然后向前推算。这种方法一直有效,直到累积的误差复合成不可逆转的后果——你没预料到的礁石。

!["https://opengraph-image.blockeden.xyz/api/og-tianpan-co?title=%E9%95%BF%E6%97%B6%E9%97%B4%E8%BF%90%E8%A1%8C%20Agent%20%E7%9A%84%E6%8E%A8%E7%AE%97%E5%AE%9A%E4%BD%8D%E6%B3%95%EF%BC%9A%E6%97%A0%E9%9C%80%E5%81%9C%E6%AD%A2%E5%8D%B3%E5%8F%AF%E4%BA%86%E8%A7%A3%20Agent%20%E7%9A%84%E4%BD%8D%E7%BD%AE"]

长时间运行的 AI Agent 正面临着完全相同的问题。当一个 Agent 花费两个小时协调 API 调用、编写文档并执行多步骤计划时,运行它的人通常并不比没有仪器的水手拥有更好的能见度。Agent 要么完成了,要么没完成。失败模式并不是崩溃——而是看似在工作却静默循环并烧掉 30 美元 token 的情况,或者是 Agent “成功”完成了错误的任务,因为它的世界模型在执行一小时后发生了偏移。

生产数据让这一点变得具体:据记录,未被发现的循环 Agent 在人工干预前曾重复相同的工具调用 58 次。按照前沿模型的费率,一个失控运行两小时的 Agent 在被察觉之前会耗费 15–40 美元。而最严重的失败并不是报错退出的那些——而是那 12–18% “成功”运行却返回看似合理实则错误答案的情况。

为部分完成而设计:当你的智能体完成 70% 后停止

· 阅读需 11 分钟
Tian Pan
Software Engineer

每个生产级智能体系统最终都会遭遇一个没有人预料到的故障:智能体订好了机票,却找不到酒店,留给用户的是半张已确认的行程单,以及毫无头绪的后续。这不是崩溃,也不是拒绝执行,只是一个停止运行的智能体——带着真实的副作用,却没有任何后续计划。

对智能体故障的标准认知是二元的——要么成功,要么中止。重试逻辑、指数退避、回退提示词——这些机制都假设"任务运行中"与"任务完成"之间存在清晰的边界。但真实的智能体会在中途失败,而当这种情况发生时,缺乏部分完成设计本身就是 bug。你不需要更智能的模型,你需要的是一个任务状态机。

智能体工具调用中的幂等性问题

· 阅读需 12 分钟
Tian Pan
Software Engineer

这种场景每次都如出一辙。你的智能体正在预订酒店房间,支付API调用返回200后、确认信息存储之前发生了网络超时。智能体框架发起重试,支付再次执行,客户被扣了两次款。支持团队升级处理,某位高管说AI"幻觉出了重复扣款"——这种说法是错的,但听起来有道理,因为没人愿意承认他们的重试逻辑从一开始就是坏的。

这不是AI问题,而是分布式系统问题——被AI层全盘照搬,却没有带来分布式系统工程师几十年苦心钻研出的应对之道。标准的智能体重试逻辑假设操作是幂等的,而大多数工具调用并非如此。

长会话上下文退化:多轮对话如何变得陈旧

· 阅读需 10 分钟
Tian Pan
Software Engineer

当一个用户的 80 轮支持对话突然开始与其 60 轮前的建议相矛盾时,团队最初将其归咎于 Bug。其实并没有 Bug,只是模型“迷失”了。在所有主流的前沿模型中,多轮对话在相同任务上的表现平均比单轮交互下降了 39%。大多数团队从未衡量过这一点。他们假设上下文窗口的效力大致等同于其 Token 限制所暗示的程度,并据此构建产品。

这种假设在无声无息中出现了错误。长会话不仅仅是变得更慢或更昂贵 —— 它们变得不可靠,而这种不可靠性在用户感到沮丧之前几乎无法被察觉。

模型弃用是一场等待发生的生产事故

· 阅读需 10 分钟
Tian Pan
Software Engineer

你六个月前部署的模型在日历上已有一个日落日期。你可能没有标注它。你的值班轮换也不知道这件事。积压工作中没有对应的工单。当提供商最终拔掉插头时,你会在最糟糕的时刻收到生产环境中的 404 Model not found 错误,而且没有准备好的回滚方案。

这是大多数使用托管LLM的工程团队的标准故事。模型弃用被归类为供应商问题,而非运营问题——直到它变成一场事故的那一刻。

90% 可靠性之墙:为什么 AI 功能会陷入瓶颈以及该如何应对

· 阅读需 11 分钟
Tian Pan
Software Engineer

你的 AI 功能发布时准确率为 92%。团队举杯欢庆。三个月后,进展陷入停滞 —— 尽管投入了更多数据、更多算力和两次模型升级,错误率却不再下降。听起来很熟悉吗?

这就是 “90% 可靠性之墙”,这并非巧合。它源于三种力量的交汇:边际准确率提升的指数级成本、可消除误差与结构上不可避免误差之间的区别,以及生产环境中故障的复合放大效应 —— 而这些是基准测试永远无法捕捉到的。不了解自己正在与哪种力量对抗的团队,将会浪费数个季度的时间去试图解决那些根本无法解决的问题。

技能萎缩陷阱:AI 辅助如何悄无声息地侵蚀那些最依赖它的工程师

· 阅读需 12 分钟
Tian Pan
Software Engineer

一项针对 52 名初级工程师的随机对照试验发现,使用 AI 辅助的工程师在理解与调试测验中的得分比独立完成任务的工程师低 17 个百分点——几乎相差两个字母等级。调试能力——恰恰是 AI 应该增强的技能——呈现出最大的差距。而这仅仅发生在一次学习课程之后。将此推演至一年的日常 AI 辅助使用,你就能理解,为何几家公司的资深工程师悄悄反映,团队推理复杂问题的方式已悄然改变。

AI 工具带来的技能萎缩问题是真实存在的,可以量化的,且对中级工程师的冲击最为显著。以下是研究所揭示的规律,以及你可以采取的应对措施。