本指南針對搭載 Raspbian 9.0 的 Raspberry Pi 裝置建構 TensorFlow 套件。雖然這些指示可能適用於其他 Raspberry Pi 變化版本,但只有這個版本支援這個套件,而且只有這個版本的套件經過測試。
建議你跨平台編譯 TensorFlow Raspbian 套件的程式碼。跨平台程式碼編譯是使用部署平台以外的平台來建構套件。比起使用 Raspberry Pi 的有限 RAM 和速度較慢的處理器來建構 TensorFlow 套件,在更強大的 Linux、macOS 或 Windows 主機電腦上建構會更加輕鬆。
主機設定
安裝 Docker
為簡化依附元件管理,建構指令碼使用了 Docker 來建立虛擬 Linux 開發環境以用於編譯。請執行以下程式碼來驗證 Docker 安裝狀態:docker run --rm hello-world
下載 TensorFlow 原始碼
請使用 Git 來複製 TensorFlow 存放區:
git clone https://github.com/tensorflow/tensorflow.git
cd tensorflow
存放區預設為 master
開發分支版本,您也可以查看版本分支進行建構:
git checkout branch_name # r1.9, r1.10, etc.
從原始碼開始建構
請使用 ARMv7 NEON 指示跨平台編譯 TensorFlow 的原始碼,建構可在 Raspberry Pi 2、3 和 4 裝置上運作的 Python pip 套件。建構指令碼會啟動用於編譯的 Docker 容器。你也可以為「build_raspberry_pi.sh」指令碼提供「AARCH64」參數,以建構 ARM 64 位元二進位檔 (aarch64)。請為目標套件選擇 Python 3.8、Python 3.7、Python 3.5 或 Python 2.7:
Python 3.5
tensorflow/tools/ci_build/ci_build.sh PI-PYTHON3 \ tensorflow/tools/ci_build/pi/build_raspberry_pi.sh
Python 3.7
tensorflow/tools/ci_build/ci_build.sh PI-PYTHON37 \ tensorflow/tools/ci_build/pi/build_raspberry_pi.sh
Python 3.8 (64 位元)
tensorflow/tools/ci_build/ci_build.sh PI-PYTHON38 \ tensorflow/tools/ci_build/pi/build_raspberry_pi.sh AARCH64
Python 2.7
tensorflow/tools/ci_build/ci_build.sh PI \ tensorflow/tools/ci_build/pi/build_raspberry_pi.sh
如要建立可支援所有 Raspberry Pi 裝置 (包括 Pi 1 和 Pi Zero) 的套件,請傳遞 PI_ONE
引數,例如:
tensorflow/tools/ci_build/ci_build.sh PI \ tensorflow/tools/ci_build/pi/build_raspberry_pi.sh PI_ONE
建構完成時 (約需 30 分鐘),系統會在主機來源樹狀結構的輸出成果目錄中建立 .whl
套件檔案。請將 wheel 檔案複製到 Raspberry Pi,並使用 pip
進行安裝:
pip install tensorflow-version-cp35-none-linux_armv7l.whl