基于闻达(wenda+chatGLM-6B),构建自己的知识库小助手

这篇具有很好参考价值的文章主要介绍了基于闻达(wenda+chatGLM-6B),构建自己的知识库小助手。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

安装miniconda

拉取仓库

使用内置python

安装依赖

上传模型

克隆及下载 text2vec-large-chinese

修改配置

上传知识库(txt文件)

处理txt数据

启动服务

测试


ChatGLM-6B是清华团队+智谱AI开发的,一个开源的、支持中英双语的对话语言模型,具有 62 亿参数。被很多人视为ChatGPT的平替。但是由于ChatGLM-6B 的规模较小,目前已知其具有相当多的局限性。解决这一问题的方式大体上有两种:

一种是使用更大规模的模型来提升整体能力,提升其自我认知能力。开发者表示基于 1300 亿参数 GLM-130B 的 ChatGLM 已经在内测开发中。

另一种便是使用插件或者外挂的方式,提升模型在某一个领域的能力。

wenda就属于后者,wenda是一个大规模语言模型调用平台。旨在通过使用为小模型外挂知识库查找的方式,实现近似于大模型的生成能力。

既然我们已经了解 wenda 的作用,快让我们进入正文吧!

我的文件目录结构

 # 闻达路径(我的路径为nogit,以下图片中nogit路径理解为wenda即可)
 /home/user/data/wenda
 # miniconda路径
 /home/user/data/miniconda3

安装miniconda

 # 进入路径
 cd /home/user/data/

从 https://pan.baidu.com/s/1w33G8xp66Q6kwLN6pDC_3A?pwd=dim9 提取码: dim9

下载 Miniconda3-latest-Linux-x86_64.sh,将下载好的文件放入 /home/user/data/ 路径下

 # 安装miniconda
 sh Miniconda3-latest-Linux-x86_64.sh

安装完成后查看是否成功

 cd miniconda3/bin
 ./conda -V

显示如下表示安装成功

基于闻达(wenda+chatGLM-6B),构建自己的知识库小助手

拉取仓库

进入  /home/user/data/ 路径下

 cd /home/user/data/
 # 拉取仓库
 git clone https://github.com/l15y/wenda.git

使用内置python

 # 进入wenda目录
 cd /home/user/data/wenda
 # 使用conda命令创建内置python环境
 /home/user/data/miniconda3/bin/conda create -p ./env python=3.8

安装依赖

env/bin/pip install -r requirements/requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
env/bin/pip install torch BeautifulSoup4 torchvision torchaudio pdfminer.six -i https://pypi.tuna.tsinghua.edu.cn/simple
env/bin/pip install -r requirements/requirements-chatglm.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
env/bin/pip install -r requirements/requirements-st.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
env/bin/pip install -r requirements/requirements-rwkv.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
env/bin/pip install -r requirements/requirements-bing.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
env/bin/pip install -r requirements/requirements-glm6b-lora.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
env/bin/pip install -r requirements/requirements-gpt4free.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
env/bin/pip install -r requirements/requirements-fess.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
env/bin/pip install -r requirements/requirements-llama.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
env/bin/pip install -r requirements/requirements-openai.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
env/bin/pip install -r requirements/requirements-qdrant.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

上传模型

我使用的模型是chatGLM-6B,大家也可以使用其他的基础模型

链接:https://pan.baidu.com/s/16L7K-2pa5EfXzcUOJEBJLA?pwd=xt9l 提取码:xt9l

下载完成后上传到 /home/user/data/wenda 路径

解压文件

 cd /home/user/data/wenda
 7z x -y model.7z -o/home/user/data/wenda

注意,解压后的文件路径是否为 /home/user/data/wenda/model/chatglm-6b,如果不是,请修改

如果没有7z命令,需要先安装7z命令,如下:

 sudo apt install p7zip-full p7zip-rar

克隆及下载 text2vec-large-chinese

cd /home/user/data/wenda/model
# 安装 git lfs
git lfs install
# 如果报错 git: 'lfs' is not a git command.
# 执行如下(Ubuntu):
sudo apt-get install git-lfs

# 从huggingface官网拉取模型指针文件
git clone https://huggingface.co/GanymedeNil/text2vec-large-chinese

# 下载模型
wget https://huggingface.co/GanymedeNil/text2vec-large-chinese/resolve/main/pytorch_model.bin
# 覆盖text2vec-large-chinese中的 pytorch_model.bin文件
mv pytorch_model.bin text2vec-large-chinese/

修改配置

将example.config文件改名为config.xml

 cd /home/user/data/wenda/
 mv example.config.xml config.xml

修改config.xml文件

<!--模型类型修改:我用的是glm6b模型,所以此处修改为glm6b,大家看自己所用的模型是什么,修改即可--> 
	    <property>
            <name>LLM_Type</name>
            <value>glm6b</value>
            <description>LLM模型类型:glm6b、rwkv、llama、chatglm</description>
        </property>

<!--以下为模型位置修改,我用的是glm6b模型,所以修改此处GLM6B路径,位置为model/chatglm-6b,大家根据自己用的模型类型,修改config.xml对应位置即可-->
		<GLM6B>
            <property>
                <name>Path</name>
                <value>model/chatglm-6b</value>
                <description>glm模型位置</description>
            </property>
            <property>
                <name>Strategy</name>
                <value>cuda fp16</value>
                <description>glm 模型参数  支持:
                    "cuda fp16"  所有glm模型 要直接跑在gpu上都可以使用这个参数
                    "cuda fp16i8"  fp16原生模型 要自行量化为int8跑在gpu上可以使用这个参数
                    "cuda fp16i4"  fp16原生模型 要自行量化为int4跑在gpu上可以使用这个参数
                    "cpu fp32"  所有glm模型 要直接跑在cpu上都可以使用这个参数
                    "cpu fp16i8" fp16原生模型 要自行量化为int8跑在cpu上可以使用这个参数
                    "cpu fp16i4" fp16原生模型要 自行量化为int4跑在cpu上可以使用这个参数
                </description>
            </property>
            <property>
                <name>Lora</name>
                <value></value>
                <description>glm-lora模型位置</description>
            </property>
        </GLM6B>

上传知识库(txt文件)

创建txt文件夹

 cd /home/user/data/wenda/
 mkdir txt

将自己的txt文件上传到这里

我的txt如下

 中国管理案例共享中心案例库 教学案例
 1
 案例正文:
 飞友科技人力发展何去何从
 摘要:
 飞友科技有限公司(以下简称“飞友科技”)创建于 2005 年,是目前国内
 最大的民航数据服务提供商。
 随着飞友科技 APP 下载量与 Association for Clinical
 Data Management (A-CDM)系统机场覆盖率的大大提升,飞友科技目前正以高速
 发展趋势拓展业务领域,基于公司发展战略的调整,人力资源部门在完善管理体
 系的过程中出现了障碍:
 1.合肥是相对落后的城市,人力资源部门在本地招聘困
 难;2.人力资源部门人员不稳定、流动性大,无法保证高效运作进而支持其他部
 门工作。
 本案例通过介绍飞友科技人力资源部门发展现状,启发案例使用者运用
 战略性人力资源管理等理论知识分析公司人力资源现状背后的原因,为公司人力
 资源部门的发展在未来如何适应公司及外部环境提出建议。
 关键词:
 IT 产业,高端人才招聘,人力资源管理,团队建设
 0 引言
 近年来,随着交通运输业的蓬勃发展, 生活节奏越来越快,飞机成了人们出
 差旅行首选的快捷出行方式,中国航空市场也快速从原来的公务出行市场转化为
 个人出行市场。
 但是,由于各种自然非自然原因,航班延误,飞行取消及中转停
 留等,也为乘客出行造成了不便,毕竟不是所有飞机都能风雨无阻按时起飞停降。
 民航业,作为服务产业,面对竞争日益激烈的市场,如何为客户提供高速便捷的
 出行服务,成为他们成功的关键。
 在大环境互联网+及大用户手机网民+的背景
 下,“飞常准”APP 就这样应运而生了。
 正是这样一款方便快捷的航空服务 APP,
 在你面对查询订票的繁琐流程以及突发情况时,帮助你更合理的安排时间,顺利
 起飞。

处理txt数据

/home/user/data/wenda/env/bin/python3 /home/user/data/wenda/plugins/gen_data_st.py

基于闻达(wenda+chatGLM-6B),构建自己的知识库小助手

启动服务

 /home/user/data/wenda/env/bin/python3 /home/user/data/wenda/wenda.py

基于闻达(wenda+chatGLM-6B),构建自己的知识库小助手

测试

未开启知识库,只使用chatglm-6b模型

基于闻达(wenda+chatGLM-6B),构建自己的知识库小助手

开启知识库,如下:

基于闻达(wenda+chatGLM-6B),构建自己的知识库小助手

以上便是本次搭建的全部过程啦文章来源地址https://www.toymoban.com/news/detail-455402.html

到了这里,关于基于闻达(wenda+chatGLM-6B),构建自己的知识库小助手的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Chinese-LangChain:基于ChatGLM-6b+langchain实现本地化知识库检索与智能答案生成

    Chinese-LangChain:中文langchain项目,基于ChatGLM-6b+langchain实现本地化知识库检索与智能答案生成 https://github.com/yanqiangmiffy/Chinese-LangChain 俗称:小必应,Q.Talk,强聊,QiangTalk 🐯 2023/04/19 引入ChuanhuChatGPT皮肤 📱 2023/04/19 增加web search功能,需要确保网络畅通! 📚 2023/04/18 webui增加知

    2024年02月06日
    浏览(46)
  • LangChain + ChatGLM2-6B 搭建个人专属知识库

    之前教过大家利用 langchain + ChatGLM-6B 实现个人专属知识库,非常简单易上手。最近,智谱 AI 研发团队又推出了 ChatGLM 系列的新模型 ChatGLM2-6B,是开源中英双语对话模型 ChatGLM-6B 的第二代版本,性能更强悍。 树先生之所以现在才更新 ChatGLM2-6B 知识库教程,是想等模型本身再多

    2024年02月16日
    浏览(47)
  • 从零实现Transformer、ChatGLM-6B、LangChain+LLM的本地知识库问答

    最近一直在做类ChatGPT项目的部署 微调,关注比较多的是两个:一个LLaMA,一个ChatGLM,会发现有不少模型是基于这两个模型去做微调的,说到微调,那具体怎么微调呢,因此又详细了解了一下微调代码,发现微调LLM时一般都会用到Hugging face实现的Transformers库的Trainer类 从而发现

    2024年02月08日
    浏览(45)
  • 【ChatGLM_02】LangChain知识库+Lora微调chatglm2-6b模型+提示词Prompt的使用原则

    运行langchain-ChatGLM-master下面的webui.py文件 (1) 配置知识库 新建知识库 向知识库当中添加文件 支持上传的数据格式:word、pdf、excel、csv、txt、文件夹等。但是此处我试了一下 (2) 文档数据测试 word文档测试: (3) 知识库测试模式 知识库测试只会返回输入内容在当前知识库当中的

    2024年02月14日
    浏览(34)
  • 开源大模型ChatGLM2-6B 2. 跟着LangChain参考文档搭建LLM+知识库问答系统

    租用了1台GPU服务器,系统 ubuntu20,Tesla V100-16GB (GPU服务器已经关机结束租赁了) SSH地址:* 端口:17520 SSH账户:root 密码:Jaere7pa 内网: 3389 , 外网:17518 VNC地址:* 端口:17519 VNC用户名:root 密码:Jaere7pa 硬件需求,ChatGLM-6B和ChatGLM2-6B相当。 量化等级    最低 GPU 显存 F

    2024年02月03日
    浏览(44)
  • 从零开始部署ubuntu+Anaconda3+langchain-chatchat+chatglm3-6b大模型,本地知识库(二)

    接上文:从零开始部署ubuntu+Anaconda3+langchain-chatchat+chatglm3-6b大模型,本地知识库 Langchain-chatchat 0.2.10 推荐使用python3.11.7,通过下面命令进行python环境创建。 如下图 安装完毕后,通过以下命令激活python虚拟环境 如下图,shell命令行前面会出现(langchain)这个虚拟环境名。 转到

    2024年03月21日
    浏览(50)
  • chatglm6b和闻达的功能扩展

    最近大火的chatgpt,老板说让我看看能不能用自己的数据,回答专业一些,所以做了一些调研,最近用这个倒是成功推理了自己的数据,模型也开源了,之后有机会也训练一下自己的数据。 1.1双击打开anconda prompt创建虚拟环境 1.2下载pytorch(这里要根据自己的电脑版本下载)都

    2024年02月16日
    浏览(27)
  • 从零开始部署ubuntu+Anaconda3+langchain-chatchat+chatglm3-6b大模型,本地知识库(完结篇)

    相关文章: 从零开始部署ubuntu+Anaconda3+langchain-chatchat+chatglm3-6b大模型,本地知识库(一) https://blog.csdn.net/hya168/article/details/131460230 从零开始部署ubuntu+Anaconda3+langchain-chatchat+chatglm3-6b大模型,本地知识库(二) https://blog.csdn.net/hya168/article/details/135870440 生成默认配置文件 此命令

    2024年02月20日
    浏览(61)
  • chatglm实现基于知识库问答的应用

    目前由于ChatGPT横空出世,互联网如雨后春笋冒出了非常多的类ChatGPT的大型语言模型。但是对于这些语言模型,我们应该如何将它应用到我们实际的生产中需要一个更加成熟的解决方案。 本文旨在通过介绍ChatGLM的使用来讲述如何将一个开源的语言模型应用于智能问答,知识库

    2024年02月06日
    浏览(30)
  • 本地搭建属于自己的ChatGPT:基于PyTorch+ChatGLM-6b+Streamlit+QDrant+DuckDuckGo

    本地部署chatglm及缓解时效性问题的思路: 模型使用chatglm-6b 4bit,推理使用hugging face,前端应用使用streamlit或者gradio。 微调对显存要求较高,还没试验。可以结合LoRA进行微调。 缓解时效性问题:通过本地数据库或者搜索引擎获取特有数据或者实时数据作为生成模型的上下文

    2024年02月02日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包