在langchain上增加ChatGLM2-6B模型

这个部分是我已经安装了langchain-ChatGLM-6B,运行正常,我发现langchain自带了支持ChatGLM2-6B的一个配置,因此我这个实验的思路就是安装ChatGLM2这个模型、程序等,然后看看是否可以在这个原来安装的langchain进行实际操作;

退出原来的虚拟环境,

一、下载GLM2的原始代码

git clone https://github.com/THUDM/ChatGLM2-6B

git clone https://github.com/THUDM/ChatGLM2-6B

cd ChatGLM2-6B

由于我用langchain,我再考虑是否要做一下步骤:
# 其中 transformers 库版本推荐为 4.30.2,torch 推荐使用 2.0 及以上的版本,以获得最佳的推理性能
pip install -r requirements.txt

二、下载GLM2的模型(增加了text2vec)

采用git-lfs方式,用git方式肯定会报错,再运行下面文件可以运行启动git-lfs,我是早安装了。

#apt install git-lfs

git-lfs clone https://huggingface.co/THUDM/chatglm-6b

 # 下载 Embedding 模型 (这个就是chatGLM2的区别,估计针对汉字进行优化)
#git clone https://huggingface.co/GanymedeNil/text2vec-large-chinese 
git-lfs clone https://huggingface.co/GanymedeNil/text2vec-large-chinese 
$PWD/text2vec

三、按照正常应该是登录conda,然后进行自动requirement适配,但是因为我装了langchain,我记得langchain的界面和config里面有各个模型的,因此我打算直接启动Langchain后,用langchain里面的config进行配置。

以下配置修改的工作,我都在Langchain-GLM这个目录下进行,并未修改从网上git下来的其他GLM或GLM2的配置或者requirement进行fix.

模型下载完成后,在 configs/model_config.py 文件中,对embedding_model_dictllm_model_dict参数进行修改。我对原来的langchain-GLM的内容进行了调整。

embedding_model_dict = {
"ernie-tiny": "nghuyong/ernie-3.0-nano-zh",
"ernie-base": "nghuyong/ernie-3.0-base-zh",
"text2vec-base": "shibing624/text2vec-base-chinese",
#"text2vec": "/mnt/workspace/text2vec",这个地方需要根据自己目录
"text2vec": "/mnt/workspace/text2vec",
"m3e-small": "moka-ai/m3e-small",
"m3e-base": "moka-ai/m3e-base",
}

llm_model_dict = {
...
"chatglm2-6b": {
"name": "chatglm2-6b",
#"pretrained_model_name": "/mnt/workspace/chatglm2-6b",
#原始部分模型存放应该是直接安装的,但是我这里有个上级目录
"pretrained_model_name": "/mnt/workspace/ChatGLM2-6B/chatglm2-6b",
"local_model_path": None,
"provides": "ChatGLM"
},
...
}

# LLM 名称改成 chatglm2-6b
LLM_MODEL = "chatglm2-6b"

三、启动langchain

是否需要升级下 protobuf 即可。

pip install --upgrade protobuf==3.19.6

下面是在以langchain-GLM进行操作下;

在启动前应该用langchain-GLM这个虚拟环境登录,需要在安装langchain-GLM那个目录下进行启动,否则找不到。记得启动miniconda的.sh。

conda activate langchain-chatglm

python webui.py

增加环境变量

export PATH  =/usr/local/cuda-11.7/bin:$PATH

export LD_LIBRARY_PATH = $LD_LIBRARY_PATH:/usr/local/cuda-11.7/lib64

export PATH = /usr/local

D:\anaconda\anaconda3 // 安装路径
D:\anaconda\anaconda3\Scripts
D:\anaconda\anaconda3\Library\bin
export PATH=/usr/local/cuda-11.7/bin:$PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.7/lib64

LangChain + ChatGLM2-6B 构建知识库

LangChain + ChatGLM2-6B 搭建个人专属知识库-腾讯云开发者社区-腾讯云 (tencent.com)

LangChain + ChatGLM2-6B 搭建个人专属知识库-腾讯云开发者社区-腾讯云 (tencent.com)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值