微信扫码
与创始人交个朋友
我要投稿
自适应截断(Adaptive Truncation)是ToolRerank方法中的一个核心组件,它的目的是为了适应重排器(reranker)对已见(seen)和未见(unseen)工具的不同行为,通过在不同位置截断检索结果来优化性能:
不同工具的不同处理:
对于已见工具,即在训练数据中出现过的工具,自适应截断会在检索结果的较早位置进行截断,因为对于这些工具,重排器在较少的候选结果中表现更好。
对于未见工具,即在训练数据中未出现过的工具,自适应截断会在检索结果的较晚位置进行截断,因为对于这些工具,提供更多的候选结果可以提高检索性能。
阈值设置:
自适应截断设置两个不同的阈值:ms(用于已见工具)和mu(用于未见工具),其中ms < mu。
对于每个API ci,在粗粒度检索结果C中,如果工具(ci)在训练数据中已见,则当其位置i满足i ≤ ms时,将其添加到截断结果T中;如果工具(ci)未见,则当i ≤ mu时添加到T中。
层次感知重排(Hierarchy-Aware Reranking)是ToolRerank方法中的一个关键组成部分,旨在根据工具库的层次结构优化检索结果,使检索结果对于单工具查询更加集中,对于多工具查询更加多样化:
单工具查询的层次感知重排:
为了使细粒度检索结果更集中于单个工具,ToolRerank首先通过一个分类器确定查询是否为单工具查询。
如果查询是单工具查询,ToolRerank将使用一个阈值τs来选择得分高于τs的API。
如果没有这样的API,或者只有一个API满足条件,那么选择得分最高的API。
接着,ToolRerank构建一个工具集合X,包含所有选中的API所属的工具。
根据工具集合X,ToolRerank将重排结果R分为两个列表F1和F2,F1包含属于X中工具的API,F2包含其他API。
最后,将F1和F2合并得到最终的重排结果F。
多工具查询的层次感知重排:
对于多工具查询,ToolRerank希望检索结果涵盖不同工具,以提供多样化的API。
ToolRerank构建一个图G,其中节点表示R中的API,边表示API之间的层次和语义关系。
对于图中的每个连通分量G',ToolRerank选择得分最高的n个API作为多样化结果集合S的一部分。
然后,ToolRerank将R分为F1和F2两个列表,根据API是否属于S来分配。
最终,将F1和F2合并得到重排结果F。
在ToolBench数据集上的实验结果表明,ToolRerank能够提高检索结果的质量,从而使得LLM生成的执行结果更好。
ToolBench数据集六个测试数据集上检索结果质量的比较。“N” 和 “R” 分别表示 “NDCG@5” 和 “Recall@5”。
单个工具查询的案例研究,正确的API用蓝色高亮显示
多工具查询的案例研究,正确的API用蓝色高亮显示
ToolRerank: Adaptive and Hierarchy-Aware Reranking for Tool Retrieval
https://arxiv.org/pdf/2403.06551.pdf
https://github.com/XiaoMi/ToolRerank
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-01-01
2024-08-13
2024-04-25
2024-04-26
2024-03-30
2024-07-25
2024-05-10
2024-05-28
2024-04-12
2024-05-06