当前位置: 首页 > news >正文

RAG 与 HyDE

传统 RAG 与 HyDE,直观解释!

传统 RAG 系统的一个关键问题是问题在语义上与答案不相似。

考虑以下示例,您想要找到类似于“什么是 ML?”的句子。 “什么是 AI?” 可能看起来比“机器学习很有趣”更相似。

这种语义差异导致在检索步骤中检索到几个不相关的上下文。

HyDE 解决了这个问题。

下面的视觉效果说明了这种方法与传统 RAG 的不同之处。

它的工作原理如下:

- 使用 LLM 为查询 (Q) 生成假设答案 (H)。 这个答案不必完全正确。

- 使用检索器模型嵌入答案以获得 E。 经过对比学习训练的双编码器通常用于此目的。

- 使用嵌入 E 查询向量数据库并检索相关上下文 (C)。

- 将假设答案 H、检索到的上下文 C 和查询 Q 传递给 LLM 以生成最终答案。

完成!

现在,当然,生成的假设可能会包含幻觉细节。

但这不会严重影响性能,因为检索器模型是嵌入的。

更具体地说,该模型使用对比学习进行训练,它还可以用作近无损压缩器,其任务是过滤掉虚假文档的幻觉细节。

这会产生一个向量嵌入,预计它与实际文档的嵌入的相似度要高于问题与真实文档的相似度。

多项研究表明,与传统嵌入模型相比,HyDE 提高了检索性能。

但这是以增加延迟和更多 LLM 使用为代价的。

喜欢这个吗?你也应该看看我的 RAG 系列!从构建和优化 RAG 应用程序到评估性能和制作代理和多模式系统——一切都在这里。


@akshay_pachaar

http://www.lryc.cn/news/492016.html

相关文章:

  • 在WPF程序中实现PropertyGrid功能
  • 【R语言管理】Pycharm配置R语言及使用Anaconda管理R语言虚拟环境
  • .Net与C#
  • 使用ElementUI中的el-table制作可编辑的表格
  • 开放性技术的面试题该如何应对?
  • Leetcode 面试150题 88.合并两个有序数组 简单
  • CGAL CGAL::Polygon_mesh_processing::self_intersections解析
  • esp32触发相机
  • webrtc支持h265
  • macos 14.0 Monoma 修改顶部菜单栏颜色
  • 在 Mac(ARM 架构)上安装 JDK 8 环境
  • Linux高阶——1123—
  • VOLO实战:使用VOLO实现图像分类任务(二)
  • 【kafka02】消息队列与微服务之Kafka部署
  • MySQL系列之数据类型(Numeric)
  • BERT简单理解;双向编码器优势
  • LLamafactory 批量推理与异步 API 调用效率对比实测
  • spf算法、三类LSA、区间防环路机制/规则、虚连接
  • C语言学习 12(指针学习1)
  • TypeError: issubclass() arg 1 must be a class
  • Java面试题、八股文学习之JVM篇
  • 【eNSP】动态路由协议RIP和OSPF
  • 春秋云境 CVE 复现
  • Linux入门攻坚——39、Nginx入门
  • 计算机网络的类型
  • 解决 MySQL 5.7 安装中的常见问题及解决方案
  • VITE+VUE3+TS环境搭建
  • 【设计模式】【创建型模式(Creational Patterns)】之原型模式(Prototype Pattern)
  • 黄仁勋:人形机器人在内,仅有三种机器人有望实现大规模生产
  • 【C语言】宏定义详解