RAG学习笔记

向量数据库

它是专门把文本、图像、音频等非结构化数据转成高维向量后,再进行"语义级"存储、检索与管理的专用数据库。

以「向量」为第一等公民的数据库系统,支持相似度计算(余弦、点积、欧氏距离)和高维索引(HNSW、IVF、PQ )等。

索引结构

HNSW(分层可导航小世界)

把所有向量构建成一个"多层图",搜索时像"导航一样跳来跳去"

其中,每个向量是一个节点,节点之间连"相似边",此图中上层是稀疏图(快速定位),下层是密集图(精细搜索)

搜索流程:从最高层开始,每次走到"更相似的点";一层一层往下,最后找到最近邻。

优点:查询速度快,精度高,工业界常用

缺点:内存占用大,构建索引慢

IVF(倒排索引)

先把数据"分桶",只在相关桶里查。

类似于聚类的流程:

1、用k-means把向量分成N个簇。

2、每个簇就是一个"桶"。

3、查询时,找最近的几个簇,只在这些簇里搜索。

优点:比暴力搜索快,可扩展性强。

缺点:可能漏掉最近邻,精度略低于HNSW

PQ(乘积量化)

核心思想:把向量"压缩编码",用查表代替距离计算。当需要查询时,预先算好距离表,直接查表(速度快)

优点:极大节省内存;适合超大规模(亿级)

缺点:有精度损失,需要训练codebook

Disk ANN(基于磁盘的神经网络)

核心思想:把索引放在磁盘上,同时还能做到接近内存及速度。

相较于HNSW,DISKANN部分在内存,大部分在磁盘。

优点:支持超大规模(10亿+),内存占用极低,性能接近HNSW。

缺点:实现复杂,强依赖磁盘性能(SSD)

常见组合

1、IVF+PQ(最经典):先分桶,再压缩

2、HNSW+PQ:图结构+压缩

3、DiskANN:HNSW+磁盘优化

向量检索

核心概念:给定一个「查询向量」,在庞大的向量集合里毫秒级找出与其最相似的 Top-K 个向量,并返回对应原始对象(文本、图片、商品等)的过程。

应用场景

1、RAG:把用户问题向量与知识库向量匹配,召回最相关段落。

2、推荐:用用户行为找相似商品/视频

3、以图搜图,异常检测等。

相关推荐
世人万千丶8 小时前
参数管理_Flutter在鸿蒙平台路由参数最佳实践
学习·flutter·华为·harmonyos·鸿蒙
遇乐的果园10 小时前
前端学习笔记-vue加载渲染优化
前端·笔记·学习
遇乐的果园12 小时前
前端学习笔记-vue状态管理优化
前端·笔记·学习
从零开始的代码生活_12 小时前
C++ 继承详解:访问控制、对象模型、菱形继承与设计取舍
开发语言·c++·后端·学习·算法
可乐奶茶sky13 小时前
AI Agent 学习
人工智能·学习
摇滚侠13 小时前
Java 全栈开发实战教程 课程笔记 29-33
笔记
茯苓gao13 小时前
嵌入式开发笔记:EtherCAT协议从硬件到软件完整配置指南——从零搭建一套EtherCAT通信系统
笔记·嵌入式硬件·学习
whyTeaFo14 小时前
GAMES101: Lecture 9: Shading 3(Texture Mapping cont.) ppt笔记
笔记
RD_daoyi15 小时前
外链权重暴跌至13%,品牌提及反超传统链接——2026年不做Digital PR,你的独立站等于隐形
运维·网络·学习·机器学习·搜索引擎
chase。15 小时前
【学习笔记】PointWorld:迈向通用机器人操控的3D世界模型
笔记·学习·机器人