引言

在知识密集型场景中,让智能系统生成与事实一致的响应一直以来都是研究人员的目标。尽管大语言模型(LLMs)在其参数记忆中内化了大量的世界知识,但仍然受限于虚构事实。引入非参数(即基于检索的)记忆知识可以显著增强LLM回复的事实性。但是当前的参数知识增强框架面临着三个主要挑战:(1) 复杂的查询意图。指令的多样性(例如,多项选择题、多轮对话和复杂问题)导致了对知识意图的混淆。(2) 知识检索不可避免地会引入不同粒度(文档和句子)的噪音,不相关的文档和多余的跨度会分散响应的注意力,导致更严重的幻觉。(3)知识利用度不足。LLM通常倾向于依赖其自身编码的参数知识,而不是提供的外部事实 。对于这种复杂的知识密集型任务中一系列挑战,通常需要执行一系列长轨迹操作来完成,例如重建知识意图、访问外部知识、区分相关知识文档、识别事实片段,最终构建有依据的响应。

因此,本文首先提出了⼀种多智能体框架-SMART,将这些动作整合到复杂的知识密集型任务中,其中每个智能体执行一个特定的子任务。SMART包括:意图重建器(从各种指令中澄清知识意图)、知识检索器(访问外部知识)、事实定位器(评估检索到的知识,并从干扰项中识别事实片段)、响应生成器(忠实地利用事实,并在有事实的情况下进行引用)。

然而,目前大多数多智能体框架都是以非训练方式运作,引导多个智能体在复杂的轨迹上进行协作是一个长期存在的挑战:一方面,模块化操作,即将各个独立的学习模块串联起来,每个模块专注于一个特定的智能体,可以简化处理过程。但是,这种方法可能导致错误积累,因为早期模块中的错误会在整个流程中传播。另一方面,让LLM变体模仿整个轨迹,虽然可以缓解模块化系统中的碎片化和错误传播,但这种长期和全局的监督不能保证每个智能体的细粒度表征。总体而言,应该保证协同效应的同时,确保每一个智能体的贡献。

为了应对这⼀挑战,本文提出了一种多智能体协同训练的方法,即长短轨迹学习。该方法包括两个阶段,短轨迹首先学习激活框架中的每个特定智能体,长轨迹学习通过轨迹令牌骨架学习确保智能体间的协同效应。为了在这两个阶段建立共同的监督信号,同时实现各自不同的训练目标,使用特殊的令牌(轨迹令牌)让每个智能体在训练过程中识别归属轨迹,同时学习智能体间的交互信号。在五项知识密集的下游任务上的实验结果证明了所提框架的有效性和先进性。

本文框架是一个通用范例,它可以从知识密集型任务扩展到更复杂的场景,使任何多智能体框架都能内化量身定制的轨迹。

图1:知识密集型场景的长轨迹示例(上图)和多智能体协调框架比较(下图)

论⽂地址:

https://arxiv.org/abs/2407.09893

项目地址:

https://github.com/yueshengbin/SMART

方法介绍

图2:多智能体框架

01.多智能体框架-SMART

为了应对知识密集型场景中的复杂挑战,SMART包含四个关键智能体,每个智能体负责一个特定的子轨迹,通过协同这些智能体以获得最终的响应。

  • 意图重构器。该智能体旨在从不同的用户指令中澄清知识查询意图。它拥有四种主要能力:整合上下文线索、过滤噪声、统一表述和意图分解。例如图2中,在处理模糊问题时,比如 “A 和 B 谁出生得早?”需要把它们分解成多个子问题,例如每个人的出生日期。

  • 知识检索器。该智能体旨在访问外部知识库(如维基百科),并根据重建的意图获取相关知识。具体而言,它由一个现成的检索模型驱动,针对每个知识意图从知识库中获取top-k个知识文档。

  • 事实定位器。该智能体旨在评估每个知识文档与给定指令的相关性,以确定相关文档。然后,从相关文档中找出事实跨度作为支持证据。事实定位器有两个主要作用:(1) 相关性判断以尽量减少无关文档跨度的干扰,并使响应阶段更加专注于事实证据。(2) 通过明确学习查找事实,它可以增强知识应用过程的可解释性,提高用户的可信度。

  • 响应生成器。该智能体旨在最终生成对用户指令的响应。当提供了事实,它就会调整自己的知识偏好以符合这些事实。否则,响应生成器依靠其自身知识来响应。

02.长短轨迹数据集构造

为了长短轨迹学习以优化我们的多智能体框架,本文构建了轨迹数据集。轨迹数据集从12 个知识密集型任务中收集样本,以确保覆盖各种语义和格式指令,例如事实验证、对话,开放领域问答, 常识推理等. 详细统计数据见论文附录A.1的表5。轨迹数据集遵循两个不同的原则包含两个部分:长轨迹子集和短轨迹子集。

表1:四种轨迹Tokens。x、q、d、r、f 和 y分别表示指令、意图、知识文档、相关性标签、事实证据和回应。

长轨迹子集

  • 特点:该子集旨在精确模拟多智能体框架推理过程,强调智能体间的协同和逻辑交互。

  • 大小:140K

  • 构造方法:

    给定原始数据输入-输出对 (x, y),在检索模型和批判模型的指导下创建监督数据。

    1、根据指令类型,利用批判模型澄清 x 中的知识意图 。

    2、检索模型会根据每条知识意图检索出top-k篇知识文档。

    3、对于每个文档,批判模型会根据 _(x, y)_进一步评估该段落是否相关。如果段落是相关的,会进一步定位并提取事实跨度。

    4、如表2所示,为每个轨迹插入轨迹头和轨迹尾令牌插入,然后合并数据。

短轨迹子集

  • 特点:旨在增强单个智能体对专属轨迹的细粒度理解,强调每个智能的独特性。

  • 大小:360K

  • 构造方法:

    短轨迹子集的特点使得能够通过一些简单的处理,直接从大量现有的知识密集型任务中获取数据。因此,我们从现有的 NLP 和 SFT 数据集中采样,附加必要的轨迹头和尾标记。需要注意的是,现有的 NLP 数据集无法满足我们的意图重构要求,因此我们采用了长轨迹子集收集中相同的方法来收集意图重构的数据。表2展示了每个智能体负责的每个短轨迹的输入和输出。

03.长短轨迹学习

图3:长短轨迹学习

有效微调由多个智能体组成的轨迹系统是一项复杂的任务:一方面,每个智能体都有其需要关注的特定轨迹信号。另一方面,轨迹之间的转换需要智能体间的协作。此外,多个智能体的轨迹数据构建成本也极大地阻碍了此类系统的开发。为此,我们提出了长短轨迹学习(Long Short-Trajectory Learning)方法,它包括短轨迹学习和长轨迹学习两个阶段。前一阶段在轨迹头标记的提示下学习任务输出,从而使框架学会区分不同的智能体并确认感兴趣的细粒度信息。这种独立性可以利用现有的 NLP 数据集进行预训练和有针对性的优化,从而提高训练效率。后一阶段需要对任务输出和整个过程中的间歇轨迹标记进行预测,从而建立从上一个智能体到下一个智能体的导航路径。

短轨迹学习

如图3所示,给定输入xi和轨迹头hi,短轨迹学习(Short Trajectory Learning)使智能体学习预测输出yi和轨迹尾ei,即为智能体划定不同的归属轨迹,使其了解相应任务的输出所需要关注的细粒度信号。这一阶段利用易于获取的大量数据来构建智能体的基本能力,从而降低了这种框架的成本,同时保持创造性和多功能性。

具体而言,给定短轨迹子集Dshort,初始化一个预训练的 LLM。对于每个训练样本 , 使用标准的条件语言建模目标:

长轨迹学习

经过上述阶段,长轨迹学习(Long Trajectory Learning)使其能够以端到端的方式在智能体之间建立关联。与短轨迹学习不同,该阶段既要学习预测每条短轨迹的目标输出,也要学习从上一条轨迹终点 eT到下一条轨迹头部 hT+1

给定 Dlong 进行训练,具体来说,在给定指令xi的情况下,长轨迹学习会强制 LLM 学习长轨迹过程:

其中,R、I 和 G 分别表示 意图重构器、事实定位器和 响应生成器。

实验部分

01.实验设定

  • 评测任务。我们在一系列知识密集型下游任务中对我们的框架进行了评估。包括:(1)事实验证:PubHealth;(2)多项选择推理:ARC-Challenge 。(3) 开放域问题解答:PopQA 和SQuAD 1.1 。(4) 含糊问题解答:ASQA。

  • 基准模型。我们将我们的框架与两类基准方法进行了比较。

    (1) 知识内化方法:ChatGPT 、Mistral-Instruct-v0.2-7B 、Llama-2-Chat-7B/13B 、Vicuna-v1.5-13B 和 Aplca2-7B。

    (2)知识增强方法:REPLUG-7 , VANILLA-7B , INTERACT-7B , RAIT-7B, SelfRAG-7B, MMAgent-3*7B。

02.对比实验结果

  • 与知识内化方法比较

  • SMART在所有任务中都显示出比同等大小LLM 更强的性能优势。与拥有更多内化知识的大型 LLM(Vicuna-v1.5-13B 和 Llama-2-Chat-13B)相比,我们的 SMART 框架在所有指标中也表现出卓越的性能。此外,我们的框架在 PopQA(长尾知识评估)、Squad1 和 ASQA 的所有评估指标中都超越了 ChatGPT。

  • 实验结果表明,与需要对大量私有数据进行微调和训练的知识内化方法相比,我们的方法更有效地处理长尾知识,提供更准确的响应。

  • 与知识增强方法的比较

  • 考虑到公平性和说服力,SMART 比较了基于与我们相同规模的知识增强方法。与MMAgent(四个独立智能体直接耦合) 相比,SMART 在所有指标上都优于它,这表明SMART显著提示了多智能体协作,从而产生了更准确的响应。

  • 总体而言,我们的 SMART 在各种知识密集型任务中都表现出色。

03.消融实验结果

不同智能体的贡献

  • 训练消融:在这个设置中,使用来自长轨迹子集的 60k个样本实施长轨迹学习训练四个不同的框架,以评估不同智能体缺失场景下框架的性能。如表的上半部分所示,事实定位器和意图重构器的缺失显著降低了框架的性能。

  • 推理消融:在这个设置中,使用完整的数据经过短长轨迹学习的框架,在推理阶段忽略不同智能体的轨迹。如表3底部所示,每个代理在协作框架中都扮演着重要的角色。我们的长短轨迹学习可以在保持性能的前提下灵活地插入代理组合,这是目前端到端训练系统所无法企及的。

长短轨迹学习的影响

长短轨迹学习通过两阶段学习优化多智能体框架。我们通过在原始模型 Llama-2-7B上进行训练,逐步证明其有效性。如表所示,短轨迹学习和长轨迹学习使框架在所有任务上的性能得到巨大提升。长短轨迹学习的组合方法可产生最佳性能。短轨迹学习通过优化每个智能体的基本能力来增强系统,尽管其影响不如长轨迹学习那么大,但是复杂的长轨迹数据构建带来了挑战。

长轨迹学习训练数据大小的影响

为了研究长轨迹训练数据对长短轨迹学习的影响,我们从最初的 140k 个训练实例中随机选择了 8k、20k、60k 和 121k 个实例子集,并在这些子集上微调了四个 SMART 变体。随后,我们将模型在 ARC-C、PopQA 和 ASQA 上的性能与我们的 SelfRAG 和 MMagent 模型进行了比较。如图 所示,数据大小的增加通常会导致所有数据集的性能提高。值得注意的是,通过利用 60k 个数据实例,SMART 在ASQA表现优于使用 120k 个样本的 SelfRAG。这证明了这种长短轨迹学习策略可以在减少成本的同时,显着提高多智能体框架的性能。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐