企业微信
悟空CRM  >   公司新闻  >  如何估计大模型所需要的显存大小?HuggingFace发布Model Memory Calculator

如何估计大模型所需要的显存大小?HuggingFace发布Model Memory Calculator

悟空软件 阅读次数:2354 次浏览

大模型对显卡资源的消耗是很大的。但是,具体每个模型消耗多少显存,需要多少资源大模型才能比较好的运行是很多人关心的问题。

此前,DataLearner曾经从理论上给出了大模型显存需求的估算逻辑,详细说明了大模型在预训练阶段、微调阶段和推理阶段所需的显存资源估计(参考:需要多少GPU显存才能运行预训练大语言模型?大语言模型参数规模与显存大小的关系估算方法~:http://https//www.datalearner.com/blog/1051692326904222)。

而HuggingFace的官方库Accelerate直接推出了一个在线大模型显存消耗资源估算工具Model Memory Calculator,直接可以估算在HuggingFace上托管的模型的显存需求。

大模型显存计算工具Model Memory Calculator简介

使用Model Memory Calculator估算大模型显存的实测

大模型显存估计工具Model Memory Calculator的本地部署

大模型显存估计工具Model Memory Calculator的在线演示地址和其它注意

大模型显存计算工具Model Memory Calculator简介

Model Memory Calculator是HuggingFace的Accelerate推出的一个网页工具,你可以直接输入HuggingFace上某个模型地址,它就会估计这个模型运行所需要的显存大小,包括推理和使用Adam进行训练的显存估计。

这个工具估算大模型最小推荐显存资源的方式是用最大层的大小(the minimum recommended vRAM)来表示的。而训练这个模型所需的训练的显存大小,则是这个推理大小的4倍左右。

在许多深度学习模型中,尤其是Transformer类模型,层与层之间的操作往往需要在vRAM中存储中间计算结果,这些结果可能包括激活值、权重等。最大的一层可能需要最大的vRAM空间来存储这些中间结果,以进行前向和反向传播。

考虑到模型的反向传播需要存储前向传播中的激活值以计算梯度,这意味着在训练过程中需要为模型的每一层都存储其激活值。最大的层的激活值可能会占用最多的vRAM。因此,这样估计相对比较保险。

但是根据这样的计算应该也不是简单的直接拿最大层参数来计算。根据官方的说法,最准确的时候,这个工具估算出来的显存大小与实际估计的误差可能也就50MB左右(例如,bert-base-cased模型实际运行需要413.68MB,而这个工具估算的结果是413.18MB)。

使用Model Memory Calculator估算大模型显存的实测

这个工具的使用非常简单,如下图所示,你只需要找到对应的模型所在的HuggingFace地址,直接输入到下面就可以计算了。还可以根据float32、float16、int8、int4量化结果估算。

下面我们使用这个工具估算一下清华大学ChatGLM-6B模型的结果(第一代的ChatGLM-6B模型信息卡地址:https://www.datalearner.com/ai-models/pretrained-models/ChatGLM-6B )。

可以看到,该工具估算的ChatGLM-6B模型在不同精度下的训练和推理的显存需求结果如下:

上图的第三列上图的第三列表示推理显存乘以1.2的结果。原因在于EleutherAI在曾经的技术分析中提到推理所需的实际显存可能要比计算结果高20%左右。下面我们看一下官方给的结果:

如何估计大模型所需要的显存大小?HuggingFace发布Model Memory Calculator

可以看到,该工具估算的显存大小与实际官方推荐的差别还是比较大的。但是,我们再估算一下MetaAI发布的LLaMA2-7B的结果,LaMA2-7B模型在不同精度下的训练和推理的显存需求结果如下:

而根据网络上大家讨论的内容, llama-2-7b-chat载入大概需要15GB显存,这个应该是float16版本,与预估结果十分相似!

可以看到,不同的模型很多结果差异还是挺大的。但是,总体来说,还是很有参考价值的!

大模型显存估计工具Model Memory Calculator的本地部署

这个库也可以本地使用,使用过程应该还是需要联网才能估算(需要访问HuggingFace的模型配置文件)。

Model Memory Calculator的安装很简单。首先安装依赖的accelerate库:

pip install git+https://github.com/huggingface/accelerate.git

  1. pip install jaxlib

如果提示jaxlib版本问题你可能要升级。

接下来先在本地输入自己的HuggingFace的密钥,首先需要在页面生成token:https://huggingface.co/settings/tokens

然后复制token后,运行如下命令配置:

  1. huggingface-cli login

如下图所示:

运行到这里的时候Token:输入上面你复制的token即可。接下来就可以直接运行了。

估算MetaAI的LLaMA2-7B-HF模型的显存大小:

accelerate estimate-memory meta-llama/Llama-2-7b-hf

 

结果如下所示:

在线演示地址和其它注意事项

大模型显存估计工具Model Memory Calculator的使用地址参考原文末尾。

 

需要注意的是,该工具如果访问的是需要授权的页面,如上图所示的llama2-7b,是需要先用huggingface账户获取授权,然后获得你的token才能访问的。虽然上面演示页面提供了API Token的输入,但是是有问题的,这个部署不好。但是我们可以自己本地部署方式。

 

悟空CRM产品更多介绍:www.5kcrm.com

相关内容

CRM厂商众多,企业如何判断系统是否合适?

CRM厂商众多,企业如何判断系统是否合适?【序言】在数字化转型的大潮中,客户关系管理系统(Customer Relationship Management System,简称CRM)作为企业管理客户信息、提升销售效率的重要工具,受到了越来越多企业的青睐。然而面对市场上琳琅满目的CRM产品,很多企业在选择时往往会陷入迷茫:什么样的CRM才适合自己呢?接下来我们将探讨一些关键点帮助您找到答案。【明确自
相关文章

CRM客户关系管理系统都有哪些功能?这些功能咋用比较好?

《CRM客户关系管理系统都有哪些功能?这些功能咋用比较好?》嘿!大家好,在这个商业竞争日益激烈的时代里,我们都知道“客户就是上帝”。而为了更好地服务我们的“上帝”,一款好的CRM(Customer Relationship Management)客户关系管理系统可是帮了大忙啦!今天呢,我们就来聊聊它有哪些实用的功能以及如何更好地利用它们吧!一、了解你的客户CRM系统就像一个超级侦探,能帮你收集并整
相关文章

CRM客户关系管理软件有什么用?

CRM客户关系管理软件有什么用?嗨!大家好!今天我想和你们聊聊一个对于企业和组织来说非常重要的工具——CRM(Customer Relationship Management)客户关系管理软件。你可能会想,“这个听起来好像挺专业的啊!”没错,但它其实就在我们身边扮演着至关重要的角色。1. 帮助企业更好地理解客户需求首先,CRM系统就像是企业的“超级大脑”。它能够收集来自不同渠道的信息,比如网站访问
相关文章

CRM管理系统如何做好企业用户的精细化运营?

CRM管理系统如何做好企业用户的精细化运营?一、以人为本:构建360度客户画像“嘿,你有没有想过,为什么有的公司能和顾客建立深厚的情感纽带呢?” 要想让客户成为企业的铁杆粉丝,就需要从了解他们开始。运用CRM系统进行客户数据收集与分析是基础工作。在CRM的帮助下,我们可以全方位地描绘出每一位客户的喜好、行为模式甚至潜在需求,从而实现个性化服务。只有深入了解了客户的真实需要,才能制定出有效的营销策略
相关文章

CRM客户管理系统,盘活潜在客户

CRM:让每一位顾客都成为你的“金主”在这个信息爆炸的时代里,客户资源的重要性不言而喻,但如何高效管理这些宝贵的资源却成了许多企业的难题。于是乎,一种名为客户关系管理系统(Customer Relationship Management, 简称CRM) 的工具应运而生。1. 挖掘潜在客户的“金矿”在销售领域,“潜在客户”是那些对你的产品或服务有一定兴趣,但还没有完成购买行为的人群。对于企业来说,这
相关文章

2024年最新CRM全面解析 - 百科

2024年最新CRM全面解析在这个数字化时代,客户关系管理(Customer Relationship Management, CRM)系统已成为企业提升竞争力的关键工具之一。随着技术的发展与市场的需求变化,2024年的CRM又有哪些新的特点和发展趋势呢?让我们一起深入探讨。一、CRM是什么?首先,我们需要明确什么是CRM。简而言之,它是一套帮助企业管理和分析客户信息的方法和技术集合。通过有效的C
相关文章

2024年国产CRM系统一年要花费多少?

【引言】在数字化转型的大潮中,客户关系管理(CRM)系统已成为企业提升竞争力的关键工具之一。对于正在寻找合适CRM系统的中国企业来说,了解2024年的市场趋势与成本至关重要。本文将从几个不同的角度探讨这一问题。一、CRM系统的基本费用首先需要明确的是,并没有一个固定的答案来回答这个问题。不同厂商提供的产品和服务有着各自的定价策略和收费模式,这取决于用户的需求以及所选功能模块等因素。然而我们可以通过
相关文章

CRM系统(CRM客户管理系统) -百科

一文全面了解CRM系统,本文由《CRM系统是什么》《CRM系统的起源》《CRM系统的特征》《CRM系统的用途》《CRM系统的作用》《CRM系统带来的商业价值》《CRM系统的开发步骤》等七个子标题文章组成,带您全面的了解CRM系统。一、CRM系统是什么客户关系管理系统,是指利用软件、硬件和网络技术,为企业建立一个客户信息收集、管理、分析和利用的信息系统。以客户数据的管理为核心,记录企业在市场营销和销
相关文章

4S店如何通过客户关系管理提升销售业绩?

4S店如何通过客户关系管理提升销售业绩?嘿!大家好!今天我们就来聊聊一个老生常谈的话题——客户就是上帝,在4S店里更是如此。要想让“上帝”们掏腰包买账,那可不是一件容易的事儿。但是别担心,只要掌握了正确的客户关系管理策略,提高销售业绩就不是梦啦!一、了解客户需求,提供个性化服务我们得记住,每个人都是独一无二的,他们想要的东西也都不一样。所以我们要做的第一件事就是尽可能多地了解每一位顾客的需求和偏好
相关文章

41%的销售人员通过CRM提高了工作效率

【提升效率的秘密武器:41%的销售精英如何借助CRM实现飞跃】嘿,各位销售界的朋友们!今天咱们来聊聊一个让不少同行都津津乐道的话题——“客户关系管理”(Customer Relationship Management, CRM)。根据最新的统计数据表明,高达41%的销售人员表示,在使用了CRM系统之后,他们的工作效率得到了显著提高。那么问题来了,这背后究竟藏着怎样的秘密呢?让我们一起揭开谜底吧!一
相关文章
最新文章

CRM厂商众多,企业如何判断系统是否合适?

CRM厂商众多,企业如何判断系统是否合适?【序言】在数字化转型的大潮中,客户关系管理系统(Customer Relationship Management System,简称CRM)作为企业管理客户信息、提升销售效率的重要工具,受到了越来越多企业的青睐。然而面对市场上琳琅满目的CRM产品,很多企业在选择时往往会陷入迷茫:什么样的CRM才适合自己呢?接下来我们将探讨一些关键点帮助您找到答案。【明确自
最新文章

CRM客户关系管理系统都有哪些功能?这些功能咋用比较好?

《CRM客户关系管理系统都有哪些功能?这些功能咋用比较好?》嘿!大家好,在这个商业竞争日益激烈的时代里,我们都知道“客户就是上帝”。而为了更好地服务我们的“上帝”,一款好的CRM(Customer Relationship Management)客户关系管理系统可是帮了大忙啦!今天呢,我们就来聊聊它有哪些实用的功能以及如何更好地利用它们吧!一、了解你的客户CRM系统就像一个超级侦探,能帮你收集并整
最新文章

CRM客户关系管理软件有什么用?

CRM客户关系管理软件有什么用?嗨!大家好!今天我想和你们聊聊一个对于企业和组织来说非常重要的工具——CRM(Customer Relationship Management)客户关系管理软件。你可能会想,“这个听起来好像挺专业的啊!”没错,但它其实就在我们身边扮演着至关重要的角色。1. 帮助企业更好地理解客户需求首先,CRM系统就像是企业的“超级大脑”。它能够收集来自不同渠道的信息,比如网站访问
最新文章

快速注册,立即使用

仅需一分钟,立即注册悟空云。悟空CRM免费试用。
客户端下载