ToolScope.java
851 Bytes
package com.xly.agent;
/**
* 按意图收窄「本轮可见的工具集」(架构 §5 的 tool scoping)。
*
* <p>依据:单次 ReAct 的选工具准确率随工具数量上升而骤降(业界经验:50 个工具 ~94% → 200 个 ~64%)。
* 弱模型(qwen3:14b Q4)一次性面对 12 个语义重叠的工具时,频繁选错族(把「查询」当「新增」)。
* 于是先用意图门判类,再**只暴露该意图相关的 3-5 个工具**给 ReAct 执行——大幅降低选错概率。
*/
public enum ToolScope {
/** 读:findForms/kgSearch/readFormData/lookupRecord/queryData(+askUser/loadSkill)。 */
READ,
/** 写:collectForm/proposeCreate/Update/Delete/Examine(+lookupRecord 定位、askUser/loadSkill)。 */
WRITE,
/** 兜底:全部工具(意图门失败时用)。 */
FULL
}