本地私有化部署 ChatGLM-6B 大模型指南
1. 大语言模型简介
大语言模型(Large Language Model, LLM)是一种人工智能模型,旨在理解和生成人类语言。它们在海量文本数据上进行训练,可以执行广泛的任务,包括文本总结、翻译、情感分析等。LLM 的特点是规模庞大,包含数十亿参数,帮助它们学习语言数据中的复杂模式。这些模型通常基于深度学习架构,如 Transformer,这有助于它们在各种自然语言处理(NLP)任务上取得令人印象深刻的表现。
从 2017 年 Google 提出 Transformer 后,各种基于 Transformer 的变形结构被提出和使用。主要分类两类:一种是基于 Encoder,最具代表的 BERT 模型;一种是基于 Decoder,最具代表的 OpenAI 提出的 GPT 系列。目前 GPT 在 LLM 领域处于领先地位,ChatGPT 的问世更是推动了这一趋势。
2. GPU 与硬件环境要求
2.1 GPU 和 CPU 的区别
CPU(中央处理器)是计算机的主要处理器,负责执行指令和控制操作,适合通用计算任务。GPU(图形处理器)专门设计用于处理图形和图像,拥有数百甚至数千个小型处理单元,可同时处理多个任务,适合加速图形、视频编辑和机器学习等大规模并行计算任务。
GPU 对 AI 深度学习模型加速的原因包括:
- 并行计算能力:大量小型处理单元可同时处理任务,适合分解为大量小型计算的深度学习。
- 浮点运算能力:专门的浮点运算单元可高效执行矩阵乘法和卷积。
- 内存带宽:高速内存带宽可高效读取和写入大量数据。
2.2 常见 GPU 芯片选择
- NVIDIA GeForce 系列:流行度高,计算能力强,适用于游戏、图形处理和深度学习。缺点是比较贵,功耗较高。
- AMD Radeon 系列:性价比高,但部分应用支持不如 NVIDIA。
- Intel Xe 系列:新一代产品,但市场产品较少。
- Apple M 系列:低功耗,仅适用于苹果设备。
对于大模型部署,推荐使用 NVIDIA GPU,因为 CUDA 生态最完善。
2.3 显存需求
大模型的一个显著特点是参数量大,需要高规格显存配置。例如,ChatGLM-6B 在 INT4 量化级别下最低只需 6GB 显存即可运行。如果显存不足,可以考虑使用 CPU 推理(需要约 32GB 内存),但速度会显著变慢。
如何确认 PC 是否支持 GPU:
- 右键点击'此电脑' -> '管理' -> '设备管理器' -> '显示适配器'。
- 查看是否有 NVIDIA 显卡。
- 确保已安装对应的 CUDA 驱动。
3. 环境配置步骤
3.1 安装 CUDA 和 cuDNN
CUDA 和 cuDNN 的安装教程较多,关键是要注意版本匹配。安装完成后,可通过 nvidia-smi 命令查看 CUDA 版本。如果 nvcc 和 nvidia-smi 显示的版本不一致,请参考官方文档进行修复。
3.2 创建 Conda 环境
建议先建立一个独立的 Conda 环境,避免依赖冲突。
conda create -n chatglm_env python=3.9
conda activate chatglm_env
3.3 安装 PyTorch
根据自己机器的配置选择和显卡对应的 PyTorch 版本。例如,CUDA 11.7 版本:
conda install pytorch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1 pytorch-cuda=11.7 -c pytorch -c nvidia
验证 CUDA 和 PyTorch 是否可用:
torch
(torch.__version__)
(torch.cuda.is_available())


