簡體   English   中英

在 macbook pro M1 上安裝 Tensorflow 時出現“zsh:非法硬件指令 python”[重復]

[英]"zsh: illegal hardware instruction python" when installing Tensorflow on macbook pro M1 [duplicate]

我正在嘗試讓 tensorflow 在我的 MacBook pro M1 上運行。 但是,我在嘗試導入時不斷收到以下錯誤: zsh: illegal hardware instruction python

我已經通過此鏈接下載並安裝了 tensorflow。

這些是我的安裝步驟:

  • 安裝一個 venv: python3 -m venv venv
  • install_venv.sh (位於下載的文件夾中)文件拖到終端,在末尾添加-p
  • select venv 的目錄作為 tensorflow 應該安裝的位置。
  • 激活 venv。
  • 輸入“蟒蛇”。
  • 嘗試導入 tensorflow: import tensorflow as tf

我正在使用 Python 3.8.2。

我看過一些教程,其中這個確切的方法確實有效,所以我不知道這里有什么問題。

在嘗試了一堆解決方案無濟於事之后,這對我有用。

步驟 1 使用 pyenv 安裝 python 版本 3.8.5 並將其設置為默認版本 python。 本教程 ( https://realpython.com/intro-to-pyenv/ ) 有助於正確配置 pyenv。

步驟 1.1 如果您在 zsh 中運行 pyenv 時遇到問題,請使用這篇文章 ( https://github.com/pyenv/pyenv/issues/1446 )。

步驟 1.2 運行 python 版本 3.8.5 后,您可以通過運行python -V檢查它應該是 output:

Python 3.8.5

Step 2 通過pip install virtualenv

步驟 2.1 通過運行virtualenv ENV創建虛擬環境

步驟 2.2 通過運行source ENV/bin/activate激活該虛擬環境

第 3 步安裝名為tensorflow-2.4.1-py3-none-any.whl位於這個公共谷歌驅動器鏈接https://drive.google.com/drive/folders/1oSipZLnoeQB0Awz8U68KYeCPsULy_dQ7

步驟 3.1 假設您只是安裝了下載輪pip install ~/Downloads/tensorflow-2.4.1-py3-none-any.whl在您激活的虛擬環境中

第 4 步鍵入 python,這將在您的終端中調出>>>並鍵入

>>> import tensorflow
>>>

如果沒有'zsh illegal hardware instruction'的錯誤你應該是go就好了。

注意:如果您使用的是 anaconda,上述方法也適用。 您可以跳過虛擬環境步驟(假設您有一個通過 Conda 激活的虛擬環境),只需 go 直接進入pip install ,如上所述(第 3 步及更高版本)。

Python3 在 M1 中附帶了 2 種架構。

$ file $(which python3)
# If you installed python through Homebrew or Anaconda, deactivate your conda env, then run this line instead:
# $ file $(which /usr/bin/python3)
/usr/bin/python3: Mach-O universal binary with 2 architectures: [x86_64:Mach-O 64-bit executable x86_64] [arm64e:Mach-O 64-bit executable arm64e]
/usr/bin/python3 (for architecture x86_64): Mach-O 64-bit executable x86_64
/usr/bin/python3 (for architecture arm64e): Mach-O 64-bit executable arm64e

在這里,指定使用哪一個非常重要。 您可以通過安裝這樣的腳本來做到這一點:

arch -arm64 bash install_venv.sh my_tf_env

如果您有多個 python 安裝,請使用:

arch -arm64 bash install_venv.sh --python=/usr/bin/python3 my_tf_env

您可以將my_tf_env替換為您選擇的任何其他名稱/路徑。

我遇到過同樣的問題

這是因為M1芯片。 現在有一個預發布版本,它為 macOS 11.0+ 提供硬件加速的 TensorFlow 和 TensorFlow Addons。 通過 Apple 的 ML Compute 框架,M1 Mac 和基於 Intel 的 Mac 支持本機硬件加速。

您需要安裝支持 M1 芯片的 TensorFlow 只需拉出這個tensorflow macos 存儲庫並運行./scripts/download_and_install.sh

我正在嘗試讓 tensorflow 在我的 MacBook pro M1 上工作。 但是,嘗試導入時,我不斷收到以下錯誤: zsh: illegal hardware instruction python

我已經通過這個鏈接下載並安裝了 tensorflow。

這些是我的安裝步驟:

  • 安裝一個venv: python3 -m venv venv
  • install_venv.sh (位於下載的文件夾中)文件拖到終端,在末尾添加-p
  • select venv的目錄作為tensorflow的安裝位置。
  • 激活venv。
  • 輸入“蟒蛇”。
  • 嘗試導入 tensorflow: import tensorflow as tf

我正在使用 Python 3.8.2。

我看過一些教程,這種確切的方法確實有效,所以我不知道這里有什么問題。

我找到了答案。 好像我的終端應用程序正在 Rosetta 中運行。 這可以通過右鍵單擊應用程序 -> 獲取信息 -> 禁用“使用 Rosetta 打開”來更改。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM