【RAG 框架部署】LangChain-Chatchat (原 Langchain-ChatGLM) + Ollama
目录
前言
一、什么是RAG?
二、环境准备和Ollama搭建
1、conda虚拟环境配置
2、Ollama搭建
三、LangChain-Chatchat搭建
1、框架安装
2、文件配置
3、初始化知识库
4、启动Langchan-Chatchat
前言
由于LangChain-Chatchat的 0.3.0 版本已修改为支持不同模型部署框架接入,因此可在 CPU、GPU、NPU、MPS 等不同硬件条件下使用。本文用机位轻薄本,仅核显。
一、什么是RAG?
所谓RAG即Retrieval-Augmented Generation,检索增强生成。简言之就是检索、增强、生成,主要用于在大规模外部知识库(如文档库、网页、数据库等)中查找相关内容,并将这些检索到的信息作为上下文,输入给生成式模型,以获得更准确、丰富且可控的生成结果。
二、环境准备和Ollama搭建
1、conda虚拟环境配置
具体安装配置步骤参考YOLO系列环境配置及训练-CSDN博客
下载配置完成之后,我们进入Anaconda Prompt,同时利用如下命令创建虚拟环境Langchain:
conda create -n Langchain python=3.9
注意:Langchain-Chatchat已支持在Python 3.8-3.11 环境中进行使用,所以版本可以自己选择
2、Ollama搭建
我们进入Ollama的github项目界面,下拉找到需要的版本点击即可下载,例如我的是windows
安装完成之后,Ollama会出现在电脑右下角的图标中,为标志羊驼,之后我们以管理员身份运行cmd
接下来我们需要安装Ollma必要的模型quentinz/bge-large-zh-v1.5 和 bge-m3,其中quentinz/bge-large-zh-v1.5 主要支持中文,bge-m3则支持支持 100 多种工作语言。地址为:library
两个模型的下载命令分别为:
ollama pull bge-m3
ollama pull quentinz/bge-large-zh-v1.5
回到刚才以“管理员身份运行”打开的cmd,进行模型拉取,出现如下输出视为成功:
三、LangChain-Chatchat搭建
完成上述环境配置后,我们开始搭建LangChain-Chatchat。LangChain-Chatchat的git仓库地址为:chatchat-space/Langchain-Chatchat: Langchain-Chatchat(原Langchain-ChatGLM)基于 Langchain 与 ChatGLM, Qwen 与 Llama 等语言模型的 RAG 与 Agent 应用 | Langchain-Chatchat (formerly langchain-ChatGLM), local knowledge based LLM (like ChatGLM, Qwen and Llama) RAG and Agent app with langchain
1、框架安装
首先激活本文开始前创建的虚拟环境Langchain,之后将路径cd至你自己选择的一个目录:
conda activate Langchain
接着安装 Langchain-Chatchat
pip install langchain-chatchat -Upip install httpx==0.27.2 -U
注意: 重新安装对应的httpx是为了防止报错 [BUG] httpx包版本错误 · Issue #5115 · chatchat-space/Langchain-Chatchat
设置 Langchain-Chatchat 存储配置文件和数据文件的根目录(可选),不选的话就是默认存在当前路径:
set CHATCHAT_ROOT=/Langchain
执行如下命令初始化,出现如下输出视为成功:
chatchat init
2、文件配置
找到刚才初始化存放文件的位置,例如我的为D:\Langchain,找到model_settings.yaml
我们先设置DEFAULT_LLM_MODEL和DEFAULT_EMBEDDING_MODEL,本文使用deepseek的R1模型API进行配置
找到 platform_type并启用,修改它的值:
找到MODEL_PLATFORMS,修改它的auto_detect_model参数,设置为false,并配置embed_models:
下拉文件,找到openai,修改api_base_url、api_key和llm_models:
api_key为你自己申请的deepseek的密钥,具体申请路径如下:进入官网右上角API平台
所有配置完成后,保存并关闭model_settings.yaml
3、初始化知识库
回到虚拟环境Langchain的命令行操作界面,执行
chatchat kb -r
等待一段时间后,出现如下界面视为成功:
4、启动Langchan-Chatchat
在当前命令行继续执行如下命令:
chatchat start -a
你的默认浏览器会打开如下界面,若出现如下界面视为成功:
测试下对话功能
之后也可以在“知识库管理”上传需要的知识库进行补充 至此,RAG的框架就已经基本搭建完毕了