Llama-2 推理和微调的硬件要求总结:RTX 3080 就可以微调最小模型

简介: 大语言模型微调是指对已经预训练的大型语言模型(例如Llama-2,Falcon等)进行额外的训练,以使其适应特定任务或领域的需求。微调通常需要大量的计算资源,但是通过量化和Lora等方法,我们也可以在消费级的GPU上来微调测试,但是消费级GPU也无法承载比较大的模型,经过我的测试,7B的模型可以在3080(8G)上跑起来,这对于我们进行简单的研究是非常有帮助的,但是如果需要更深入的研究,还是需要专业的硬件。

我们先看看硬件配置:

亚马逊的g3.xlarge M60是8GB的VRAM和2048个CUDA内核。3080是10Gb的GDDR6 VRAM,这两个GPU基本类似。

这里做的测试是使用一个小的(65MB文本)自定义数据集上微调lama-2 - 7b (~7GB)。

可以看到3080非常耗电,训练时最大耗电364瓦(PC总耗电超过500瓦)。

看看训练的记录

说明训练是ok的,能够完整的进行训练

为了验证内存消耗,我又在8G 的M60上跑了一遍,也是没问题的,这应该是GPU内存的极限了。

占用的差不多7.1G的内存,再多一些可能就不行了,不过还好,将就够用。

最后我们再整理个列表,大概看看各个模型都需要什么样的内存,以下只是推理,不包括微调,如果使用微调,大概需要再加20%(LORA)。

LLaMA-7B

建议使用至少6GB VRAM的GPU。适合此模型的GPU示例是RTX 3060,它提供8GB VRAM版本。

LLaMA-13B

建议使用至少10GB VRAM的GPU。满足此要求的gpu包括AMD 6900 XT、RTX 2060 12GB、3060 12GB、3080和A2000。这些gpu提供了必要的VRAM容量来有效地处理LLaMA-13B的计算需求。

LLaMA-30B

建议使用VRAM不低于20GB的GPU。RTX 3080 20GB、A4500、A5000、3090、4090、6000或Tesla V100都是提供所需VRAM容量的gpu示例。这些gpu为LLaMA-30B提供了高效的处理和内存管理。

LLaMA-65B

LLaMA-65B在与至少具有40GB VRAM的GPU。适合此型号的gpu示例包括A100 40GB, 2x3090, 2x4090, A40, RTX A6000或8000。

对于速度来说:

我是用RTX 4090和Intel i9-12900K CPU的推理速度示例

对于CPU来说,LLaMA也是可以用的,但是速度会很慢,而且最好不要进行训练,只能进行推理,下面是,13B模型在不同CPU上推理速度列表

各个系统的配置和性能可能会有所不同。最好对不同的设置进行实验和基准测试,以找到最适合您特定需求的解决方案,上面的测试仅供参考。

https://avoid.overfit.cn/post/0dd29b9a89514a988ae54694dccc9fa6

相关实践学习
在云上部署ChatGLM2-6B大模型(GPU版)
ChatGLM2-6B是由智谱AI及清华KEG实验室于2023年6月发布的中英双语对话开源大模型。通过本实验,可以学习如何配置AIGC开发环境,如何部署ChatGLM2-6B大模型。
目录
相关文章
|
前端开发 定位技术
|
人工智能 C++ iOS开发
ollama + qwen2.5-coder + VS Code + Continue 实现本地AI 辅助写代码
本文介绍在Apple M4 MacOS环境下搭建Ollama和qwen2.5-coder模型的过程。首先通过官网或Brew安装Ollama,然后下载qwen2.5-coder模型,可通过终端命令`ollama run qwen2.5-coder`启动模型进行测试。最后,在VS Code中安装Continue插件,并配置qwen2.5-coder模型用于代码开发辅助。
26406 71
|
运维 安全 数据挖掘
Websoft9 开源多应用平台:培养学生数字化能力的实战工具
Websoft9 开源多应用平台以标准化部署、多工具集成与轻量化运维为核心,助力教育场景数字化转型。平台集成 200+ 开源应用,覆盖开发、数据分析与协作系统,支持模板化部署,优化教学准备周期。通过容器化管理实现低成本高密度实验环境,具备安全合规的自动化运维能力。实际案例包括物联网项目开发、数据科学实验及信息安全攻防演练,培养跨学科能力。平台强调企业级工具链接触与开源协作文化,提供实施建议与风险规避方案,为教育数字化转型提供高效解决方案。
290 3
Websoft9 开源多应用平台:培养学生数字化能力的实战工具
|
数据处理 开发者
【Uniapp 专栏】提升 Uniapp 开发效率的进阶方法
【5月更文挑战第17天】提升Uniapp开发效率的关键包括组件化、模板语法、数据处理和代码组织。通过封装组件如通用按钮,利用列表渲染生成多个元素,使用计算属性和方法处理复杂逻辑,以及采用预处理器如Sass编写样式。此外,良好的代码结构和使用开发者工具进行调试也是重要环节。掌握这些进阶技巧能帮助开发者更高效地构建高质量应用。
415 2
【Uniapp 专栏】提升 Uniapp 开发效率的进阶方法
|
缓存 搜索推荐 API
Alfred使用
Alfred使用
|
数据采集 存储 JSON
推荐3款自动爬虫神器,再也不用手撸代码了
推荐3款自动爬虫神器,再也不用手撸代码了
1582 4
关于QtCreator使用fcitx无法输入中文的解决方法(从根本解决问题)
关于QtCreator使用fcitx无法输入中文的解决方法(从根本解决问题)
|
缓存 资源调度 负载均衡
LTE-NR 双连接|带你读《5G无线网络规划与设计》之十二
LTE双连接扩展了载波聚合的应用,能够有效提升网络容量,并具有提高切换成功率、负载均衡等能力。3GPP 基于 LTE 双连接提出了 LTE-NR 双连接技术,定义了 4G、5G 紧密互操作的技术规范,开创性地将 RAT 间的互操作过程下沉至网络边缘。对于 5G 来说,基于 LTE-NR 双连接技术的非独立组网模式可使 5G核心网和接入网分步部署,有利于 5G 的快速部署和应用。
LTE-NR 双连接|带你读《5G无线网络规划与设计》之十二
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp微信小程序的电影院订票选座系统的详细设计和实现
基于SpringBoot+Vue+uniapp微信小程序的电影院订票选座系统的详细设计和实现
292 1
|
Web App开发 安全 算法
真实世界的密码学(二)(4)
真实世界的密码学(二)
395 2