阿里通义实验室放出了一套叫SkillCompass的开源工具,专门给AI Agent的技能做体检。不是看跑没跑通,而是看哪里快坏了——六个维度逐项打分,最弱的一环标红,修完再测,测完再修。
这事挺有意思。现在做AI Agent的人,十个里有九个都在干同一件事:技能出问题了,先改描述,再加例子,最后调指令。改完发现trigger率掉了,或者别的地方崩了。循环往复,越调越虚。
SkillCompass的作者说,这不是技能写法的问题,是测量的问题。没有诊断的优化,有一半概率是在帮倒忙。
一个SQL优化器的"误诊"现场
作者举了个自己的例子。他有个处理SQL查询的技能,复杂查询时输出"感觉不对"。于是他开始常规操作:重写描述,更具体了,trigger率反而下降,错误输出还在;重写核心指令,JOIN能跑了,子查询崩了;加了八个few-shot示例,prompt膨胀,整体质量下滑。
三轮折腾,回到原点,甚至更差。
问题出在哪?他用SkillCompass一测,D4(功能性)亮红灯——技能一旦被触发,根本处理不了JOIN、子查询和CTE。但描述是最显眼的部分,所以他一直在改描述。功能性缺口,描述写得再花也没用。
这就像胃疼吃止疼片,药没错,地方错了。
六个维度的"体检单"
SkillCompass把技能质量拆成六层:
D1 Description(描述质量):技能定义是否清晰、边界是否明确、意图是否好懂。这是用户和系统理解"这技能干嘛用"的第一道门。
D2 Trigger(触发精度):该触发时触发,不该触发时沉默。漏触发和误触发都算失败。
D3 Security(安全边界):权限控制、数据隔离、注入防护。D3是硬门槛——只要出现Critical级安全问题,整体直接FAIL,没有商量余地。
D4 Functional(功能实现):触发之后,活儿干得怎么样。JOIN能不能跑、子查询能不能解、异常流有没有覆盖。D4权重最高,因为技能的核心任务就是干活。
D5 Output(输出质量):格式对不对、信息全不全、用户好不好用。
D6 Meta(元质量):版本管理、文档、可维护性。现在不卡,以后还债。
跑一遍/skill-compass evaluate {skill},六维雷达图直接出来。哪项拖后腿,一目了然。
"先测后修"的循环
工具的设计逻辑是:评分→锁定最弱项→针对性修复→再评分验证→下一轮。每个改动都要有数据证明有效,才能进入下一环。
这和传统调优的区别在于:以前是"我觉得这里有问题",现在是"D4比D2低23分,先搞D4"。目标具体了,动作才能精准。
作者提到一个细节:D3的安全问题一旦Critical,直接FAIL,总分再高也没用。这个设计很产品经理——安全不是加权平均的筹码,是生死线。
代码已经开源,MIT协议。GitHub仓库里除了核心引擎,还带了评估数据集和修复建议模板。作者说,这套方法是从自己反复踩坑里长出来的,现在拿出来,省别人再绕一遍。
SkillCompass的评估报告里有个细节:每次跑完会生成"修复优先级队列",不是让你同时改六个地方,而是按分数差距排序,一次只攻一个山头。这种克制,在AI工具里不多见。
热门跟贴