Mac m1芯片anaconda上安装tensorflow

Mac M1芯片上安装tensorflow

背景

环境:Mac OS M1芯片,anaconda
按照常规经验,在我的电脑上用用pip install TensorFlow之后,安装过程很正常没有报错,后来import tensorflow后出现了一个错误:zsh: illegal hardware instruction python 这个错误,后来搜索后,在 stack overflow网站上搜到了一个帖子,发现是一样的错误,顺藤摸瓜后发现了tensorflow的macOS github 上的说明。写出来供大家参考。
说明一下,如果anaconda环境是在官网上下载的,目前anaconda还没有支持arm芯片架构的,所以如果参考apple github 上的内容依然会报错,错误是:Failed to load the native TensorFlow runtime. 这是由于苹果芯片采用arm架构,但是anaconda目前官网上的安装包依然是inter架构的,所以会有问题,最后兜兜转转参考了https://github.com/apple/tensorflow_macos/issues/3。要先安装arm架构的anaconda(裂开表情包)。
参考网站:
stackoverflow :
“zsh: illegal hardware instruction python” when installing Tensorflow on MacBook pro M1 - Stack Overflow
苹果tensorflow github:
Releases · apple/tensorflow_macos · GitHub
anaconda 环境下安装tensorflow
https://github.com/apple/tensorflow_macos/issues/3
Anaconda arm 架构安装包:
https://conda-forge.org/blog/posts/2020-10-29-macos-arm64/

安装过程

环境说明

环境要求:
anaconda arm架构的安装包
python 3.8+
tensorflow 安装包

安装过程

下载tensorflow 文件和anaconda arm架构安装包

打开上述的tensorflow github 网站) 和Anaconda arm 架构安装包链接,下载文件到本地并解压文件。

下载文件:
1.下载tensorflow
https://github.com/apple/tensorflow_macos/releases
进入这个网站,有Assets,点击你需要下载的文件就可以了,我下载的是我圈出来的
在这里插入图片描述
2.下载anaconda arm
打开anaconda arm 链接https://conda-forge.org/blog/posts/2020-10-29-macos-arm64/,点开here就可以下载了。
在这里插入图片描述

ps: 如果有下载不下来的同学,我把我自己下载好的放在网盘上了,也可从网盘上下载。
链接: https://pan.baidu.com/s/1O5K6b_SLIyw8dOrs7xz2Ig 密码: rn5h

3.下载文件后解压
解压命令:

tar -xvf tensorflow_macos-0.1alpha1.tar 

解压后我的文件长这样:

在这里插入图片描述

安装anaconda,在当前目录下:
/bin/bash ./Miniforge3-MacOSX-arm64.sh

创建虚拟环境

为了tensorflow的包管理,单独创建一个虚拟环境。
在这里插入图片描述

  1. 创建虚拟环境
    conda create -n tensorflow_env python=3.8
  2. 激活虚拟环境
    conda activate tensorflow_env
    激活后的环境状态:
    在这里插入图片描述
  3. 查看当前python路径
    which python
    会出现当前python的虚拟环境,可以看到我的在anaconda3下的envs下的tensorflow_env;
    在这里插入图片描述
  4. 安装tensorflow
    在终端命令下运行以下代码
# If you have Tensorflow in your env, you must install it first -- uncomment this line if you're in this boat
# pip uninstall tensorflow tensorboard

# 这里记得更改为tensorflow下载解压后的文件夹...
libs="/Users/xx/xx/source/tensorflow_macos/arm64/"

# 替换成tensorflow的虚拟环境路径
env="/Users/xx/miniforge3/envs/tensorflow_env"

# The rest should work
pip install --upgrade pip wheel setuptools cached-property six

pip install --upgrade -t "$env/lib/python3.8/site-packages/" --no-dependencies --force "$libs/grpcio-1.33.2-cp38-cp38-macosx_11_0_arm64.whl"

pip install --upgrade -t "$env/lib/python3.8/site-packages/" --no-dependencies --force "$libs/h5py-2.10.0-cp38-cp38-macosx_11_0_arm64.whl"

pip install --upgrade -t "$env/lib/python3.8/site-packages/" --no-dependencies --force "$libs/numpy-1.18.5-cp38-cp38-macosx_11_0_arm64.whl"

pip install --upgrade -t "$env/lib/python3.8/site-packages/" --no-dependencies --force "$libs/tensorflow_addons-0.11.2+mlcompute-cp38-cp38-macosx_11_0_arm64.whl"

pip install absl-py astunparse flatbuffers gast google_pasta keras_preprocessing opt_einsum protobuf tensorflow_estimator termcolor typing_extensions wrapt wheel tensorboard typeguard

pip install --upgrade -t "$env/lib/python3.8/site-packages/" --no-dependencies --force "$libs/tensorflow_macos-0.1a1-cp38-cp38-macosx_11_0_arm64.whl”

这里运行如果出现无法找到文件错误,则需要根据tensorflow_macos/arm64/文件夹的文件名修改,因为下载的版本一直在更新,所以可能会有不一样。
5. 最后验证下,导入tensorflow终于不报错了。
在这里插入图片描述

  • 30
    点赞
  • 123
    收藏
    觉得还不错? 一键收藏
  • 59
    评论
评论 59
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值