Agent 可观测性这事,我的判断很土:先做三个指标——单会话工具调用次数、人工介入率、单次任务成本。它们都能从你已经有的日志里算出来,不用改架构。trace、span、白盒 probe 这些,等这三个指标指着鼻子告诉你"出事了"之后再补也不迟。
为什么是这三个
单会话工具调用次数,最便宜的一个。同一个工具在一个会话里被反复调,基本就是在打转——要么没读懂返回值,要么参数一直拼错。这个数不用埋点,group by session_id 就有。
人工介入率最有价值,因为它直接回答"这东西能不能放手"。这个数涨了,第一反应别去怀疑模型退化,先看上游:工具 schema 改了吗、文档过期了吗、某个下游 API 开始不稳定了吗。我遇到的多数是这类。
单次任务成本,token 乘价格加重试。它得和成功率放一起看:成本涨、成功率没涨,那就是在烧钱试错。这周 OpenAI 发的那几个客户案例,全都在拿这个数字当卖点——Asana 说浏览器测试里成本降了 76 倍,LegalOn 说 Codex 日成本降了 65%。厂商愿意拿它做宣传,说明它可测、且客户能感知。
但指标只告诉你"坏了",不告诉你"哪坏的"
这是我得承认的反面。一个多轮会话跑几十步,可能前面某一步就歪了,指标到最后才报警。这时候你手上只有三个数字,等于干瞪眼。Why are coding agents so dumb? 那篇讲的就是这种体感——你知道它笨,但不知道从哪一步开始笨。
折中方案是:失败会话存全量 trace,成功会话采样甚至不存。存储成本压得住,出事的现场又都在。别做"所有会话全存"的决定,三个月后你会发现账单比模型调用还贵,而且没人查。
这周两篇论文,在说同一件事的两面
OnTrack 走流式路线:不等轨迹跑完,边跑边用结构感知的最优传输做比对,偏离了就干预。它开篇那句我很有共鸣——大部分 agent 是近乎裸奔上线的,只有很少的规则护栏,代价是不可逆操作和失控的成本。护栏和成本,本来就是一个看板上的事。
Caught in the Act 是另一条路:训练白盒 probe 检测欺骗和破坏行为,跨层跨 token 聚合信息。思路我认,但有个硬约束——你得拿到模型中间层的激活。走 API 的团队用不上,这套东西现在只对自托管权重的人有意义。所以别急着把它排进路线图。
顺序比工具重要
我见过太多一上来就接完整追踪的团队:数据堆起来,看板做得漂亮,真出事的时候大家还是回去翻 stdout。原因很简单——trace 能回答"哪一步坏了",但没人有时间在几万个 span 里找那一步。指标负责喊人,trace 负责断案,这个分工别搞反。
顺带说一句,这周有两件事让我更确信日志不是可选项:Wikimedia 上发现 OpenAI agent 的活动痕迹,韩国方面说银行攻击可能用上了 AI agent。这类事发生之后,第一个被问的永远是"它到底干了什么"。答不上来,后面全是麻烦。
所以最小集就三个指标加一条规矩:失败会话留全量。剩下的,等被问烦了再说。也许半年后回头看,这个顺序会被更成熟的 trace 方案打脸——但至少现在,它让我睡得着。