基于Langchain的大模型RAG技术介绍(附示例代码)

一、RAG简介

在大模型技术的迅速发展下,涌现了各种庞大的模型,形成了一场所谓的‘百模大战’。这些模型在大小和性能上各有所长,但大多数都是在通用语料库上进行训练的,因此它们只具备通用知识,对于专业领域的知识了解较少。由于训练大模型的成本颇高,许多专业领域难以负担这一费用,但专业人士又希望利用大模型的强大能力解决专业问题。为解决这一问题,出现了两种技术路线:

一种是通过使用专业领域的数据集微调通用大模型,使其具备相关领域的知识;

另一种是采用检索增强生成(RAG)技术,将专业领域的数据文档处理成向量,并存储到向量数据库中,然后通过提问问题进行检索匹配,从而传输匹配到的文档内容作为背景信息给大模型,使其暂时具备相关知识背景,进而生成更加精准的答案。

二、RAG架构介绍

RAG其核心理念可以简单概括为“检索+生成”。主要分为两个阶段:

1.检索阶段:首先将相关知识存储到向量库中,通过问题,利用向量数据库的高效存储和检索能力匹配找到相关的知识。

2.生成阶段:在Prompt工程的作用下来,将召回的相关知识融入到prompt中,传输给大模型,然后大模型以参考此信息,合理地整合这些内容,生成更加精准更加准确的答案。

架构图如下:

基于Langchain的大模型RAG技术介绍(附示例代码)_第1张图片

三、RAG任务示例代码

1.安装langch

你可能感兴趣的:(AI,langchain,人工智能,chatgpt,python)