M1芯片Mac在PyCharm中配置TensorFlow环境报错咨询
M1芯片Mac在PyCharm中配置TensorFlow环境方案
你遇到的Could not find a version that satisfies the requirement tensorflow-macos报错,本质是架构不匹配或Python版本不兼容导致的,按以下步骤配置即可:
第一步:终端侧先装好适配M1的TensorFlow基础环境
先不要打开PyCharm,所有操作先在系统终端完成:
- 安装arm64原生Python:卸载设备上所有Intel架构的Python(路径在
/usr/local/bin/下的Python都是x86转译版本),通过arm版Homebrew安装3.8/3.9/3.10三个版本其中之一的Python,不要安装3.11及以上版本,目前tensorflow-macos未完成高版本Python适配。安装完成后在终端执行which python3,输出路径为/opt/homebrew/bin/python3.x即为正确的arm原生版本。 - 创建独立虚拟环境:终端执行
python3 -m venv ~/tf-metal-env创建专属虚拟环境,执行source ~/tf-metal-env/bin/activate激活环境,激活后终端行首会出现(tf-metal-env)标识。 - 按顺序安装依赖:
- 升级pip:
pip install --upgrade pip - 安装TensorFlow主包:
pip install tensorflow-macos - 安装M1芯片GPU加速插件:
pip install tensorflow-metal
- 升级pip:
- 验证终端环境:在激活的虚拟环境中执行以下代码,无报错、能正常输出版本号和GPU设备信息即说明终端环境配置完成:
import tensorflow as tf print(tf.__version__) print(tf.config.list_physical_devices('GPU'))
第二步:PyCharm端对应配置
- 首先确认你安装的是Apple Silicon版本的PyCharm,不要安装Intel版本,启动时不要勾选“使用Rosetta打开”选项。可通过「系统报告-应用程序」找到PyCharm条目,查看“种类”字段显示为“Apple 芯片”即为正确版本。
- 新建项目时,解释器选项不要选“新建虚拟环境”,选择「现有解释器」。
- 点击解释器选择栏右侧的更多按钮,选择Virtualenv分类下的「现有环境」,路径选择刚才创建的虚拟环境内的Python可执行文件,完整路径为
~/tf-metal-env/bin/python3,确认后保存设置。 - 进入项目后不要在PyCharm内置的包管理面板中搜索安装TensorFlow,只要解释器选择正确,终端里提前装好的依赖会被自动识别,直接运行TensorFlow代码即可。
常见避坑提示
- 不要使用Rosetta转译模式运行PyCharm或Python,否则pip只会检索x86架构的安装包,必然触发找不到tensorflow-macos版本的报错。
- 不推荐通过Conda安装M1版TensorFlow,多数Conda源默认提供的是x86转译包,会出现GPU无法调用、版本匹配错误等问题。
- 如果切换解释器后PyCharm仍然识别不到已安装的包,直接重启PyCharm刷新索引即可。
内容的提问来源于stack exchange,提问作者user19427698
相关产品推荐
相关产品推荐

