首页 > 其他分享 >在ubantu系统中部署ChatGLM-6B

在ubantu系统中部署ChatGLM-6B

时间:2024-07-12 17:20:51浏览次数:18  
标签:6B ubantu ChatGLM 6b int4 THUDM chatglm

ChatGLM-6B 介绍

ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。
ChatGLM-6B 使用了和 ChatGPT 相似的技术,针对中文问答和对话进行了优化。经过约 1T 标识符的中英双语训练,辅以监督微调、反馈自助、人类反馈强化学习等技术的加持,62 亿参数的 ChatGLM-6B 已经能生成相当符合人类偏好的回答,更多信息请参考我们的博客
为了方便下游开发者针对自己的应用场景定制模型,我们同时实现了基于 P-Tuning v2 的高效参数微调方法 (使用指南) ,INT4 量化级别下最低只需 7GB 显存即可启动微调。
不过,由于 ChatGLM-6B 的规模较小,目前已知其具有相当多的局限性,如事实性/数学逻辑错误,可能生成有害/有偏见内容,较弱的上下文能力,自我认知混乱,以及对英文指示生成与中文指示完全矛盾的内容。请大家在使用前了解这些问题,以免产生误解。更大的基于 1300 亿参数 GLM-130B 的 ChatGLM 正在内测开发中。

环境配置

ubantu 24.02
conda
gtx1060 6G

操作步骤

1、下载chatglm-6b模型

huggingface-cli download --resume-download THUDM/chatglm-6b-int4 --local-dir THUDM/chatglm-6b-int4

如果访问huggingface存在网络限制,可更换访问源:https://hf-mirror.com/

pip install -U huggingface_hub

export HF_ENDPOINT=https://hf-mirror.com

huggingface-cli download --resume-download THUDM/chatglm-6b-int4 --local-dir THUDM/chatglm-6b-int4

我选择都是chatglm-6b-int4,对显存要求较小。

2、下载ChatGLM-6B代码

git clone https://github.com/THUDM/ChatGLM-6B.git
环境准备完毕

模型位置:/home/dog/glm/THUDM/chatglm-6b-int4
代码位置:/home/dog/glm/ChatGLM-6B

3、安装依赖

cd /home/dog/glm/THUDM/chatglm-6b-int4

conda create --name chatglm python=3.10
conda activate chatglm

pip install -r requirements.txt -i https://mirror.sjtu.edu.cn/pypi/web/simple

使用conda进行环境隔离,防止pip相关包冲突。

4、修改代码

修改cli_demo.py文件中的模型位置:

model_path = "/home/dog/glm/THUDM/chatglm-6b-int4"
tokenizer = AutoTokenizer.from_pretrained(model_path, trust_remote_code=True)
model = AutoModel.from_pretrained(model_path, trust_remote_code=True).half().cuda()
model = model.eval()

5、运行cli_demo.py

python cli_demo.py

运行过程中如果出现cuda等运行时问题,请检测cuda驱动是否按照正确。

如果用的是conda管理环境:
首先用conda list | grep cuda确定该环境cuda运行时版本,如12.1
conda install nvidia/label/cuda-12.1.1::cuda-toolkit

标签:6B,ubantu,ChatGLM,6b,int4,THUDM,chatglm
From: https://www.cnblogs.com/shanren/p/18298911

相关文章

  • 在Ubantu22.04中运行ORB_SLAM3
    在Ubantu22.04中运行ORB_SLAM3一、概述ORB-SLAM3是一个支持视觉、视觉加惯导、混合地图的SLAM系统,可以在单目,双目和RGB-D相机上利用针孔或者鱼眼模型运行。从第一版的单目相机系统,到第二版加入了对stereo以及RGBDcamera的支持,再到目前最新版本的orb-slam整合了visual,以及visual......
  • 在Ubantu22.04中运行ORB_SLAM3并进行源码解析
    在Ubantu22.04中运行ORB_SLAM3并进行源码解析1.ORB_slam3简介ORB-SLAM3是一款前沿的即时定位与建图(SLAM)系统,专为大规模环境下的实时定位与三维重建设计。系统兼容多种视觉传感器配置,包括单目、立体双目以及RGB-D相机。ORB-SLAM3采用OrientedFAST和RotatedBRIEF(ORB)算法进......
  • [本科项目实训] ChatGLM3 与 ChatGLM4 简述
    ChatGLM3-6B简述ChatGLM3-6B是ChatGLM系列最新一代的开源模型,在保留了前两代模型对话流畅、部署门槛低等众多优秀特性的基础上,ChatGLM3-6B引入了如下特性:更强大的基础模型:ChatGLM3-6B的基础模型ChatGLM3-6B-Base采用了更多样的训练数据、更充分的训练步数和更合理的......
  • [题解]CF1746B Rebellion
    思路首先我们需要看到题目一个特殊的地方:这个序列中只存在\(0\)和\(1\)。那么,我们不难发现最终的答案一定是形如下面的序列:\(0,\dots,0,1,\dots,1\)。知道了这些,就很好想了。我们从后往前枚举,如果当前一位为\(0\)了,就从\(last\simi\)扫一遍,如果有\(1\)将最靠前的\(......
  • 构建本地智能知识问答系统:基于Langchain和ChatGLM的简单实践
    在数字化时代,智能知识问答系统成为了提升企业效率和数据安全性的关键工具。本文将介绍如何基于Langchain和ChatGLM构建一个本地化、支持中文的智能知识问答系统。该系统不仅能够实现完全本地化推理,而且对开源模型友好,可满足企业对数据隐私和私域化部署的需求。项目概览本项目利......
  • [题解]AT_arc116_b [ARC116B] Products of Min-Max
    思路我们容易可以得到一个朴素的做法,首先对\(a\)数组排序,然后枚举最大值和最小值\(a_i,a_j\),那么对于中间的元素都有选与不选两种情况,得到答案:\[\sum_{i=1}^{n}(a_i\timesa_i+(\sum_{j=i+1}^{n}a_i\timesa_j\times2^{j-i-1}))\]然后对这个式子......
  • [题解]CF666B World Tour
    CSP-2022S2T1弱化版。思路首先因为边权均为\(1\),所以我们可以在\(\Theta(n^2)\)的复杂度用BFS求解出任意两点\(i,j\)的最短距离\(d_{i,j}\)(如果\(i\)不能到达\(j\),则令\(d_{i,j}=-1\))。有一个贪心的结论,就是使每一条\(A\toB,B\toC,C\toD\)的路径长度......
  • TP4086B电源管理芯片
    896s外部充电芯片tp4086b充电过程当输入电压大于电源低电压检测阈值和芯片使能输入端接高电平时,TP4086B/C开始对电池充电,CHRG管脚输出低电平,表示充电正在进行。如果电池电压低于2.9V,TP4086B/C采用涓流对电池进行预充电此时充电电流是恒流充电电流的10%。当电池电压超过2.9V......
  • 开源复刻apple 数学笔记;纯C++实现了ChatGLM系列模型;腾讯混元文生图模型发布新版本并开
    ✨1:AIMathNotesAIMathNotes是一个交互式绘图应用,可绘制并计算数学方程。AIMathNotes受到Apple在WWDC2024上的“MathNotes”演启发,开发的一个互动式绘图应用程序,用户可以在画布上绘制数学方程。一旦方程被绘制完成,应用程序将使用多模态LLM(LargeLanguageM......
  • SX2106B 2A同步降压型DC/DC转换器芯片IC
    一般描述    SX2106B是一款同步降压DC/DC转换器,提供宽广的4.5V至24V输入电压范围和2A连续负载电流能力。    SX2106B故障保护包括逐周期电流限制、UVLO、输出过电压保护和热关机。可调软启动功能,防止启动时的浪涌电流。该器件采用电流模式控制方案,提供快速的......