返回顶部
热门问答 更多热门问答
技术文章 更多技术文章

Multi-Head RAG:复杂问题的RAG召回方案

[复制链接]
链载Ai 显示全部楼层 发表于 昨天 10:59 |阅读模式 打印 上一主题 下一主题


这个工作要解决个什么问题呢? RAG 得流程是通过将文档召回,放入LLM的上下文中,来提供更准确和相关的答案。但是现有的 RAG 解决方案可能比较难处理,召回的内容来自完全不同的文档,因为这些文档在语义空间中可能很远,很难将它们全部检索出来。

论文中有张图如下图,正常的RAG在遇到query有点复杂的时候,在召回的时候就很麻烦。如果是纯粹的绿点主题或者黄点主题那都没太大问题。但是如果是复杂的多主题的,到向量空间之后就不好召回了。

那咋整呢,大概的一个方案就是下图,query被拆解成了多个向量,每个向量比较纯粹,类似于多路召回,总能匹配到需要的chunk。

怎么获取多个向量呢? MRAG通过使用Transformer的多头注意力层的特征作为向量表征,而不是仅使用取最后解码器层的输出,这样做的动机是不同的注意力头可以学习捕获数据的不同方面。每一层取一个向量,取最后一个位置的。chunks和query都生成多个向量,检索的时候,使用投票策略,结合了不同嵌入空间的重要性得分(根据一层的头内向量空间分布计算的),来选择最相关的文本块,并根据其重要性对检索结果进行加权。

最后结果在召回的相关性方面获得了比较大的提升


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

链载AI是专业的生成式人工智能教程平台。提供Stable Diffusion、Midjourney AI绘画教程,Suno AI音乐生成指南,以及Runway、Pika等AI视频制作与动画生成实战案例。从提示词编写到参数调整,手把手助您从入门到精通。
  • 官方手机版

  • 微信公众号

  • 商务合作

  • Powered by Discuz! X3.5 | Copyright © 2025-2025. | 链载Ai
  • 桂ICP备2024021734号 | 营业执照 | |广西笔趣文化传媒有限公司|| QQ