RAG__0">1 RAG 基础面
1.1 为什么大模型需要外挂 (向量) 知识库?
如何将外部知识注入大模型,最直接的方法:利用外部知识对大模型进行微调。
思路: 构建几十万量级的数据,然后利用这些数据 对大模型进行微调,以将 额外知识注入大模型
优点: 简单粗暴
缺点:
这几十万量级的数据 并不能很好的将额外知识注入大模型;
训练成本昂贵。不仅需要 多卡并行,还需要 训练很多天;
既然大模型微调不是将外部知识注入大模型的最优方案,那是否有其它可行方案?
RAG__10">1.2. RAG 思路是怎么样?
⚫ 加载文件
⚫ 读取文本
⚫ 文本分割
⚫ 文本向量化
⚫ 问句向量化
⚫ 在文本向量中匹配出与问句向量最相似的 top k 个
⚫ 匹配出的文本作为上下文和问题一起添加到 prompt 中
⚫ 提交给 LLM 生成回答