6G显存玩转130亿参数大模型,仅需13行命令,RTX2060用户发来贺电

羊驼家族的Alpaca和Vicuna也都能运行,显存最低只需要6G,简直是低VRAM用户的福音有木有。

GitHub上的搭建教程火了之后,网友们纷纷跑来问苹果M2是不是也能跑。

这通操作的大致原理是利用最新版CUDA,可以将Transformer中任意数量的层放在GPU上运行。

与此前llama.cpp项目完全运行在CPU相比,用GPU替代一半的CPU可以将效率提高将近2倍。

而如果纯用GPU,这一数字将变成6倍。

网友实测的结果中,使用CPU每秒能跑2.1个token,而用GPU能跑3.2个。

生成的内容上,开发者成功用它跑出了“尼采文学”。

如何操作

在开始搭建之前,我们需要先申请获得LLaMA的访问权限。

传送门:https://ai.facebook.com/blog/large-language-model-llama-meta-ai/

此外还需要有一个Linux环境。(Windows用户可以用WSL2)

准备工作完成之后,第一步是将llama.cpp克隆到本地。

1git clone https://github.com/ggerganov/llama.cpp.git
2cd llama.cpp
3pacman -S cuda //make sure you have CUDA installed
4make LLAMA_CUBLAS=1

如果没有安装CUDA,可以参考下面的步骤:

1wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin
2sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600
3wget https://developer.download.nvidia.com/compute/cuda/12.1.1/local_installers/cuda-repo-wsl-ubuntu-12-1-local_12.1.1-1_amd64.deb
4sudo dpkg -i cuda-repo-wsl-ubuntu-12-1-local_12.1.1-1_amd64.deb
5sudo cp /var/cuda-repo-wsl-ubuntu-12-1-local/cuda-*-keyring.gpg /usr/share/keyrings/
6sudo apt-get update
7sudo apt-get -y install cuda

然后是建立micromamba环境,安装Python和PyTorch等工具。

接着需要在micromamba环境下安装一些包:

1export MAMBA_ROOT_PREFIX=(自定义安装路径)
2eval "$(micromamba shell hook --shell=bash)"
3micromamba create -n mymamba
4micromamba activate mymamba
5micromamba install -c conda-forge -n mymamba pytorch transformers sentencepiece

然后运行Python脚本以执行转换过程:

1python convert.py ~/ai/Safe-LLaMA-HF-v2\ \(4-04-23\)/llama-13b/

之后将其量化为4bit模式。

1./quantize ~/ai/Safe-LLaMA-HF-v2\ \(4-04-23\)/llama-13b/ggml-model-f16.bin ~/ai/Safe-LLaMA-HF-v2\ \(4-04-23\)/llama-13b/ggml-model-13b-q4_0-2023_14_5.bin q4_0 8

接着是新建一个txt文本文档,把提示词输入进去,然后就可以运行了。

1./main -ngl 18 -m ~/ai/Safe-LLaMA-HF-v2\ \(4-04-23\)/llama-13b/ggml-model-13b-q4_0-2023_14_5.bin -f 文档名称.txt -n 2048q4_0 8

这步当中-ngl后面的数字是可以修改的,它代表了转换层的数量。

当该值为18时,运行中消耗的VRAM为5.5GB,根据显存的大小最高可以调至40。

网友:AMD不配吗

这一教程出现之后,网友们的新玩具又增加了。

“苦OpenAI久矣”的网友更是感觉仿佛找到了光。

这位网友就表示自己太期待在自己的设备上运行LLM了,宁愿花5千美元购置设备也不想给OpenAI交一分钱。

但AMD用户可能就不那么兴奋了,甚至透露出了嫉妒之情。

这套方法要用到CUDA(英伟达专用),所以AMD是不配了吗?

那么,你期待用自己的设备跑大语言模型吗?

参考链接:
[1].https://gist.github.com/rain-1/8cc12b4b334052a21af8029aa9c4fafc
[2].https://twitter.com/_akhaliq/status/1657779996247588865
[3].https://news.ycombinator.com/item?id=35937505

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/254292.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

突破B站番剧港澳台地区限制

突破B站番剧港澳台地区限制 软件名称:Google空间教程开始首先要添加B站APP到软件里面然后在软件里打开11找一下番12实测 转载于:https://www.cnblogs.com/Curey/p/10988321.html

b 站神器更新,还出了新玩意

之前分享过玩转哔哩哔哩:说说关于看b站港澳台番剧的几个问题 ,最近更新到版本1.6.4,修复了HD版兼容,顺便把青少年模式弹窗关了,每次都弹:再说下解除B站番剧区域限制,右下角打开漫游设置&#x…

Chrome浏览器使用“油猴插件”观看巨人(免疫港澳台限制)

话不多说,让我们直接开始吧。 步骤1: 在电脑上安装最新的Chrome浏览器 步骤2: 打开Chrome浏览器,此时在B站搜索巨人因为地区限制无法观看。接下来,点击浏览器右上角自定义及控制按钮,在弹出的窗体中选择“扩展程序”进入扩展程序后…

第51章 设置FLASH的读写保护及解除—零死角玩转STM32-F429系列

第51章 设置FLASH的读写保护及解除 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/firege 本章参考资料:《STM32F4xx 中文参考手册》、《STM32F4xx规格书》、库说明…

电脑(伪)大神装B必备,来学几个windows脚本命令

作为一个经常使用电脑的人来说,掌握一些脚本命令以备在别人面前装B是很有必要的。看完这篇文章,你就学会了基础常用的装B命令,让装B轻松自如。 其实脚本命令没什么新鲜的,属于低级的操作,所谓的电脑大神也是伪大神。想…

通过腾讯云cdn进行壁外调查

引言 之前7月份叔叔更新了播放器,我以前是通过阿里云PHP函数的形势代理番剧的,速度不是很快但是能用,没有CDN这个这么麻烦,但是叔叔更新播放器之后导致PHP函数失效,照着教程改了半天也不行,于是就参考了这…

C4D R26 渲染学习笔记 建模篇(3):生成器

文章目录 前文回顾介绍篇建模篇 生成器介绍生成器变形器搭配举例 生成器详细介绍细分曲面布料曲面 未完待续 前文回顾 介绍篇 C4D R26 渲染学习笔记(1):C4D版本选择和初始UI框介绍 C4D R26 渲染学习笔记(2)&#xff…

第51章 设置FLASH的读写保护及解除

转载地址:https://www.cnblogs.com/firege/ 51.1 选项字节与读写保护 在实际发布的产品中,在STM32芯片的内部FLASH存储了控制程序,如果不作任何保护措施的话,可以使用下载器直接把内部FLASH的内容读取回来,得到bin或…

C/C++中程序内存区域划分大总结

此图来自http://www.blog.163.com/tao198352__4232/blog/static/8502064520105611157897/ 程序由代码和数据组成,其中代码存储在代码区中,数据根据类型的不同存储在不同的区域中。本文分别介绍了C和C中内存区域的划分。 C作为一款C语言的升级版本&#…

如何更优雅地使用 bilibili(b站)

苏生不惑第125 篇原创文章,将本公众号设为星标,第一时间看最新文章。 b站是我每天都要逛的网站,之前也写过了 那些我关注的 b 站 up 主 bilibili(b站)升级到BV号了,还想用av号怎么办? 那些你可能不知道的 bilibili 奇技…

B站视频下载助手使用教程

项目需要,在B站搜到对应数据,检索下载方式保存,供后续使用。工具chrome浏览器离线插件。 1、获取最新版本 bilibili哔哩哔哩B站下载助手-官方网站 2、如何手动安装crx step1、把下载的 crx 文件扩展名改为 zip,如 bilibili-hel…

Rust 笔记:有限状态机原理/状态模式 及其 在Rust 编程中的应用

Rust 笔记、设计模式 有限状态机原理及其在Rust 编程中的应用 作者:李俊才 (jcLee95):https://blog.csdn.net/qq_28550263?spm1001.2101.3001.5343 邮箱 :291148484163.com 本文地址:https://blog.csdn.ne…

Java程序设计入门教程-- switch选择语句

switch选择语句 情形 虽然if…else语句通过嵌套可以处理多分支的情况,但分支不宜太多,在Java语言中,提供了switch语句可以直接、高效地处理多分支选择的情况。 格式 switch (表达式) { case 常量表达式1&#x…

chatgpt赋能python:Python中按钮的位置摆放

Python中按钮的位置摆放 在Python应用程序中,按钮是常见的交互元素之一。按钮通常用于响应用户的操作,例如提交表单或执行某些功能。然而,在设计应用程序时,按钮的位置是一个重要的问题,因为它将直接影响用户体验和应…

MVC 接收不到参数? —— 看我如何给你安排得明明白白

文章结构 问题背景:问题处理总结 问题背景: 现有如下代码: PostMapping(value "/payment/create") ResponseBody public CommonResult create(Payment payment) {}乍眼看去是不是很好,至少没啥问题很自然&#xff0c…

js中的事件委托

1、什么是事件委托? ​ 事件委托, 他还有一个名字叫做事件代理,是JavaScript中常用的绑定事件的常用技巧,顾名思义,事件代理即是把原本需要绑定在子元素的响应事件委托给父元素,让父元素担当事件监听的职务…

有奖励!2023陕西省首台(套)重大技术装备产品项目申报条件、认定材料

本文整理了2023陕西省首台(套)重大技术装备产品项目申报条件,认定材料等相关内容,感兴趣的朋友快跟小编一起来看看吧! 一、重点支持方向及领域 重点支持方向及领域:高档工业母机、电力装备、大型矿山和冶金…

Windows下怎么更改文件扩展名

Win10如何修改文件扩展名 1、首先,我们打开我们的电脑,然后我们双击电脑上的一个文件夹; 2、进入文件夹之后,我们可以看到一个文件,此时的文件后缀名是不显示的,win10系统默认的是不显示后缀名的; 3、我们点击工具…

文件的拓展名(后缀名)怎么快速修改

最近有很多朋友在问,如何快速改名,比如将多个文件的后缀名进行修改,该如何操作呢?不知道的宝贝们,下面请随小编一起来试试吧,希望能给大家带来帮助。 所需工具 文件素材若干 操作步骤 将需要修改的所有文…

【文章学习系列之模型】SCALEFORMER

本章内容 文章概况模型结构主要方法多尺度框架跨尺度标准化模型输入编码损失函数 实验结果消融实验跨尺度标准化自适应损失函数 总结 文章概况 《SCALEFORMER: ITERATIVE MULTI-SCALE REFINING TRANSFORMERS FOR TIME SERIES FORECASTING》是2023年发表于ICLR上的一篇论文。作…