介绍
Langchain-Chatchat这个框架可以帮助我们更容易的部署大语言模型,之前也写过ChatGLM
传统的部署教程,有兴趣的可以参考
- 【ChatGLM3】第三代大语言模型多GPU部署指南
- 【ChatGLM2-6B】从0到1部署GPU版本
借助Langchain-Chatchat
框架,可以用更少的配置,帮我们做了大量的细节,并且还支持知识库和Agent等功能,下面将介绍如何使用docker方式和源码方式部署。
使用docker方式部署
docker run -d --name chatchat --gpus all -p 18501:8501 registry.cn-beijing.aliyuncs.com/chatchat/chatchat:0.2.7
使用源码方式部署
# 拉取仓库
git clone https://github.com/chatchat-space/Langchain-Chatchat.git
# 进入目录
cd Langchain-Chatchat
# 创建虚拟环境
conda create -n chatchat python==3.11
source activate chatchat
# 安装全部依赖
pip install -r requirements.txt
pip install -r requirements_api.txt
pip install -r requirements_webui.txt
# 默认依赖包括基本运行环境(FAISS向量库)。如果要使用 milvus/pg_vector 等向量库,请将 requirements.txt 中相应依赖取消注释再安装。
初始化知识库和配置文件
按照下列方式初始化自己的知识库和简单的复制配置文件
python copy_config_example.py
python init_database.py --recreate-vs
根据需要修改配置
以下列出需要修改的配置文件中的配置参数,根据参数名在配置文件在搜索
- 修改模型相关配置参数
configs/model_config.py.example
LLM_MODELS
MAX_TOKENS
- 模型路径(根据自己使用的模型找到对应的路径进行修改):
MODEL_PATH.embed_model.bge-large-zh-v1.5
MODEL_PATH.llm_model.chatglm3-6b-32k
VLLM_MODEL_DICT.chatglm3-6b-32k
- 修改服务启动相关配置参数
configs/server_config.py.example
- 服务启动端口:
web
服务端口:WEBUI_SERVER.port
API
服务端口:API_SERVER.port
FSCHAT_MODEL_WORKERS.default.gpus
FSCHAT_MODEL_WORKERS.default.num_gpus
- 服务启动端口:
一键启动
按照以下命令启动项目
python startup.py -a
编写启动脚本
新建start.sh
,内容如下
source activate chatchat
>nohup.out
nohup python startup.py -a &
运行效果截图
参考资料
- 源码