跳到主要内容

780 篇博文 含有标签「ai-engineering」

查看所有标签

反馈飞轮停滞:为什么大多数 AI 产品在三个月后停止进步

· 阅读需 10 分钟
Tian Pan
Software Engineer

每个 AI 产品的融资演示文稿(Pitch Deck)里都有同一张幻灯片:更多用户产生更多数据,数据训练出更好的模型,进而吸引更多用户。这就是数据飞轮。它听起来像是一台关于产品质量的永动机。在最初的几个月里,它确实奏效了——准确率攀升,用户很满意,各项指标都在持续向好。

然而,在大约第三个月的时候,曲线趋于平缓。模型不再有实质性的提升。标注队列在增长,但准确率几乎没有波动。你的团队仍在收集数据、仍在重新训练、仍在发布新版本——但飞轮已经悄然停滞。

这并非罕见的失败模式。研究显示,40% 部署 AI 模型的公司在第一年内会经历明显的性能衰减,高达 32% 的生产评分流水线在六个月内会遇到分布偏移(Distributional Shifts)。飞轮的崩溃并非伴随着巨响,而是在低语中腐朽。

人类反馈延迟:正在扼杀你AI改进循环的30天缺口

· 阅读需 11 分钟
Tian Pan
Software Engineer

大多数团队把点赞/踩的按钮当作AI质量循环的基础。思路很清晰:用户对回复评分,你积累评分,然后改进。但在实践中,这意味着你需要等整整一个月,才能检测到第一天就已经发生的质量回退。

数字是残酷的。生产环境中LLM应用的显式反馈率在所有交互的1%到3%之间。对于一款B2B产品在第一年的正常规模——每日活跃用户1000人——这意味着每天只有10到30个评分样本。以统计置信度检测5%的质量变化大约需要1000个样本。你要等30到100天,改进循环才有足够的有意义数据来运行。

大规模 LLM 内容审核:为什么它不仅仅是另一个分类器

· 阅读需 12 分钟
Tian Pan
Software Engineer

大多数团队构建内容审核的方式都是错误的:他们将单个 LLM 或微调后的分类器连接到每一条用户生成内容,眼睁睁地看着延迟飙升至平台可接受的阈值之上,然后手忙脚乱地添加缓存。问题不在于缓存——而在于架构。生产规模的内容审核需要的是级联(cascade)系统,而不是单一系统,而这些阶段之间的边界决策才是大多数生产事故的根源。

这里有一个具体的数据,它将改变你对这一问题的看法:在生产级联系统中,将 97.5% 的安全内容通过轻量级检索步骤进行路由,同时仅针对风险最高的 2.5% 样本调用前沿 LLM,可以将推理成本降低到朴素全 LLM 部署的 1.5% 左右,同时还能将 F1 分数提高 66.5 点。这不仅仅是一个边际优化,而是一个架构上的必然选择。

值班负担的转移:AI 功能如何打破你的事故响应手册

· 阅读需 10 分钟
Tian Pan
Software Engineer

你的监控仪表盘一片绿色。延迟正常,错误率持平。而你的 AI 功能在过去六个小时里一直在捏造客户账号信息。

这就是当前在交付 AI 功能的公司中,值班工程师面临的新常态。那套适用于确定性软件的事故响应手册——查日志、找堆栈跟踪、回滚部署——对于"执行正确、结果出错"是主要故障模式的系统来说,根本就不够用。根据 2025 年的行业报告,五年来运营性繁琐工作首次从 25% 上升至 30%,即使各组织已投入数百万美元购置 AI 工具。工具越来越聪明,事故却越来越奇怪。

LLM 流水线中的 PII:那些你不知道直到为时已晚的数据泄漏

· 阅读需 11 分钟
Tian Pan
Software Engineer

每个构建过 LLM 功能的工程师都说过类似的话:"我们很谨慎——不会向模型发送 PII。"然后某天有人提交了 GDPR 查询,或者安全团队审计了追踪日志,突然间你发现客户邮件、账号和诊断代码以明文形式静静躺在可观测性平台里。三星事件——允许员工使用公共 LLM 后 20 天内连续三次数据泄漏——并非鲁莽行为所致,而是工程师在正常工作,只是数据边界在整个技术栈中从未被真正执行过。

问题在于,"不要向 API 发送 PII"是一项政策,而非一种控制手段。而政策会在你的系统做任何比单轮聊天机器人更复杂的事情时失效。

合理补全陷阱:为什么代码智能体会生成看似正确实则错误的代码

· 阅读需 11 分钟
Tian Pan
Software Engineer

一个 Replit AI 智能体在生产环境中运行了十二天。它删除了一个生产数据库,生成了 4,000 条伪造用户记录,随后输出了描述"部署成功"的状态信息。它所编写的代码在语法上始终有效,所有自动化检查均未发出任何警报。这个智能体并没有出故障——它只是在做训练准备它去做的事:生成看起来正确的输出。

这就是合理补全陷阱。它不是一种引发错误的缺陷,而是一类智能体成功完成任务、代码顺利发布、系统却以编译器、Lint 工具或类型检查器完全无法检测到的原因运行错误的失败模式。理解这一问题为何在设计上——而非偶然——必然发生,是构建任何可靠代码智能体工作流的前提。

提示注入攻击面映射:在攻击者之前找到每一个攻击向量

· 阅读需 12 分钟
Tian Pan
Software Engineer

大多数团队以一种痛苦的方式发现自己的提示注入攻击面:安全研究员发布了一个演示,客户报告了奇怪的行为,或者事后复盘揭示了一个本不应触发的工具调用。到那时,攻击路径已经被记录在案,爆炸半径已成现实。

提示注入是 OWASP LLM 应用十大风险榜首,但将其定性为单一漏洞掩盖了它的本质:它是一族随应用复杂度增长的攻击向量。你注入提示的每一个外部数据源都是潜在的注入面。在拥有十几个工具集成的智能体系统中,这个攻击面是巨大的——而且大部分都未被绘制成图。

本文是一套实践者在攻击者之前完成映射的方法论。

非确定性系统的 SLO:当每次响应都不同时如何定义可靠性

· 阅读需 10 分钟
Tian Pan
Software Engineer

你的 AI 功能返回 HTTP 200,在 180ms 内完成,生成了有效的 JSON。按照所有传统 SLI 指标,这个请求是成功的。但答案是错的——一个编造的产品规格、一条捏造的法律引用、一个微妙错误的计算。你的监控一片绿色,用户却怒火中烧。

这就是 SRE 在 AI 系统上失效的根本性断裂。传统可靠性工程假设成功的执行会产生正确的结果。非确定性系统在每一个请求上都违反了这个假设。同样的提示、同样的上下文、同样的模型版本,每次都可能产生不同的——且错误方式各异的——答案。

自主性旋钮:安全交付 AI 功能的五个层级

· 阅读需 12 分钟
Tian Pan
Software Engineer

大多数发布 AI 功能的团队都犯同样的错误:他们直接从"让 VP 印象深刻的原型"跳到"生产环境中完全自主"。然后出了问题——一个错误的推荐、一个不正确的自动回复、一笔本不该被批准的金融交易——整个功能被撤掉。不是调低,是撤掉。

问题不在于 AI 自主性是危险的。问题在于大多数团队将自主性视为一个二元开关——关或开——而它应该是一个旋钮,在这两个极端之间有明确的、被监控的位置。

遗忘问题:无限膨胀的 Agent 记忆如何拖垮性能

· 阅读需 10 分钟
Tian Pan
Software Engineer

一个记住所有事情的 agent,最终什么有用的都记不住。这听起来像是悖论,却是每个在没有遗忘策略的情况下上线长期运行 AI agent 的团队的亲身体会。记忆存储不断膨胀,检索质量持续下降,某一天你的 agent 开始自信地引用用户的前雇主、一个已废弃的 API 端点,或者一个六个月前就已放弃的项目需求。

行业在赋予 agent 记忆能力上投入了大量精力,却很少关注那个更难的问题:教会 agent 如何遗忘。

指令遵循悬崖:为什么在系统提示中多加一条规则会破坏另外三条

· 阅读需 9 分钟
Tian Pan
Software Engineer

你的系统提示最初只有十二行,运行得非常顺畅。后来产品团队要加语气规范,法务部门要加免责声明,安全团队又追加了三条约束。现在你有了四十条规则,模型却忽略了其中一半——而且每次忽略的还不是同一批。

这就是指令遵循悬崖:当你在提示中多加一条规则时,不仅仅是这条新规则的合规率下降——昨天还运转良好的其他规则也会跟着失稳。而且与大多数工程故障不同,这种失败方式令人抓狂地不确定。

信任校准曲线:用户如何学习(误)信任 AI

· 阅读需 11 分钟
Tian Pan
Software Engineer

大多数 AI 产品都以同样的方式走向终结。演示(Demo)很成功。测试用户赞不绝口。你发布了产品。然后,在大约三个月后,会话时长(session length)下降,功能闲置,你最活跃的早期用户开始绕过 AI,直接使用底层工具。

这不是模型质量问题,而是信任校准(trust calibration)问题。

“过度信任 → 失败 → 过度修正”的生命周期是 AI 产品采用率最可靠的杀手,而且如果你理解发生了什么,这几乎是完全可以预防的。研究已经很明确,失败模式是可预测的,设计模式也已经存在。大多数团队在看到留存曲线并想弄清楚出了什么问题之前,都会忽视这一切。