当前位置: 首页 > news >正文

【ChatGLM_01】ChatGLM2-6B本地安装与部署(大语言模型)

基于本地知识库的问答

  • 1、简介
    • (1)ChatGLM2-6B
    • (2)LangChain
    • (3)基于单一文档问答的实现原理
    • (4)大规模语言模型系列技术:以GLM-130B为例
    • (5)新建知识库
    • (6)效果优化方向
  • 2、ChatGLM2-6B本地安装与部署

1、简介

(1)ChatGLM2-6B

ChatGLM2-6B是一个开源的、支持中英双语的对话语言模型,基于General Language Model (GLM)架构。

ChatGLM2-6B具备的能力:

  • 自我认知:“介绍一下你的优点”
  • 提纲写作:“帮我写一个介绍ChatGLM的博客提纲”
  • 文案写作:“写10条热评文案”
  • 信息抽取:‘从上述信息中抽取人、时间、事件’

大语言模型通常基于通识知识进行训练,因此在面向如下场景时,常常需要借助模型微调或提示词工程提升语言模型应用效果:

  • 垂直领域知识
  • 基于私有数据的问答

在这里插入图片描述

(2)LangChain

LangChain是一个用于开发由语言模型驱动的应用程序的框架。
主要功能:

  • 调用语言模型
  • 将不同数据源接入到语言模型的交互中
  • 允许语言模型与运行环境交互

LangChain中提供的模块

  • Modules:支持的模型类型和集成。
  • Prompt:提示词管理、优化和序列化。
  • Memory:内存是指在链/代理调用之间持续存在的状态。
  • Indexes:当语言模型与特定于应用程序的数据相结合时,会变得更加强大-此模块包含用于加载、查询和更新外部数据的接口和集成。
  • Chain:链是结构化的调用序列(对LLM或其他实用程序)。
  • Agents:代理是一个链,其中LLM在给定高级指令和一组工具的情况下,反复决定操作,执行操作并观察结果,直到高级指令完成。
  • Callbacks:回调允许您记录和流式传输任何链的中间步骤,从而轻松观察、调试和评估应用程序的内部。

LangChain的运用场景:

  • 文档问答
  • 个人助理
  • 查询表格数据
  • 与API交互
  • 信息提取
  • 文档总结

(3)基于单一文档问答的实现原理

1、加载本地文档:读取本地文档加载为文本
2、文本拆分:将文本按照字符、长度或语义进行拆分
3、根据提问匹配文本:根据用户提问对文本进行字符匹配或语义检索
4、构建Prompt:将匹配文本、用户提问加入Prompt模板
5、LLM生成回答:将Pronpt发送给LLM获得基于文档内容的回答

(4)大规模语言模型系列技术:以GLM-130B为例

  • 自编码模型BERT:双向注意力,文本理解
  • 自回归模型GPT:单向注意力,长文本生成
  • 编码器-解码器模型T5:编解码,对话任务

在这里插入图片描述
GLM本质是类似一个自回归填空的过程

(5)新建知识库

新建知识库的过程相当于在本地新建一个路径,因此不支持路径当中存在中文。但是知识库的文件可以使用中文名称。

1、上传文件:将文件上传到知识库当中,这个过程相当于将文件加载成文本并进行向量化的过程。

在这里插入图片描述
在这里插入图片描述

(6)效果优化方向

1、模型微调:对llm和embedding基于专业领域数据进行微调。

2、文档加工:在文本分段后,对每段分别进行总结,基于总结内容语义进行匹配。

3、借助不同的模型能力:在text2sql、text2cpyher场景下需要产生代码时,可借助不同模型能力。

2、ChatGLM2-6B本地安装与部署

视频教程:视频教程:----->ChatGLM2-6B本地安装与部署-视频教程

在这里插入图片描述
注意 :chatglm2-6b相比于chatglm-6b在性能上提升了不少。在选择本地部署的时候,我查看到自己显卡只有512M,无法满足部署需要的24G显卡的要求。(注:查看显卡多大可以安装一个lu大师),因此我选择在某宝上租用了一个24G的GPU。

部署步骤如下:

1、根据视频上面的,先下载懒人安装包:懒人包一键部署

在这里插入图片描述

2、将chatglm.zip安装包解压缩之后放在ChatGLM2-6B文件夹下面

在这里插入图片描述

3、创建一个叫VisualGLM-6B的文件夹,在此文件夹里面再创建一个叫cache的文件夹

在这里插入图片描述

4、配置缓存文件

在这里插入图片描述
在这里插入图片描述

5、之后点击一键启动,启动项目

在这里插入图片描述
在这里插入图片描述

最终即可跳转到UI界面:

在这里插入图片描述
注:如果要自己部署请确保pytorch是2.0.1

http://www.lryc.cn/news/104052.html

相关文章:

  • 谷歌Tsunami(海啸)扫描器搭建扩展使用教程
  • 诚迈科技承办大同首届信息技术产业峰会,共话数字经济崭新未来
  • 【Python】Python使用TK实现动态爱心效果
  • Unity3d C#快速打开萤石云监控视频流(ezopen)支持WebGL平台,替代UMP播放视频流的方案(含源码)
  • 【Android】APP启动优化学习笔记
  • docker的使用
  • iOS使用Rust调研
  • 抖音引流推广的几个方法,抖音全自动引流脚本软件详细使用教学
  • k8s概念-DaemonSet
  • Mac 终端快捷键设置:如何给 Mac 中的 Terminal 设置 Ctrl+Alt+T 快捷键快速启动
  • VR 变电站事故追忆反演——正泰电力携手图扑
  • fpga开发——蜂鸣器
  • 【Liux下6818开发板(ARM)】触摸屏
  • 苍穹外卖day11——数据统计图形报表(Apache ECharts)
  • 在制作PC端Game Launcher游戏启动器时涉及到的技术选型
  • SQL力扣练习(九)
  • 软考高级架构师笔记-10数学计算题
  • 设计模式五:建造者模式(Builder Pattern)
  • C++多线程编程(包含c++20内容)
  • 【C语言】通讯录2.0 (动态增长版)
  • 详解AMQP协议以及JAVA体系中的AMQP
  • 跨境电商外贸常态下,深度分析Live Market的优势
  • vue2企业级项目(八)
  • 小研究 - 主动式微服务细粒度弹性缩放算法研究(二)
  • 【雕爷学编程】Arduino动手做(177)---ESP-32 掌控板
  • 使用Gunicorn+Nginx部署Flask项目
  • 【12】STM32·HAL库开发-STM32时钟系统 | F1/F4/F7时钟树 | 配置系统时钟
  • Kotlin基础(十):函数进阶
  • 计算机视觉(四)神经网络与典型的机器学习步骤
  • 使用easyui的tree组件实现给角色快捷分配权限功能