看看你的电脑可以跑 AI 模型吗?
随着大语言模型(LLM)在各个领域的应用快速普及,越来越多开发者想要尝试在本地运行这些模型。然而,这些模型对计算机硬件的要求极高,特别是在显存(VRAM)和推理速度方面。那么,如何评估你的设备是否合适?本文将帮助你了解模型的存储需求、推理平台选择和不同硬件的实际表现,助力你找到最适合的配置。
不废话,先上结论:
绝大多数电脑 (包括笔记本) 几乎可以跑 AI 模型,但是使用不同 AI 模型,不同平台,不同机器推理速度差异会很大。
如果你想要跑一个勉强可玩的 LLM (比如 Llamma3.2 1B 模型),至少需要:
- 内存至少 16 GB
- CPU 至少是 4核 (非硬性要求,只是为了保证 1 秒大概能生成 5 个字的速度) 及以上
- CPU 至少 4GB 的显卡 (可选,如果不想用 llamma.cpp 跑模型)
- 优先推荐 vLLM 平台 (使用 GPU) 上跑模型,来获取最快的推理速度。
一、模型参数和存储需求计算
要高效运行大语言模型,我们首先需要了解模型的 参数量 和 比特量化(Bit Quantization)。模型的显存需求(VRAM)可以通过以下公式计算:
$$
M=\frac{P \times 4B}{32 / Q} \times 1.2
$$
符号 | 含义 |
---|---|
M M M | 显存大小需求,单位:GB |
P P P | 模型的参数量(Billion = 10 亿) |
Q Q Q | 量化位宽(如 16-bit、8-bit、4-bit) ,每个参数占用的存储 |
4 B 4B 4B | 4 个字节 (原始模型用 32-bit 参数量化,占 4 个字节存储) |
1.2 1.2 1.2 | 20% 的额外开销,用于加载辅助数据 |
示例:计算 70B 参数的模型所需显存
假设模型参数量为 70B (B 是指 billion,10亿参数量),采用 8-bit 量化模式,则显存需求为:
$$
M = \frac{70 \times 4B}{32 / 8} \times 1.2 = 42 \text{ GB}
$$
在该公式中,位宽越小,占用显存越少,例如使用 4-bit 量化会显著降低存储需求。8-bit 表示每个参数占用 1 字节(Byte),1024 字节=1MB,1024MB=1GB。因此,在量化配置上选择合适的位宽非常重要,可以大幅度降低硬件资源需求。
如果你没有显卡的话,模型会在内存中跑,占用的存储会比显存少 (对应公式 不需要 × 1.2)。
一些常见模型显存 (VRAM) 占用量的参考:
二、推理平台对比:vLLM、Llama.cpp、Ollama
运行 LLM 有多种推理平台可选,下面是三个流行平台的特点分析:
- vLLM:适合高吞吐量批处理场景,优化了 GPU 内存管理并支持 4-bit 量化,大大减少显存需求,性能表现优异。
- Llama.cpp:实现了灵活的 CPU 和 GPU 混合推理,量化选项丰富,适合资源有限的中小型模型部署。
- Ollama:具有内存管理优化、易于部署等优势,适合快速上线的场景。
平台 | 优势 | 劣势 |
---|---|---|
vLLM | 支持批处理、高吞吐量,适合高端 GPU | 需较高硬件配置 |
Llama.cpp | 支持灵活的 CPU/GPU 配置 | GPU 优化不足 |
Ollama | 内存管理优化、易用性强 | 灵活性稍逊 |
三、硬件性能对比:不同 GPU 和 CPU 的实际表现
在选择硬件时,需要根据模型规模和推理需求来确定配置。以下是几款常见的 GPU 和 CPU 在 LLM 推理任务中的表现:
1. 一些 GPU 性能对比(测试平台:Llama.cpp)
GPU | 速度 (t/s) | 适用场景 |
---|---|---|
RTX 4090 | 139 | 适合高性能需求和大型模型推理 |
RTX 4080 | 113 | 性价比较高,适合中型模型 |
RTX 3080 Ti | 108 | 支持中等模型推理 |
RTX 2080 Ti | 26 | 可满足小型模型运行需求 |
RTX 4060 Ti | 22 | 入门级模型部署 |
2. 一些 CPU 性能对比
CPU | 速度 (t/s) | 适用场景 |
---|---|---|
AMD Ryzen 9 7950X | 11.2 | 可支持较高效的推理需求 |
Intel Core i9-10900X | 8.0 | 较高的推理速度,适合小型模型 |
AMD Ryzen 7 5800X | 6.3 | 可支持中等规模模型推理 |
Intel Core i5-10400f | 5.1 | 适合小型模型推理 |
说明:t/s 即 tokens per second,每秒生成的 tokens 数量。1 个 token 大约为 0.75 个英文单词,或 1 个汉字。例如,“the quick brown fox” 包含 4 个 tokens。t/s 值越高,模型的推理速度越快,适合生成速度要求较高的场景。
四、实际配置建议
- 小型模型部署:适合 4GB VRAM 的显卡(如 RTX 3060),并选择 16GB RAM。
- 中型模型部署:推荐使用 12GB 以上显存的显卡,配合 8-bit 量化,可满足绝大部分 LLM 推理需求。
- 大型模型和高并发推理部署:推荐选择 24GB 显存的 RTX 4090 以上显卡,并配合高性能 vLLM 推理平台,实现高吞吐量。
某个网友提供的多个模型在 4代 i5 和 4080 显卡的推理速度例子
CPU: 4 代 i5: i5-4460
GPU: RTX 4080
Model_Name_Version | GPU RAM | GPU duration | GPU Perfor-mance | Main RAM | CPU Duration | CPU Perfor-mance | Perfor-mance diffe-rence |
---|---|---|---|---|---|---|---|
llama3:8b-instruct-q4_0 | 5.8GB | 2.1s | 80t/s | 4.7GB | 49s | 4.6t/s | 17.4x |
llama3:8b-instruct-q8_0 | 9.3GB | 3.4s | 56t/s | 8.3GB | 98s | 2.7t/s | 20.7x |
phi3:3.8b | 4.5GB | 3.6s | 98t/s | 3.0GB | 83s | 7.2t/s | 13.6x |
phi3:3.8b-mini-4k-instruct-q8_0 | 6.0GB | 6.9s | 89t/s | 4.6GB | 79s | 5.3t/s | 16.8x |
phi3:3.8b-mini-instruct-4k-fp16 | 9.3GB | 4.2s | 66t/s | 7.9GB | 130s | 2.9t/s | 22.8x |
phi3:14b | 9.6GB | 4.2s | 55t/s | 7.9GB | 96s | 2.7t/s | 21.2x |
phi3:14b-medium-4k-instruct-q6_K | 12.5GB | 8.9s | 42t/s | 11.1GB | 175s | 1.9t/s | 21.8x |
mistral:7b-instruct-v0.3-q4_0 | 5.4GB | 2.1s | 87t/s | 4.1GB | 36s | 4.9t/s | 17.8x |
mistral:7b-instruct-v0.3-q8_0 | 8.7GB | 2.3s | 61t/s | 7.5GB | 109s | 2.9t/s | 21.0x |
gemma:7b-instruct-v1.1-q4_0 | 7.4GB | 1.8s | 82t/s | 7.5GB | 25s | 4.4t/s | 18.6x |
gemma:7b-instruct-v1.1-q6_K | 9.1GB | 1.6s | 66t/s | 7.5GB | 40s | 3.0t/s | 22.0x |
不定期更新专业知识和有趣的东西,欢迎反馈、点赞、加星
您的鼓励和支持是我坚持创作的最大动力!ღ( ´・ᴗ・` )
参考
- Substratus AI:如何计算 LLM 的 GPU 内存需求
- Puget Systems:消费级 GPU 在 LLM 中的性能对比
- Hardware Corner:不同硬件平台的 LLM 基准测试
- Valohai:AMD 和 NVIDIA 的推理性能深度分析
- AnandTech:AI 推理中的 CPU 性能
- 网友测试的 i5 和 4080 显卡推理速度