M1芯片macOS 12.6 Monterey环境下PyTorch 1.12.1无法运行
解决M1芯片macOS 12.6 Monterey下PyTorch 1.12.1导入失败问题
问题根源
错误源于brew安装的libtorch与PyTorch官方包自带的libtorch版本冲突。PyTorch的pip/conda安装包本身已包含适配的libtorch库,但系统优先加载了brew安装的libtorch_cpu.dylib,导致缺失所需符号__ZN4c10d11debug_levelEv。
解决步骤
1. 卸载brew安装的libtorch
先移除系统中通过brew安装的libtorch,消除版本冲突:
brew uninstall libtorch
2. 清理现有环境(可选但推荐)
如果之前的虚拟环境或conda环境已被污染,建议删除后重建:
- 针对venv环境:
rm -rf venv39
- 针对conda环境:
conda deactivate conda remove -n conda39 --all -y
3. 重新安装PyTorch
创建新环境并安装官方适配M1芯片的PyTorch包:
方式一:使用venv
python3.9 -m venv venv39_new source venv39_new/bin/activate pip install torch torchvision torchaudio
方式二:使用conda
conda create -n conda39_new python=3.9 -y conda activate conda39_new conda install pytorch torchvision torchaudio -c pytorch
4. 验证安装
激活环境后,运行Python验证:
import torch print(torch.__version__) print(torch.backends.mps.is_available()) # M1芯片应输出True
补充说明
tch-rs能正常运行,是因为它使用了自身适配的libtorch版本,未依赖系统中的brew包,因此不受冲突影响。
内容的提问来源于stack exchange,提问作者Sami Badawi
相关产品推荐
相关产品推荐

