
我有一台 32G 内存 Macbook Pro,想要运行大语言模型看能不能替代 OpenAI 的 API。下面是我在 Macbook 上运行 ChatGLM-6B 的步骤。
克隆 ChatGLM-6B 仓库
1
   | git clone https://github.com/THUDM/ChatGLM-6B
   | 
 
创建虚拟环境
1 2
   | cd ChatGLM-6B python3 -m venv .venv
   | 
 
激活虚拟环境
1
   | source .venv/bin/activate
   | 
 
安装依赖
1 2 3 4
   | pip install -r requirements.txt
 
  pip install --pre torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/nightly/cpu
   | 
 
下载模型
1 2
   | cd .. git clone https://huggingface.co/THUDM/chatglm-6b chatgml-6b-model
   | 
 
修改代码使用 MPS 后端和下载的好的模型
修改 webapp.py 文件。
- 将 
.cuda() 改为 .to("mps") 
- 将模型和 tokenizer 的路径改为 huggingface 上克隆下来的 chatglm-6b 仓库本地路径。下面我的例子中,本地路径为 
/Users/eson/git/chatgml-6b-model。 
1 2 3 4 5 6 7 8 9 10 11 12
   | -tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True) -model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().cuda() +tokenizer = AutoTokenizer.from_pretrained( +    "/Users/eson/git/chatgml-6b-model", trust_remote_code=True +) +model = ( +    AutoModel.from_pretrained( +        "/Users/eson/git/chatgml-6b-model", trust_remote_code=True +    ) +    .half() +    .to("mps") +)
  | 
 
运行
这将会在本地启动一个 web 服务,会自动打开浏览器。