以下内容为作者和AI多轮对话后总结生成

概要

Skill 数量膨胀导致 Agent 命中率下降,本质是候选集噪声升高、模型决策边界模糊、上下文承载力不足共同作用的结果,最终体现为两类核心问题:漏召(该调用的技能没选中)和误召(不该调用的技能被选中)。

提升命中率的核心思路是从源头降噪 → 分层收敛候选 → 强化决策精度 → 数据闭环迭代,以下是可落地的完整方案,按投入产出比从高到低排序:

技术细节

第一步:先把技能本身收拾利索,技能体系标准化

  • 重复的合并,没用的删掉 两个技能干的事差不多(比如都能画图),就合成一个,里面再分小功能。长期没人用、用了也容易出错的技能,直接删掉,别留着添乱。
  • 每个技能写明白 “什么时候用、什么时候别用” 别写技术黑话,就说人话。比如别说 “这是可视化工具”,要说 “用户让画图、做表格的时候用,单纯问‘柱状图是什么’的时候别用”。正反都写清楚,AI 就不容易乱选。

第二步:分层路由,别让 AI 一次从所有技能里挑。一次性给它几十上百个选项,换谁都容易选错。改成 “层层缩小范围”,最后只在一小撮里挑

        「粗筛→精排→决策」三层架构,逐层缩小候选集,兼顾召回与准确率。 

  • 第一层:规则粗筛(零成本,过滤 80% 无关项)
    • 按输入特征硬过滤:如用户上传图片则仅保留支持图片输入的技能,用户提问代码则仅保留开发类技能
    • 关键词命中直达:出现强触发词(如「画图」「SQL」)直接锁定对应品类,跳过后续检索
    • 统计 Top 20% 高频请求,建立「Query 模式→技能」的直接映射,不走大模型路由,速度与命中率拉满
  • 第二层:语义检索重排(召回核心候选)
    • 将所有技能的「场景化描述」向量化构建索引,用户请求编码后做向量相似度检索,初步选出 Top 10~20 候选
    • 用轻量级重排序模型(如 BGE-Reranker)对初筛结果做精排,输出 Top 5~8 高相关候选
    • 关键:向量库只存储场景描述,不混入技术实现细节,避免语义偏移
  • 第三层:大模型终判(精准决策)
    • 仅将 Top N 候选的精简描述输入大模型,让其在小范围内判断「是否调用、调用哪一个」
    • 强制思考链(CoT):要求模型先输出「需求分析→技能匹配理由→最终决策」,通过显性推理降低幻觉调用

第三步:决策强化:提升选择稳定性(给 AI 定死规矩,别让它瞎发挥)

        系统 Prompt 强约束,在给 AI 的指令里写死几条铁律:

  • 仅当技能能显著提升回答质量时调用,纯通用知识问答禁止调用
  • 必须严格匹配技能适用场景,禁止强行套用以「展示能力」,拿不准的时候就别用,别硬凑一个技能上去
  • 再补几个正反例子,比如 “问什么是折线图” 不用画图技能,“帮我画个销量折线图” 才用

第四步:闭环迭代:用数据持续优化

  • 记录每次调用的核心数据:原始请求、选中技能、置信度、执行结果、用户反馈,重点标注「漏召」和「误召」两类错误。
  • 高误召技能:补充「不适用场景」描述,降低检索权重
  • 高漏召技能:补充触发关键词,优化场景描述,提高检索权重
  • 用户确认机制:低置信度场景下,主动询问用户「是否使用 XX 技能完成需求」,由用户确认
  • 通用能力降级:无匹配技能时直接用大模型通用能力回答,不强行调用

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐