1. 概述
ChatGLM3-6B 是由智谱 AI 推出的开源大语言模型,支持多轮对话、文本生成及工具调用等功能。本文详细介绍如何在本地环境搭建 ChatGLM3,包括源码下载、依赖安装、显存优化、Web Demo 启动以及 OpenAI 兼容 API 服务的部署。
2. 环境准备与源码下载
2.1 硬件要求
建议配备 NVIDIA 显卡,显存至少 8GB(推荐 12GB 以上)。若显存小于 8GB,建议使用量化版本(4-bit)运行。
2.2 获取源码
通过 ModelScope 或 GitHub 下载 ChatGLM3 源码。
git clone https://gitee.com/mirrors/ChatGLM3.git
ModelScope 是国内镜像,下载速度通常较快。
3. 环境安装
3.1 创建 Conda 环境
推荐使用 Python 3.10 或更高版本。新建虚拟环境并激活:
conda create -n chatglm3-demo python=3.11
conda activate chatglm3-demo
3.2 安装依赖
进入项目目录,修改 requirements.txt 以指定明确的 PyTorch 版本,确保 CUDA 版本匹配本机驱动。
cd ChatGLM3-main
pip install -r requirements.txt
注意:如果默认依赖未指定 torch 版本,建议手动指定为 torch==2.1.0 或根据 CUDA 版本选择对应 wheel 包。
4. 模型加载与显存优化
4.1 默认加载
默认情况下,模型以 FP16 精度加载,约需 13GB 显存。
from transformers import AutoModel, AutoTokenizer
model = AutoModel.from_pretrained("THUDM/chatglm3-6b", trust_remote_code=True).half().cuda()
tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm3-6b", trust_remote_code=True)
4.2 量化加载(低显存适配)
对于显存受限的 GPU,可使用 4-bit 量化加载模型,显著降低显存占用且保持流畅生成。
model = AutoModel.from_pretrained("THUDM/chatglm3-6b", trust_remote_code=True).quantize(4).cuda()
量化后模型路径需调整至 THUDM/chatglm3-6b 相对目录下,避免重复下载。
5. Web Demo 启动
项目提供了基于 Gradio 和 Streamlit 的网页版交互界面。
5.1 Gradio Demo
python web_demo.py
启动后浏览器访问输出地址即可。若遇到 模块缺失错误,请执行:


