Langchain+Milvus+Chatglm2实现基于大模型的知识问答

本文介绍了如何下载和配置ChatGLM2大模型,包括安装依赖、调整代码以支持多GPU,以及使用Langchain和Milvus进行向量搜索和大模型问答。步骤包括下载模型、修改API、集成Langchain和导入向量数据到Milvus。
摘要由CSDN通过智能技术生成

一、准备工作

 下载CHATGLM2大模型源码

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

  

 安装依赖

cd ChatGLM2-6B
# 其中 transformers 库版本推荐为 4.30.2torch 推荐使用 2.0 及以上的版本,以获得最佳的推理性能
pip install -r requirements.txt

下载模型

# 这里我将下载的模型文件放到了本地的 chatglm-6b 目录下
git clone https://huggingface.co/THUDM/chatglm2-6b 

调整模型运行代码

# 因为前面改了模型默认下载地址,所以这里需要改下路径参数
# 修改 open_api.py 文件

if __name__ == "__main__":

    tokenizer = AutoTokenizer.from_pretrained("/home/XXX/glm_model/chatglm2-6b", trust_remote_code=True,device='cuda:2')

    model = AutoModel.from_pretrained("/home/XXX/glm_model/chatglm2-6b", trust_remote_code=True,device='cuda:5')

    # 多显卡支持,使用下面两行代替上面一行,将num_gpus改为你实际的显卡数量

    # from utils import load_model_on_gpus

# model = load_model_on_gpus("THUDM/chatglm2-6b", num_gpus=2)

uvicorn.run(app, host='0.0.0.0', port=8008, workers=8)

open api模式启动模型服务

python open_api.py

安装Langchain及Milvus

#pytorch等基础环境的安装这里不作过多说明
Pip install langchain
Pip install milvus

下载embeddings模型到本地

#这里使用text2vec-base-chines HuggingFace 魔搭社区等都能下载 https://modelscope.cn/models/thomas/text2vec-base-chinese/files

将向量数据导入Milvus

这里不作详细说明,开发者需要自行学习Milvus向量数据库的使用。笔者是从ES里加载了部分二级市场的舆情数据到Milvus。

二、编码-测试Mivus向量搜索功能

三、使用Langchain的LLMChain整合Chatglm2大模型功能

四、向大模型提问

Milvus新闻库中如果有的新闻内容大模型一般都能回复正确。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值