问题描述:
博主的机器是M1芯片,原本使用conda安装tensorflow后,import tensorflow
时报错:
问题原因:
安装版本与Arm版本不兼容。
Mac M1 安装tensorflow
一系列尝试后,选择安装miniconda安装tensorflow还可以使用gpu加速功能。
- miniconda安装tensorflow教程:
Install TensorFlow on Mac M1/M2 with GPU support - 干净卸载原始conda的教程:
mac彻底删除anaconda - conda VS miniconda参考博客:
Python vs. Anaconda — What’s the Difference?
简单理解就是conda有可视化界面,便于操作但占用更多空间;miniconda使用命令行进行管理,只需安装几个必要的包,并且使用mamba
替换conda
进行包管理效率更高。包管理性能比较:mamba
>pip
>conda
架构不兼容问题
在安装上述包后,博主需要在后续安装包时,遇到架构不兼容问题
ERROR: Could not find a version that satisfies the requirement tensorflow (from versions: none)
ERROR: No matching distribution found for tensorflow
详细问题描述可查阅:Installation Issues on Apple M1 device
问题原因:
主要是包的架构基于x86开发,还没有兼容M1芯片(ARM架构),于是可以使用Rosseta打开终端可以将ARM架构改为i386架构
近两年,苹果推出M1芯片后,为了版本兼容有三种措施:借助 macOS 11 Big Sur 系统以及其内置的 Universal 2、Rosetta 2 和 Virtualizaion 三种技术。详细可了解:一文看懂苹果 Rosetta 2 技术原理:这个 “翻译”有点本事
将mac 终端设置为Rosetta,右键-显示简介-通用-选中‘用rosetta打开’,重启终端,输入arch
就会输出i386
(原始输出arm
).详细教程:官方-如果您需要在 Mac 上安装 Rosetta