Apple TensorFlow fork 和 Pandas 在 M1 芯片上发生冲突

时间:2021-01-07 08:26:46

标签: python pandas tensorflow apple-m1

任何人都知道如何安装 Pandas(并实际导入),而不是在 Rosetta 下才能使用 Apple 的分叉 TensorFlow 在本机 M1 模式下使用? 我只能做一个或另一个,而我需要两者。 如果我在 Rosetta TF 下安装将不起作用。 如果我为 M1 安装 Apple 的 TF,Pandas 将无法安装。

1 个答案:

答案 0 :(得分:6)

我希望 Xcode 命令行工具已经安装。如果没有,请安装它,然后按照步骤操作。

第 1 步:迷你锻造

miniforge GitHub 为 arm64 (Apple Silicon) 安装 miniforge。 Miniforge 支持安装为 Apple Silicon 本地编译的 Python 包。

第 2 步:下载 ATF 2.4

然后从 Apple GitHub 下载 TensorFlow 2.4,解压它但不要使用提供的脚本安装它。转到 arm64 目录下:

第 3 步:创建 Conda 环境

在安装 miniforge 之后和执行此步骤之前,不要忘记打开一个新会话或获取 .zshrc 的源。

创建一个空的 Conda 环境,然后激活它并安装 python 3.8(根据 ATF 2.4 的要求)和所有需要的包。请注意,这里不需要 numpy,因为 Pandas 已经安装了它,但它会在最后一步被 Apple 提供的版本覆盖。

conda create --name mytf
conda activate mytf
conda install -y python==3.8.6
conda install -y pandas matplotlib scikit-learn jupyterlab

第 4 步:安装所有 ATF 2.4 软件包

现在在您的 Conda 环境下手动安装 ATF 2.4 包。

请注意以下说明对应于第二个 ATF 2.4 版本,即 0.1 alpha 1。任何新版本都可能需要不同的过程,您可以通过检查 install_venv.sh 内容进行调整。

# Install specific pip version and some other base packages
pip install --force pip==20.2.4 wheel setuptools cached-property six
# Install all the packages provided by Apple but TensorFlow
pip install --upgrade --no-dependencies --force numpy-1.18.5-cp38-cp38-macosx_11_0_arm64.whl grpcio-1.33.2-cp38-cp38-macosx_11_0_arm64.whl h5py-2.10.0-cp38-cp38-macosx_11_0_arm64.whl tensorflow_addons-0.11.2+mlcompute-cp38-cp38-macosx_11_0_arm64.whl
# Install additional packages
pip install absl-py astunparse flatbuffers gast google_pasta keras_preprocessing opt_einsum protobuf tensorflow_estimator termcolor typing_extensions wrapt wheel tensorboard typeguard
# Install TensorFlow
pip install --upgrade --force --no-dependencies tensorflow_macos-0.1a1-cp38-cp38-macosx_11_0_arm64.whl