继续开始更新AI学习笔记——RAG技术

时间:2024-11-01 09:48:37

RAG技术:

1,读取文章,获得内容

2,分段成为chunks

3,向量化,形成向量数据库

4,用户问题,同样向量化

5,在向量库内部进行检索

6,检索获得有效文档,chunks,变成context

7,与问题和context形成prompt

8,将prompt给到大模型,进行输出

9,最后形成回答给到用户

RAG技术的卡点:

1,数据的读取,格式以及读取的问题

2,合理分段,分成chunk

3,如何合理embedding向量化

4,如何确保用户提出了有效问题,问题可能是无效,无价值的

5,检索有用的段落是否有效,正确

6,有效段落太多,是否排序,如何排序?

7,具体如何形成有效的prompt?格式如何?

8,使用什么大模型,通用的,还是开源微调的

9,如何给用户反馈,是否存在一个检查机制,不合格再重新生成?

数据量化与蒸馏:

简单来说,要减少数据的使用空间,压缩数据。那所有的数据如果精度很高,必然需要的资源就极大。

那如果统一使用一种精度,比如都使用浮点数16位,32比特的格式表示,那就统一数据表示形式,最后完成了数据空间的压缩。

蒸馏的意思是,原本使用大模型需要大量的资源以及相关数据,那使用一个小模型,不断调参,确保最后的输出结果与大模型相似,这样同样也压缩了数据空间。

另外还有一种,剪枝算法,也是一种压缩方式。

上述资料整理来自:up主:AI老兵文哲