LangChain-Chatchat 实践

目录

1. 说明

相关路径:

安装环境:

2. 安装

2.1 工具准备

2.2 资料准备

2.3 执行

3. 测试

3.1 LLM对话

3.2 知识库

3.3 API 接口

参考


1. 说明

比较了几个AI LLM的集成应用工具(比如Quivr, Dify, one-api), 还是LangChain-Chatchat更符合我的需要:

  • 支持私有化部署不同的LLM
  • 知识库支持
  • Api支持
  • 开源免费, 容易二开
相关路径:
条项路径
LangChain-Chatchat 项目/data0/Projects/Langchain-Chatchat
LLM 语言模型保存路径/data0/Projects/LLMs
安装环境:

软件: ubuntu22.04 / python 3.10 /  pip22 

硬件: 虚拟机 i9cpu, 分配16核, 52G内存, 500G硬盘

2. 安装

说明:  没选择docker方案是因为想更了解实现原理及二开需要

2.1 工具准备

pip 为避免安装时出现 "python setup.py egg_info did not run successfully." 问题

pip install setuptools-scm
pip install seqeval

 git

git lfs install
2.2 资料准备

LangChain-Chatchat: : 用科学方法下载到路径 /data0/Projects/Langchain-Chatchat

LLM语言模型: 用科学方法下载到路径 /data0/Projects/LLMs

名称备注
LangChain-Chatchathttps://github.com/chatchat-space/Langchain-Chatchat.git使用
bge-large-zhhttps://huggingface.co/BAAI/bge-large-zh备用
bge-large-zh-v1.5https://huggingface.co/BAAI/bge-large-zh-v1.5使用, Embedding 模型
chatglm3-6bhttps://huggingface.co/THUDM/chatglm3-6b使用, LLM
2.3 执行

安装依赖库

# 进入目录
$ cd /data0/Projects/Langchain-Chatchat

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

生成配置文件

python copy_config_example.py

修改配置文件, 仅列出修改之处 (因CPU比GPU便宜,选用CPU方式 : 0):

configs/model_config.py

...
MODEL_ROOT_PATH = "/data0/Projects/LLMs"

# 选用的 Embedding 名称
EMBEDDING_MODEL = "bge-large-zh-v1.5"


# Embedding 模型运行设备。设为 "auto" 会自动检测(会有警告),也可手动设定为 "cuda","mps","cpu","xpu" 其中之一。
# EMBEDDING_DEVICE = "auto"
EMBEDDING_DEVICE = "cpu"

...
# 要运行的 LLM 名称,可以包括本地模型和在线模型。列表中本地模型将在启动项目时全部加载。
# 列表中第一个模型将作为 API 和 WEBUI 的默认模型。
# 在这里,我们使用目前主流的两个离线模型,其中,chatglm3-6b 为默认加载模型。
# 如果你的显存不足,可使用 Qwen-1_8B-Chat, 该模型 FP16 仅需 3.8G显存。

LLM_MODELS = ["chatglm3-6b", "zhipu-api", "openai-api"]
...

MODEL_PATH = {
    "embed_model": {
        "bge-large-zh": "/data0/Projects/LLMs/bge-large-zh",
        "bge-large-zh-v1.5": "/data0/Projects/LLMs/bge-large-zh-v1.5",
    },

    "llm_model": {
        "chatglm3-6b": "/data0/Projects/LLMs/chatglm3-6b",
    },
}

初始化知识库, 如果模型路径不对,会初始化失败,也导不进知识库文件

python init_database.py --recreate-vs

启动

$ python startup.py -a

3. 测试

3.1 LLM对话

几乎拉满性能

3.2 知识库

 

3.3 API 接口

http://ai001.dev.ia:7861/docs

参考

https://github.com/chatchat-space/Langchain-Chatchat.git

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

bennybi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值