AI代理为何会“失控”?Jim Bennett给出的可观测性解法
正在加载视频...
视频章节
在这场演讲中,Jim Bennett用一连串真实翻车案例和现场演示,解释了为什么AI代理天生不值得“信任”,以及如何通过“以评估为核心、以可观测性为驱动”的方法,把不可预测的AI系统驯服成可控的软件系统。
AI代理为何会“失控”?Jim Bennett给出的可观测性解法
在这场演讲中,Jim Bennett用一连串真实翻车案例和现场演示,解释了为什么AI代理天生不值得“信任”,以及如何通过“以评估为核心、以可观测性为驱动”的方法,把不可预测的AI系统驯服成可控的软件系统。
我们为什么根本不信任AI?从假书单到假判例
这场演讲一开始,Jim Bennett就抛出了一个看似“愚蠢”的问题:“谁信任AI?”随即他自己给出了答案——如果你信任,那他可以卖你点“蛇油”。这个玩笑背后,是过去一年里反复出现的真实事故。
他讲了一个极具讽刺意味的故事:芝加哥太阳时报(Chicago Sun-Times)发布了一份“夏季书单”,其中赫然出现了安迪·威尔的《最后的算法》。问题在于,这本书根本不存在。这份书单由外包方生成,而外包方使用了AI,结果“幻觉得像70年代的嬉皮士音乐节”。事后,报社不得不专门发文道歉。
更严重的例子来自法律行业。Jim提到,律师事务所 Butler Snow 在为阿拉巴马州监狱系统辩护时,引用了AI生成的虚假判例。这不是段子,而是真实发生的司法事故。Jim刻意强调,这两个案例几乎发生在同一周,说明问题不是偶发,而是系统性的。
他的结论非常直接:AI不是“偶尔犯错”,而是“天生会编造”。而真正困难的地方在于——AI的错误是非确定性的,你无法像传统软件那样,用一次失败就复现并修复。
为什么单元测试在AI时代失效?
作为开发者,Jim用一个极其熟悉的对比点出了问题的核心:单元测试。对传统代码来说,测试一个 add(2,2)=4 很简单。但他反问:“我该怎么给一个AI写单元测试?”
你无法断言“输入A一定得到输出B”。即便是同一个问题,AI的回答也可能略有不同。而当系统升级为“代理式工作流”(Agentic Workflow)后,复杂度会指数级上升:输入触发一个LLM,LLM拉取数据、做决策、调用另一个代理,再调用工具,如此循环。
在这种情况下,连“它有没有工作”都变成了一个模糊问题。Jim在台上直言:“部分问题在于,什么叫‘工作’?”尤其是聊天机器人,本质上是人类对话,成功与否往往带有主观判断。
这正是他提出“评估驱动开发”的背景:如果我们无法用确定性测试覆盖AI,那么就必须引入新的评估体系,而且这个体系要贯穿整个代理流程,而不是只在终点打一个对错标签。
以AI评估AI:让“小偷抓小偷”
面对非确定性系统,Jim引用了一句英国老话:“Set a thief to catch a thief(让小偷去抓小偷)。”如果AI是不可预测的,那就用AI本身来理解和评估它。
他的核心观点是:用一个(或多个)LLM来评估另一个LLM的表现。事实证明,AI在判断“一个回答是否合理、是否完成目标”这件事上,和人类差不多好。
但这里有一个关键前提:评估用的模型,必须比业务模型“更强”。Jim说得很直白:“在主应用里,你用最便宜的LLM,因为我们都喜欢赚钱;但在评估里,你要用最好的LLM。”在实际操作中,可以从每天上百万条请求中抽样一部分(比如1万条),用更昂贵或专门训练的模型进行评分。
他特别提到,评估不是一次性的,而是要从提示工程、模型选择阶段就引入,并持续进入CI/CD和生产环境。等系统上线、用户开始“乱用”的时候,才是真正的问题高发期。
一个聊天机器人Demo:完成了任务,但它真的“成功”了吗?
为了说明“评估粒度”的重要性,Jim展示了一个金融聊天机器人的Demo。用户问:“我的账户余额是多少?”机器人回答:“我无法访问账户信息。”——显然失败。
第二次,用户 уточ得更具体:“我的支票账户余额是多少?”机器人没有给出余额,但意识到自己缺少账户名称,于是追问。这一次,任务没有完成,但“向目标前进了一步”。第三轮,当用户给出账户名后,机器人终于成功返回余额。
于是Jim在台上问观众:“这个AI算成功了吗?”有人举手说成功,因为最终拿到了结果;更多人认为失败,因为过程太繁琐。
这正是他提出的两个核心指标:Action Completion(是否完成任务)和 Action Advancement(是否朝目标推进)。这两个指标看似相似,但意义完全不同。通过它们,开发者可以清楚地看到:哪一步卡住了,是提示问题、工具调用问题,还是RAG检索失败。
Jim强调,评估必须拆解到每一个代理、每一次工具调用,否则你只能得到一个“红灯”,却不知道红灯是怎么来的。
从评估到洞察:人类仍然必须在环
当你积累了大量评估数据后,它们本身又变成了新的“非结构化数据”。而谁最擅长分析非结构化数据?还是AI。
Jim展示了一个由AI自动生成的洞察:系统在被问到账户余额时,经常没有调用“get balance”工具。这听起来很基础,但正是这种问题,导致用户体验崩坏。AI甚至给出了修复建议——在 system prompt 中加入更明确的指令。
但他在这里刻意踩了刹车:“这不会自动帮我修复。”原因很简单:如果AI自己改代码、自己评估、自己再改,很快就会“蛇咬自己的尾巴”。
因此,他反复强调“Human in the Loop”。评估指标本身也可能是错的,必须通过人类反馈不断校准。他把这个过程称为持续的人类反馈学习(Continuous Learning by Human Feedback)。
最终,他给出的三步法非常清晰:尽早加入评估、精确定义你真正关心的指标、并在生产环境中实时监控和告警。否则,你很可能会成为下一个“芝加哥太阳时报”。
总结
Jim Bennett的演讲传递了一个清醒而现实的信号:AI代理不是“更聪明的软件”,而是一种全新的、不确定的系统形态。要驯服它,靠的不是信任,而是可观测性、细粒度评估,以及始终在线的人类判断。对每一个正在构建AI应用的人来说,这不是锦上添花,而是生存必需。
关键词: AI Agent, 可观测性, 评估驱动开发, 大语言模型, 幻觉
事实核查备注: 演讲者:Jim Bennett(Galileo Principal Developer Advocate);案例:Chicago Sun-Times 虚假书单、《The Last Algorithm》不存在;法律案例:Butler Snow 使用AI生成虚假判例;核心术语:Action Completion、Action Advancement、RAG、Agentic Workflow、Human in the Loop;方法论:Set a thief to catch a thief