热门搜索:和平精英 原神 街篮2 

您的位置:首页 > > 教程攻略 > ai资讯 >ChatQA:适用于对话任务的RAG套件

ChatQA:适用于对话任务的RAG套件

来源:互联网 更新时间:2026-08-13 14:31

在当前的问答生成任务中,大模型(LLMs)面临着一系列棘手的挑战。最核心的问题在于上下文理解能力的不足——无论是多轮对话中的历史信息(内部上下文),还是检索增强生成(RAG)所依赖的外部文档,模型都需要深入理解并有效利用。但现有方法常常两头不讨好:要么只盯着最后一轮问题去检索,结果因为缺少上下文线索,检索效果大打折扣;要么一股脑儿把所有对话历史都塞进模型,信息冗余反而拖累了生成质量。说白了,提升检索器对上下文的召回能力,以及生成器对上下文的理解和利用能力,是这道坎儿必须迈过去的关键。另一个麻烦是,生成模型容易“过于谄媚”——就算信息不够,也硬着头皮回答,结果就产生了“幻觉”。

针对这些问题,这篇论文ChatQA提出了一套创新的两阶段指令微调方法。简单来说,就是利用现有和自建的高质量微调数据集,一步步增强模型对上下文的理解和应用能力,同时教会模型在信息不足时老老实实说“无法回答”。为了更高效地处理会话输入,作者还别出心裁地把会话查询和上下文对(由自建数据集转换而来)拿来做检索器的进一步微调。

最终的实验数据相当有说服力:经过两阶段微调的ChatQA-1.0-70B模型,在完全没有使用任何OpenAI GPT合成数据的情况下,性能就超过了GPT-4-0613和GPT-4-Turbo。更值得关注的是,基于Llama3的ChatQA-1.5-70B在十个类别的数据集上全面超越了GPT-4-Turbo。另外,作者还发现,用会话数据微调单轮查询检索器,效果可以媲美查询重写,而且还不增加额外的计算时间和API成本。最后,在训练中引入一定比例的“无法回答”样本,能让模型在信息不足时准确地说出“无法回答”,从而大幅降低错误回答的风险。

1 微调生成器

论文的核心武器是一套两阶段指令微调方法,具体来看:

阶段1:监督微调(SFT)

这一阶段的目标很明确:让模型学会理解和遵循基本指令,能够进行流畅的对话生成。微调数据集用的是现有高质量的指令和对话数据,包括社交对话、长篇问答、FLAN以及合成指令数据集等。所有数据都以对话形式统一,包含“系统”、“用户”和“助手”角色。在每轮对话结束时,助手的最新回答就是模型输出的监督信号。这个模板引导模型在第一阶段完成基本的指令跟随训练。

阶段2:上下文增强的指令微调

第二阶段则更上一层楼:作者设计了基于上下文的单轮QA和对话QA数据集,对第一阶段得到的模型进行二次微调,目标是提升模型在上下文感知和RAG中的问答能力。

  • 人工数据集(HumanAnnotatedConvQA)

    :从互联网收集了7000个涵盖多种主题的文档,通过会话问答数据收集指南,让标注者扮演提问用户和回答助手,为每个文档生成一个多轮对话,平均每段对话包含5轮用户-助手互动。不可回答场景的设计也很巧妙:标注者先标记出与问题相关的上下文,然后删除这些相关上下文,就能模拟无法回答的情况。标准回复是“抱歉,根据上下文找不到答案”。
  • 合成数据集(SyntheticConvQA)

    :为了验证人工数据集的质量,作者用GPT-3.5-Turbo生成了一个合成对话问答数据集。从Common Crawl中收集7000个文档,每个约1000字,覆盖广泛领域。针对每个文档,使用模板生成一个多轮对话问答样本,平均每段包含4.4轮互动。不可回答场景的模拟:先把文档切块,用4-gram召回分数评估每个块与答案的重叠程度(高于0.5为“高度重叠”,低于0.1为“低度重叠”),然后删除高度重叠的块。如果剩余上下文不足以回答问题,就把样本标记为不可回答。
  • 混合数据集

    :将多轮对话数据集(人工或合成)、单轮对话数据集(增强问答能力)、金融领域数据(考察表格和算术计算能力)以及第一阶段SFT数据(维持指令跟随能力)混合在一起。
  • 微调方法

    :使用混合数据集和第二阶段模板,在基础模板基础上增加了{Context for Latest Question}和{Instruction}来强化上下文理解。每轮对话结束时仍以助手最新回答作为监督信号,且针对不同答案类型(短答案、长答案、算术计算等)使用不同的指令。

2 微调检索器

多轮对话中,检索器经常遇到麻烦——比如处理带代词的后续问题时,要么信息不足,要么冗余输入。作者的办法是用自建的高质量对话数据集对检索器进行微调。具体来说,用对话(查询,上下文)对来进一步微调单轮检索器,让它更好地应对多轮对话输入。

  • 对于HumanAnnotatedConvQA:直接使用人工标注的(查询,上下文)对数据。
  • 对于SyntheticConvQA:将每个文档切块,计算助手回答与每个块的4-gram召回分数,把最高分的块作为黄金上下文,然后构建对话(查询,上下文)对来微调检索器。

这样一来,检索器就能更深入地理解多轮对话的上下文,从而在开放域问答中更精准地找到相关信息。

3 实验要点总结

3.1 评估检索器

在五个现有的长文本对话问答数据集上,作者对比了微调检索器和使用查询重写(GPT-3.5-Turbo)方法的召回率,结果清晰地证明了在人工构建数据上微调的检索器效果更胜一筹。

3.2 评估生成器

ChatQA与各种基线方法在10个对话式问答数据集上进行了较量。结果显示,Llama3-ChatQA-1.5-8B已经能与最先进的OpenAI模型(GPT-4-0613和GPT-4-Turbo)打成平手,而Llama3-ChatQA-1.5-70B则直接超越了所有最强基线。

3.3 消融实验

消融实验带来了几个关键发现:

  • 分阶段调优的重要性:阶段1增强了指令遵循能力,为阶段2铺好了路;阶段2则教会模型如何有效利用检索到的上下文信息。
  • 单轮对话数据集的有效性:引入单轮QA数据反而能提升多轮问答能力,说明模型从单轮数据中学会了高效利用相关上下文。
  • 对话问答数据的必要性:移除对话问答数据会明显损害多回合问答能力。
  • 人工标注数据的质量:使用合成数据与人工数据的模型在平均得分上不相上下,说明要构建先进的对话问答模型,并不一定非要依赖OpenAI的合成数据——人工数据同样靠谱。

作者还研究了训练/测试不匹配的问题:微调时上下文是连续段落,但推理时模型要处理检索回来的前k块文档。用前5块作为训练上下文,能提升需要检索的数据集的表现,但会降低非检索数据集的表现,两者总体相当。此外,还做了关于上下文块数量、排序以及不同检索器对RAG结果影响的消融研究。

3.4 拒答实验

在QuAC和DoQA数据集上,ChatQA模型与OpenAI模型进行了对比。有趣的是:

  • 使用人工标注数据比合成数据显著提高了平均准确率,因为人工注释的“无法回答”标签质量更高。
  • 最佳模型ChatQA-1.0-70B相比GPT-3.5-Turbo有明显优势,但与GPT-4-0613相比仍有约3.5%的差距。
  • Llama3-ChatQA-1.5系列的表现反而比ChatQA-1.0-70B略低,原因是在找不到答案时,模型倾向于用自身知识硬答,导致拒答准确率下降。
  • 关于“无法回答”样本数量的消融研究发现,只要引入少量(如1.5k个)此类样本,就能在拒答评估和整体ChatRAG Bench得分上取得显著效果,但增加更多样本并不一定带来更高准确率。

3.5 其他实验

  • 针对不同类型数据的性能分析:ChatQA-1.0-70B在纯文本文档上表现更好;GPT-4-0613在表格数据上更占优势;在需要检索与不需要检索的数据集上两者旗鼓相当;而Llama3-ChatQA-1.5-70B在所有类别上都全面超过了GPT-4-0613和GPT-4-Turbo。
  • 人工评估进一步验证了F1/EM指标的有效性,证明ChatQA与GPT-4的竞争确实激烈。
  • 在知识密集数据集上的表现同样亮眼。

4 总结

这篇论文提出了一套适用于多轮对话的RAG框架,通过微调检索器和生成器,让RAG组件真正具备了对话上下文的召回能力。在大量数据集上进行的实验充分验证了ChatQA的有效性,证明它完全能与最先进的GPT-4模型掰手腕。

关于宇宙的好的网名有哪些
关于宇宙的好的网名有哪些

类型:角色扮演

大小:1

语言:简体中文

平台:互联网

游戏下载

热门手游

手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc