
优化gpu Vram使用:确定最佳gpu配置以支持您的llm需求
这个世界从未如此不同。
在短短几年内,我们所做的一切都将涉及一些“AI”。如果你正在阅读这篇文章,你无需了解大型语言模型和图形处理单元。
在使用像GPT和Claude这样的封闭模型后,你最终会决定尝试开源模型。这是一个合理的选择。
访问开源模型的第一种(也是最好的)方式是通过像Groq或Together AI这样的应用程序接口提供商。但你的公司可能希望有更安全的选择。
据我所知,开源模型有两个显著的好处。
- 成本:开源模型的推理成本大幅降低。
- 隐私:使用开源模型,你可以将所有数据保留在本地,包括你发送进行推理的数据。
要真正享受隐私,你必须在自己的服务器上托管大型语言模型。像Ollama这样的工具让你变得简单。但仍然有一个关键问题需要回答。这是一个与你的CFO相关的问题。
图形处理单元的成本如此之高。你能在上面花多少钱?
要回答这个问题,估算一下你需要多少视频随机存取存储器来服务你的大型语言模型。本文正是关于这个话题的。
vRAM 和大型语言模型
视频随机存取存储器(简称 vRAM)是一种用于图形处理单元的特殊类型内存。图形处理单元旨在减轻中央处理器的一些繁重任务。最初,它们主要用于图像和视频渲染,因此得名图形处理单元(GPU)。
常规内存与中央处理器和其他组件共享,这会减慢信息处理速度。然而,由于 vRAM 完全专用于图形处理单元,图形处理单元可以快速且不间断地访问内存。
后来,随着数据处理需求的激增,工程师们开始使用图形处理单元进行大规模数据处理。
这也为大型语言模型(LLMs)打开了大门,这些模型需要大量快速且不间断的内存。
像 Llama 3.1 70B 这样的模型,使用半精度(FP16),需要 70,000,000,000×2 字节 = 140,000,000,000 字节来**存储其权重,**即 140 GB。如果你想知道为什么要乘以 2,每个 FP16 参数占用 2 字节的内存。
除了存储值之外,LLMs 在其激活层之间创建大量的缓存数据。LLMs 还以批处理方式处理数据。
所有这些使得服务 LLMs 的内存需求极高。
现在,让我们来回答这个金色问题。
你需要多少 vRAM 来本地托管大型语言模型?
我们现在知道,在半精度 (FP16) 下,大型语言模型需要的 vRAM 是其参数大小的两倍,以容纳其参数。
但总的内存需求呢?
这里有一个经验法则:
托管大型语言模型所需的图形处理单元内存 (vRAM)。
要在半精度下托管一个 700 亿参数的模型,你需要
( 70 x 16 ) / 8 * 1.2 = 168 GB
的 vRAM。
事情是这样的:几乎没有人会在这个级别运行。
如何在小型图形处理单元上托管大型语言模型?
是的,没有人想用那么多内存来运行大型语言模型。
在较小的图形处理单元或较少的视频随机存取存储器上运行它们的诀窍是减少用于存储模型参数的精度点——除非您想在预测中获得稍微更高的准确性。
半精度(FP16)模型与FP8模型之间的差异通常微不足道。对于大多数用例,您可能只对4位模型感到满意。
然而,4位量化模型所需的视频随机存取存储器是半精度模型的四分之一。这意味着您可以愉快地用42GB的视频随机存取存储器服务于70B版本的Llama 3.1。
以下是视频随机存取存储器大小及其可运行模型的简要指南:
- 4GB vRAM → 小型模型(例如,3B参数带量化)
- 8GB vRAM → 中型模型(例如,7B带4位量化)
- 16GB vRAM → 可以处理13B模型
- 24GB+ vRAM → 用于大型模型(例如,30B+)
选择哪个GPU?
现在我们了解了模型大小、量化和vRAM需求,我们可以更有根据地猜测应该购买哪个GPU。
这是我对您使用的建议。
预算友好的图形处理单元(入门级)
这些图形处理单元速度较慢,但适用于轻量级大型语言模型推理。最适合小型模型(3B-7B)并进行量化(4-bit)
- NVIDIA RTX 3060 – 12GB 视频随机存取存储器
- NVIDIA RTX 2060 Super — 8GB 视频随机存取存储器
- AMD RX 6700 XT — 12GB 视频随机存取存储器
中端图形处理单元 (最佳性价比)
这些图形处理单元可以获得更快的大型语言模型响应,并且可以顺畅运行大多数模型。它们最适合中等大小的模型(7B-13B)。
- NVIDIA RTX 4060 Ti — 16GB 视频随机存取存储器
- NVIDIA RTX 3080 Ti — 12GB 视频随机存取存储器
- AMD RX 7900 XT — 20GB 视频随机存取存储器
高端图形处理单元(严肃的本地大型语言模型托管)
这些图形处理单元还可以生成快速的大型语言模型响应,并支持更大的上下文窗口。它们最适合大型模型(13B-30B)或多个实例。
- NVIDIA RTX 4090 – 24GB 视频随机存取存储器
- NVIDIA RTX 3090 – 24GB 视频随机存取存储器
- AMD RX 7900 XTX — 24GB 视频随机存取存储器
终极图形处理单元(专业版和企业版)
此范围内的图形处理单元支持多图形处理单元设置和完全微调。大型语言模型训练和托管65B+模型。
- NVIDIA RTX 6000 Ada — 48GB 视频随机存取存储器
- NVIDIA A100 – 80GB 视频随机存取存储器
- NVIDIA H100 – 80GB 视频随机存取存储器
在这里,我计算了一些当前流行模型的 视频随机存取存储器需求。
流行开源模型的图形处理单元内存需求。
Please translate the following text to Chinese. Requirements: 1. Keep code blocks (```) unchanged 2. Keep inline code (`) unchanged 3. Keep Markdown formatting 4. Use these technical term translations: LLM -> 大型语言模型 GPU -> 图形处理单元 vRAM -> 视频随机存取存储器 FP16 -> 半精度 API -> 应用程序接口 Ollama -> Ollama Groq -> Groq Together AI -> Together AI cache data -> 缓存数据 batch processing -> 批处理 memory -> 内存 parameters -> 参数 weights -> 权重
Text: ## Final thoughts
Most companies love the AI revolution. Some have started to stride the waves. Others hold back primarily because of privacy concerns.
Hosting open-source LLMs is the best solution for them. Recent wins of models such as DeepSeek-R1 all give hope to the open-source community.
The primary concern for those who love to host LLMs on their servers is the GPU they need. This post illustrates how you can compute the vRAM needs for your LLM and which GPU would fit your needs.