ChatGLM3本地安装

配置环境

根据

https://github.com/THUDM/ChatGLM3?tab=readme-ov-file

https://github.com/THUDM/ChatGLM3/blob/main/finetune_demo/README.md

git clone https://github.com/THUDM/ChatGLM3
cd ChatGLM3

后:

/ChatGLM3

/ChatGLM3/finetune_demo

两个路径下的requirements都需要安装

pip install -r requirements.txt

出现 mpi4py>=3.1.5 安装报错和解决:

配置时,需要mpi4py>=3.1.5 , 我的环境安装不上,报错:

我发现bin在路径列表第一位,但是还是报错: checking for MPI compile and link … /home/alan_student_kejun/miniconda/envs/chatglmenv/bin/mpicc -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/alan_student_kejun/miniconda/envs/chatglmenv/include -fPIC -O2 -isystem /home/alan_student_kejun/miniconda/envs/chatglmenv/include -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem /home/alan_student_kejun/miniconda/envs/chatglmenv/include -DNDEBUG -D_FORTIFY_SOURCE=2 -O2 -isystem /home/alan_student_kejun/miniconda/envs/chatglmenv/include -fPIC -I/home/alan_student_kejun/miniconda/envs/chatglmenv/include/python3.11 -c _configtest.c -o _configtest.o ————————————————————————– The Open MPI wrapper compiler was unable to find the specified compiler x86_64-conda_cos6-linux-gnu-cc in your PATH. Note that this compiler was either specified at configure time or in one of several possible environment variables. ————————————————————————– failure. removing: _configtest.c _configtest.o error: Cannot compile MPI programs. Check your configuration!!! [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for mpi4py Failed to build mpi4py ERROR: Could not build wheels for mpi4py, which is required to install pyproject.toml-based projects

后解决如下:

由于你依然遇到 x86_64-conda_cos6-linux-gnu-cc 编译器找不到的问题,这表明可能存在一些环境设置问题,尽管你的 PATH 环境变量已正确设置。我们需要采取一些额外的步骤来解决这个问题:

步骤 1: 检查编译器是否真正存在

首先,确保编译器 x86_64-conda_cos6-linux-gnu-cc 确实存在于你的 Conda 环境中。使用这个命令来查找编译器文件:

1
find /home/alan_student_kejun/miniconda/envs/chatglmenv -name x86_64-conda_cos6-linux-gnu-cc

如果这个命令没有找到编译器,那么编译器可能没有正确安装。

步骤 2: 确保环境中有正确的编译器工具链

确认你的环境中安装了正确的工具链。你可以尝试再次安装或重新安装相关的编译器包:

1
conda install gxx_linux-64 gcc_linux-64 -c conda-forge

使用 -c conda-forge 指定从 conda-forge 频道安装,有时这个频道会提供更全面或更新的包。

步骤 3: 使用环境变量指定编译器路径

如果编译器存在但 mpicc 无法找到,尝试显式设置环境变量 CC 指向该编译器:

1
export CC=$(find /home/alan_student_kejun/miniconda/envs/chatglmenv -name x86_64-conda_cos6-linux-gnu-cc)

之后,再次尝试编译。

步骤 4: 清除任何可能的缓存并重试安装

清除 pip 缓存并尝试再次安装 mpi4py

1
pip install --no-cache-dir mpi4py

步骤 5: 检查 mpicc 配置

检查 mpicc 的配置,确保它使用正确的编译器路径:

1
mpicc -showme

这将显示 mpicc 使用的所有编译和链接选项。

额外的调试信息

如果以上步骤仍然不能解决问题,你可能需要更详细的日志来了解问题。可以尝试在安装 mpi4py 时增加一些日志输出,以便更好地理解发生了什么:

1
MPICC="mpicc -v" pip install --no-cache-dir mpi4py

这里使用 -v 选项使 mpicc 输出详细的编译信息,这可能帮助识别问题。

如果你有任何疑问或需要进一步的帮助,请继续提供信息。

下载模型

我使用的是这个平台:
https://modelscope.cn/models/ZhipuAI/chatglm3-6b/summary

当然也可以从hugging face下载。

pip install modelscope

from modelscope import snapshot_download model_dir = snapshot_download("ZhipuAI/chatglm3-6b", revision = "v1.0.0")

1
2
3
4
5
6
7
8
9
10
11
from modelscope import snapshot_download

\# 指定下载文件夹路径

desired_folder_path = "/home/alan_student_kejun/chatglm3-6b"

\# 下载模型到指定的文件夹

model_dir = snapshot_download("ZhipuAI/chatglm3-6b", revision="v1.0.0", cache_dir=desired_folder_path)

print("Model downloaded to:", model_dir)

需要很长时间,5分钟下载一个1.8G左右的模型块,总共7个块。