Bootstrap

Langchain-Chatchat 0.3.1保姆级部署教程

引言

Langchain-Chatchat是一个基于 ChatGLM、Qwen 等大语言模型与 Langchain 等应用框架实现,开源、可离线部署的 RAG 与 Agent 应用项目。目前支持Agent、LLM对话、知识库对话、搜索引擎对话、文件对话、数据库对话、多模态图片对话、ARXIV文献对话、Wolfram对话、文生图、本地知识库管理、WEBUI等功能。模型部署框架支持 Xinference、LocalAI、Ollama、FastChat等,能够实现本地模型以及API的调用,几乎能够实现现有所有大模型的推理。项目库地址:Langchain-Chatchat

本教程基于Ubuntu系统实现,Windows系统类似。

环境搭建

深度学习环境搭建

这部分不在赘述,常用的深度学习开发环境搭建相比大家已经烂熟于心。主要包括以下步骤:
1.安装英伟达驱动、CUDA、cudnn。
2.安装Anaconda包管理工具。
3.创建相应环境,并安装常用库。

Langchain-Chatchat环境搭建

1.安装Chatchat库,方便运行。

pip install "langchain-chatchat[xinference]" -U -i https://pypi.tuna.tsinghua.edu.cn/simple

2.安装xinference库,实现模型推理。

pip install "xinference[all]"

xinference

启动xinference

在安装完相应的环境后,启动xinference以进行模型部署。
通过命令行执行

xinference-local --host 0.0.0.0 --port 9997

来启动xinference,启动后访问:IP:9997 即可进入xinference主界面。
在这里插入图片描述

部署模型

选择我们需要部署的模型,比如我这里选择Qwen2进行部署。填写相应的参数,进行一键部署。第一次部署会下载模型,可以选择国内通道modelscope下载,速度较快。
在这里插入图片描述
在这里插入图片描述
此时可以返回终端查看模型下载进度,下载完成会自动部署。部署完成后,会展示在Running中,可以通过打开模型UI进行访问。
在这里插入图片描述
在这里插入图片描述
chatchat至少需要一个语言模型和一个向量模型,本文选择Qwen2-instruct和bge-m3这两个模型。

启动chatchat

初始化

设置 Chatchat 存储配置文件和数据文件的根目录

# on linux or macos
export CHATCHAT_ROOT=/path/to/chatchat_data

# on windows
set CHATCHAT_ROOT=/path/to/chatchat_data

执行初始化命令,生成配置文件

chatchat init

在这里插入图片描述

修改配置文件

配置模型(model_settings.yaml)

# 默认选用的 LLM 名称
 DEFAULT_LLM_MODEL: qwen2-chat

 # 默认选用的 Embedding 名称
 DEFAULT_EMBEDDING_MODEL: bge-m3

# 将 `LLM_MODEL_CONFIG` 中 `llm_model, action_model` 的键改成对应的 LLM 模型
# 在 `MODEL_PLATFORMS` 中修改对应模型平台信息

基础配置文件(basic_settings.yaml)

# 各服务器默认绑定host。如改为"0.0.0.0"需要修改下方所有XX_SERVER的host
# Windows 下 WEBUI 自动弹出浏览器时,如果地址为 "0.0.0.0" 是无法访问的,需要手动修改地址栏
DEFAULT_BIND_HOST: 0.0.0.0
# API 服务器地址
API_SERVER:
  host: 192.168.60.203		# 自己服务器IP
  port: 7861
# WEBUI 服务器地址
WEBUI_SERVER:
  host: 192.168.60.203		# 自己服务器IP
  port: 8887

初始化知识库

在进行知识库初始化前,请确保已经启动模型推理框架及对应 embedding 模型

chatchat kb -r

出现以下日志即为成功

----------------------------------------------------------------------------------------------------
知识库名称      :samples
知识库类型      :faiss
向量模型:      :bge-large-zh-v1.5
知识库路径      :/root/anaconda3/envs/chatchat/lib/python3.11/site-packages/chatchat/data/knowledge_base/samples
文件总数量      :47
入库文件数      :42
知识条目数      :740
用时            :0:02:29.701002
----------------------------------------------------------------------------------------------------
总计用时        :0:02:33.414425

启动项目

执行

chatchat start -a

默认地址为:IP:8501,进入chatchat前端页面。
在这里插入图片描述
可以愉快的使用啦
在这里插入图片描述

;