首页 星云 工具 资源 星选 资讯 热门工具
:

PDF转图片 完全免费 小红书视频下载 无水印 抖音视频下载 无水印 数字星空

LLM-01 大模型 本地部署运行 ChatGLM2-6B-INT4(6GB) 简单上手 环境配置 单机单卡多卡 2070Super8GBx2 打怪升级!

编程知识
2024年07月21日 17:34

搬迁说明

之前在 CSDN 上发文章,一直想着努力发一些好的文章出来!这篇文章在 2024-04-17 10:11:55 已在 CSDN 发布

写在前面

其他显卡环境也可以!但是最少要有8GB的显存,不然很容易爆。
如果有多显卡的话,单机多卡也是很好的方案!!!

背景介绍

目前借到一台算法组的服务器,我们可以查看一下目前显卡的情况

nvidia-smi

PS: (后续已经对CUDA等进行了升级,可看我的其他文章,有升级的详细过程)

项目地址

官方的地址:

# 需要克隆项目
https://github.com/THUDM/ChatGLM2-6B
# 模型下载(如果你没有科学,麻烦一点需要手动下载)
https://cloud.tsinghua.edu.cn/d/674208019e314311ab5c/?p=%2Fchatglm2-6b-int4&mode=list
# 模型下载(如果可以科学,官方下载的体验是比较舒适的)
https://huggingface.co/THUDM/chatglm2-6b-int4

我们需要对项目进行克隆,同时需要下载对应的模型,如果你有科学,可以忽略模型的下载,因为你启动项目的时候它会自己下载。

配置要求

根据官方的介绍,可以看到对应的显卡要求,根据我的情况(2070Super 8GB * 2),我这里选择下载了INT4的模型。

安装Pyenv

由于很多不同的项目队python版本的要求不同,同时对版本的要求也不同,所以你需要配置一个独立的环境。
这里你可以选择 Conda,也可以选择pyenv,或者docker。我选的方案是:pyenv

# pyenv 官方地址
https://github.com/pyenv/pyenv

安装完成之后,记得配置一下环境变量:

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc

如果你和我一样使用的是 ZSH 的话:

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(pyenv init -)"' >> ~/.zshrc

测试Pyenv

# 查看当前系统中的Python情况
pyenv versions

使用Pyenv

# Python版本
pyenv local 3.10
# 独立环境
python -m venv env
# 切换环境
source env/bin/active
# cd 到项目目录
# 安装Python库 pip install - requirements.txt

你将看到类似的内容,我这里在 MacBook 上测试的:

安装依赖

# Python版本
pyenv local 3.10
# 独立环境
python -m venv env
# 切换环境
source env/bin/active
# cd 到项目目录
# 安装Python库 pip install - requirements.txt

注意: 这是两个部分:(这是我服务器的配置,你也要搞清楚你的内容放置在哪里) 如下图:

  • 项目文件夹 /home/jp/wzk/chatglm2-6b-int4/ChatGLM2-6B
  • 模型文件夹 /home/jp/wzk/chatglm2-6b-int4/chatglm2-6b-int4

项目文件夹:

模型文件夹

启动项目

在项目的目录下,我们利用现成的直接启动:web_demo.py

# 先打开看一眼
vim web_demo.py

model_path 是你下载的模型文件夹(如果你不是手动下载的话,可以不改,这样的话会自动下载)

PS: 此时需要到最后一行,修改对外暴露服务

# 代码修改为这样
demo.queue().launch(server_name="0.0.0.0", server_port=7861, share=False, inbrowser=True)

退出保存,我们启动服务:

python web_demo.py

使用项目

完成上述的操作,稍等后看到:

根据你的服务器IP和端口,访问即可:

多卡启动

由于单卡很容易爆 OOM,正好这里是 2 * 2070Super 8GB,我们简单的修改一下代码,就可以将模型分到两张显卡中。
官方给的方案是,通过accelerate库来启动。

修改刚才的 web_demo.py,详细位置请看图:

# GPU 数量修改为2 
model = load_model_on_gpus(model_path, num_gpus=2)

重新启动即可,就已经是多卡启动了!!!

From:https://www.cnblogs.com/wzkicu/p/18314188
本文地址: http://www.shuzixingkong.net/article/255
0评论
提交 加载更多评论
其他文章 NSSCTF———Web(sql注入)
[LitCTF 2023]这是什么?SQL !注一下 ! [SWPUCTF 2022 新生赛]ez_sql [GXYCTF 2019]BabySqli 点击右下角文章可跳转 [LitCTF 2023]这是什么?SQL !注一下 ! 首先我们打开靶场查看信息,提示了闭合方式为id = (((((())
NSSCTF———Web(sql注入) NSSCTF———Web(sql注入) NSSCTF———Web(sql注入)
一文全懂:独立冗余磁盘阵列(RAID)
本文介绍了独立冗余磁盘阵列RAID的四种常见模式:RAID0、RAID1、RAID5、RAID10,并且使用mdadm命令在liux系统上如何创建磁盘阵列的详细步骤。
一文全懂:独立冗余磁盘阵列(RAID) 一文全懂:独立冗余磁盘阵列(RAID) 一文全懂:独立冗余磁盘阵列(RAID)
方法引用
方法引用有什么用? 写更少代码 提高代码复用性和可维护性(尤其是团队项目中) 引用静态方法如果你要引用的是一个静态方法,你可以使用类名::静态方法的形式。例如, 将集合中String类型数据转换成int类型这是匿名内部类的写法:查看parsInt源码可以发现该方法满足静态方法引用的条件.因此可以直接
方法引用 方法引用 方法引用
ComfyUI进阶:Comfyroll插件 (六)
ComfyUI进阶:Comfyroll插件 (六)前言:学习ComfyUI是一场持久战,而Comfyroll 是一款功能强大的自定义节点集合,专为 ComfyUI 用户打造,旨在提供更加丰富和专业的图像生成与编辑工具。借助这些节点,用户可以在静态图像的精细调整和动态动画的复杂构建方面进行深入探索。C
ComfyUI进阶:Comfyroll插件 (六) ComfyUI进阶:Comfyroll插件 (六) ComfyUI进阶:Comfyroll插件 (六)
Linux安全启动及Machine Owner Key(UEFI BIOS MBR GPT GRUB)
PS:要转载请注明出处,本人版权所有。 PS: 这个只是基于《我自己》的理解, 如果和你的原则及想法相冲突,请谅解,勿喷。 环境说明 无 前言 只要装过各种系统的人都或多或少会接触到UEFI或者BIOS这样的概念。本文也不会对这些概念进行详解,本文主要把这些概念串起来,并引入MOK(Machine
Linux安全启动及Machine Owner Key(UEFI BIOS MBR GPT GRUB)
salesforce零基础学习(一百四十)Record Type在实施过程中的考虑
本篇参考: salesforce 零基础学习(二十九)Record Types简单介绍 https://help.salesforce.com/s/articleView?id=sf.customize_recordtype_considerations.htm&type=5 https:/
Ubuntu16.04升级openssh-9.8p1
7月1日OpenSSH官方发布安全更新,忙着处理的同时记录一下升级过程。 系统环境 root@NServer:~# cat /proc/version Linux version 3.4.113-sun8i (root@test) (gcc version 5.5.0 (Linaro GCC 5.5
Ubuntu16.04升级openssh-9.8p1 Ubuntu16.04升级openssh-9.8p1 Ubuntu16.04升级openssh-9.8p1
自学考试(北邮)计算机专业毕业总结
本文目的 2024年是北京自学考试专业过渡期,恰好赶在过渡期前完成了专业的全部课程,于是2024上半年开始毕业论文与设计并完成了答辩,赶在收到毕业证这天总结一下,给后续北邮自考生一点参考,给自己这5年的努力作个总结。 毕业要求所学专业的所有笔试、实践科目、论文成绩均合格,其中笔试、实践是比较常规的考
自学考试(北邮)计算机专业毕业总结 自学考试(北邮)计算机专业毕业总结 自学考试(北邮)计算机专业毕业总结