一、介绍

基于 ChatGLM 等大语言模型与 Langchain 等应用框架实现,开源、可离线部署的检索增强生成(RAG)大模型知识库项目。

二、原理

原理我就不多介绍了,github仓库描述的很是清楚.参考

三、快速上手
1. 环境配置

首先,确保你的机器安装了 Python 3.8 - 3.11 (我们强烈推荐使用 Python3.11)。 本人使用conda虚拟环境安装的! conda安装和使用可以参考我之前的文章Win安装Conda及其环境配置(包含pip、conda换源)

# 创建python版本3.11 的虚拟环境
conda create -n Langchain python=3.11
# 进入虚拟环境
conda activate Langchain

$ python --version
Python 3.11.7

接着,创建一个虚拟环境,并在虚拟环境内安装项目的依赖


# 拉取仓库
$ git clone https://github.com/chatchat-space/Langchain-Chatchat.git

# 进入目录
$ cd Langchain-Chatchat

# 安装全部依赖
$ pip install -r requirements.txt 
$ pip install -r requirements_api.txt
$ pip install -r requirements_webui.txt  

# 默认依赖包括基本运行环境(FAISS向量库)。如果要使用 milvus/pg_vector 等向量库,请将 requirements.txt 中相应依赖取消注释再安装。

注意:如果显卡支持,可以安装 pytorch ,进入 https://pytorch.org/get-started/previous-versions/ 页面搜索 11.6(这是我的 cuda 版本),即可找到对应版本的下载命令; 如果遇到问题可以参考

请注意,LangChain-Chatchat 0.2.x 系列是针对 Langchain 0.0.x 系列版本的,如果你使用的是 Langchain 0.1.x 系列版本,需要降级您的Langchain版本。

2. 模型下载

如需在本地或离线环境下运行本项目,需要首先将项目所需的模型下载至本地,通常开源 LLM 与 Embedding 模型可以从 HuggingFace 下载。

以本项目中默认使用的 LLM 模型 THUDM/ChatGLM3-6B 与 Embedding 模型 BAAI/bge-large-zh 为例:
下载模型需要先安装 Git LFS ,然后运行

$ git lfs install
$ git clone https://huggingface.co/THUDM/chatglm3-6b
$ git clone https://huggingface.co/BAAI/bge-large-zh

前提是要有代理软件,如果 git 拉取代码的时候报下面的错 Failed to connect to huggingface.co port 443 after 21045 ms: Couldn’t connect to server ,将 git 的代理重新设置一下,然后尝试重新 clone 。

git config --global http.proxy http://127.0.0.1:10809
git config --global https.proxy http://127.0.0.1:10808
3. 初始化知识库和配置文件
  1. 按照下列方式初始化自己的知识库和简单的复制配置文件
$ python copy_config_example.py

修改配置文件model_config.py中修改模型路径:
bge-large-zh
在这里插入图片描述
在这里插入图片描述

chatglm3-6b
在这里插入图片描述
初始化向量数据库

$ python init_database.py --recreate-vs
  1. 一键启动
    按照以下命令启动项目
$ python startup.py -a

注意:-a 参数是all,启动所有服务。具体可以查看添加启动参数进行启动

  1. Web UI 启动界面示例:
    3.1 Web UI 对话界面
    在这里插入图片描述3.2 Web UI 知识库管理页面:
    在这里插入图片描述注意

以上方式只是为了快速上手,如果需要更多的功能和自定义启动方式 ,请参考github中的 Wiki

Logo

欢迎加入 MCP 技术社区!与志同道合者携手前行,一同解锁 MCP 技术的无限可能!

更多推荐