← 返回信息流
技术博客arXiv cs.AI·6 天前

CoHyDE:用于工具检索的LLM重写器与稠密编码器的迭代协同训练

原标题:CoHyDE: Iterative Co-Training of LLM Rewriter & Dense Encoder for Tool Retrieval

速览

针对大模型在大型API目录中检索工具时的语言鸿沟问题,研究提出CoHyDE方法。该方法将稠密编码器与LLM重写器作为单一协同演化系统进行迭代训练,利用InfoNCE和DPO优化双方。实验表明,该方法在模糊查询上的检索精度显著提升,证明了协同训练的有效性。

AI 深度解读

CoHyDE:通过迭代协同训练优化大模型工具检索

背景

在构建基于大语言模型(LLM)的智能体(Agents)时,**工具检索(Tool Retrieval)**是一个核心瓶颈。这一挑战主要源于“语义鸿沟”:用户通常使用口语化、非正式且往往信息不全(underspecified)的自然语言发起查询,而庞大的 API 目录则使用高度专业化、技术性的词汇进行描述。没有任何一个固定的编码器(Encoder)能够仅凭自身能力完美 bridging(桥接)这两者之间的差异。

目前,解决这一问题的两种主流训练方法分别代表了两个极端,且各自存在明显的互补性缺陷:

  1. 对比式编码器微调(Contrastive Encoder Fine-tuning):这种方法在查询的表面形式(surface form)与目录中的技术词汇匹配良好时表现优异,但在面对用户查询与目录词汇不匹配的情况时,性能会急剧下降(collapse)。
  2. 基于冻结 LLM 的 HyDE 风格查询扩展(HyDE-style Query Expansion):HyDE(Hypothetical Document Embeddings)方法通过让 LLM 生成假设性文档来增强查询,对信息不全的查询具有更强的鲁棒性。然而,这种零样本(zero-shot)生成的假设性描述往往缺乏对目录内容的感知(catalog-unaware),当用户查询本身已经非常清晰规范时,这种扩展反而会导致检索效果退化。

简而言之,现有的单一组件方法要么过于依赖表面匹配,要么过于依赖泛化生成,难以在两种极端查询场景下同时保持高性能。

核心内容

为了解决上述问题,研究团队提出了 CoHyDE,一种迭代式的协同训练框架,旨在将密集编码器(Dense Encoder)和大语言模型重写器(LLM Rewriter)作为一个共同演化的系统进行联合训练。

1. 协同训练机制

CoHyDE 的核心在于打破传统方法中组件独立的局限,通过以下两个步骤形成闭环:

  • 编码器训练:使用重写器生成的、符合目录风格的假设性描述(hypothetical descriptions),对密集编码器进行基于 InfoNCE 损失函数的重新训练。这使得编码器能够学习到更贴近目录技术词汇的语义表示。
  • 重写器对齐:利用直接偏好优化(DPO, Direct Preference Optimization)对 LLM 重写器进行偏好对齐。这里的“偏好”信号来源于编码器对工具目录的检索得分。即,如果重写器生成的描述能让编码器更准确地检索到相关工具,该生成结果就被视为更优。

2. 迭代流程

整个训练过程是一个迭代循环:

  1. 预热(Warm-start):在循环开始前,重写器和编码器均在工具目录上进行预热初始化。
  2. 迭代优化
    • 重写器生成假设性描述。
    • 编码器利用这些描述进行训练,提升对目录风格词汇的捕捉能力。
    • 编码器利用其检索评分反馈给重写器,通过 DPO 优化重写器的生成质量,使其生成的描述更能被编码器有效识别。
    • 此过程重复进行,双方共同进化。

3. 实验验证

研究团队在 ToolBench 目录的一个约 10,000 个工具的子集上进行了实验。结果显示,经过三轮 CoHyDE 迭代训练后:

  • 在标准查询(well-formed queries)上,性能比最强的单一组件基线提升了 +2.5 pp(NDCG@5)。
  • 在保留的模糊查询(vague queries)上,性能提升了 +6.3 pp
  • 在最难的模糊查询层级上,增益高达 +8 pp

消融实验(Ablations)进一步证实,协同训练是关键因素:单独使用编码器或重写器都无法在标准或模糊查询上达到 CoHyDE 的性能水平,尤其在模糊查询上,单独使用的性能损失可达 -8 pp。

关键要点

  • 解决语义鸿沟:CoHyDE 旨在解决用户口语化查询与技术性 API 目录之间的词汇和语义不匹配问题。
  • 互补优势融合:结合了微调编码器的精确匹配优势和 HyDE 方法的泛化鲁棒性,克服了单一方法在特定查询类型下的失效问题。
  • 双向反馈闭环
    • 编码器通过 InfoNCE 学习重写器生成的目录风格描述。
    • 重写器通过 DPO 根据编码器的检索得分进行偏好优化。
  • 迭代协同演化:两个组件不是独立训练,而是作为一个整体在迭代中共同进化,初始阶段在工具目录上进行预热。
  • 显著性能提升:在 ToolBench 子集上,三轮迭代后在标准查询和模糊查询上均取得显著增益,模糊查询提升尤为明显(最高 +8 pp)。
  • 协同训练必要性:消融实验证明,只有协同训练才能同时优化两类查询的性能,单独使用任一组件均会导致性能大幅下降。

意义与影响

CoHyDE 的提出标志着在 LLM 智能体工具检索领域的一个重要进展。它不再将查询扩展(Query Expansion)和语义匹配(Semantic Matching)视为两个独立的任务,而是通过迭代协同训练将它们整合为一个统一的优化目标。

这一方法的意义在于:

  1. 提升了智能体的实用性:通过显著改善对模糊、非正式用户查询的检索能力,LLM 智能体能够更准确地找到所需工具,从而执行更复杂的任务。
  2. 优化了资源效率:相比于单纯增加模型规模或依赖昂贵的零样本推理,CoHyDE 通过训练特定的协同系统,以较低的推理成本实现了更高的检索精度。
  3. 提供了新的训练范式:展示了如何利用检索系统的反馈信号(Retrieval Scores)来指导生成模型的优化(通过 DPO),为其他需要生成与检索紧密耦合的场景提供了可借鉴的思路。

总之,CoHyDE 通过迭代协同训练,有效地弥合了用户意图与工具描述之间的差距,为构建更强大、更可靠的 LLM 智能体工具检索系统提供了新的解决方案。

查看原文 →arxiv.org