书生·浦语大模型 第三节课 "茴香豆"实现LLM+RAG
Introduction
RAG(Retrieval Augmented Generation,检索增强生成)
RAG(Retrieval Augmented Generation)技术,通过检索与用户输入相关的信息片段,并结合外部知识库来生成更准确、更丰富的回答。解决 LLMs 在处理知识密集型任务时可能遇到的挑战, 如幻觉、知识过时和缺乏透明、可追溯的推理过程等。提供更准确的回答、降低推理成本、实现外部记忆。
该技术可以将外部知识库结合进大模型原本的向量化知识中。
RAG 能够让基础模型实现非参数知识更新,无需训练就可以掌握新领域的知识。本次课程选用的茴香豆应用,就应用了 RAG 技术,可以快速、高效的搭建自己的知识领域助手。
向量数据库
通常使用余弦相似度 或 点乘的方式计算得到结果。
RAG运行过程
RAG发展历程
RAG运行过程这一节介绍的就是Naive RAG
Advanced RAG相较于Naive RAG,就是在检索前后分别增强,具体来说,在检索之前,对用户的问题进行路由、扩展、重写等处理;在检索之后,对于检索到的信息进行重排序,总结,融合等处理。
Modular RAG进一步将RAG以及Advanced RAG中涉及的技术进一步模块化。
RAG常用方法
RAG v.s. Fine-tuning(微调)
LLM模型优化比较
茴香豆
茴香豆构建
支持markdown,pdf,txt,word,powerpoint等文件
当前 本地支持 书生浦语、通义千问大模型
远端支持Kimi,chatGPT等
茴香豆工作流
Overview
Preprocess(重写问题)
筛选问题,转化为合适的问询
Rejection Pipeline(规范回答领域、频率)
将问询和数据库信息进行比对,判断是否进入回答流程
通过调整LLM scoring阈值,调整模型的回答频率
Response Pipline
回答
完整工作流
多来源检索信息
综合多来源,通过评分进行筛选
本地向量数据库
将文本知识转化为向量数据库存储起来,作为LLM的知识库(Knowledge DB)
网络搜索
可以搜索实时/知识库未来的更新的信息
知识图谱
准确、干净的知识
混合基座: 混合大模型
本地LLM+远程LLM
安全检测
保证生成的安全性
实战-Intern Studio部署茴香豆
Reference
本实验 & 茴香豆参考文档: Tutorial/huixiangdou/homework.md at camp2 · InternLM/Tutorial · GitHub
本文截图 & 本课程视频:https://www.bilibili.com/video/BV1QA4m1F7t4/