Crea dall'origine

Crea un pacchetto pip TensorFlow dal codice sorgente e installalo su Ubuntu Linux e macOS. Sebbene le istruzioni possano funzionare anche per altri sistemi, sono testate e supportate solo per Ubuntu e macOS.

Configurazione per Linux e macOS

Installa i seguenti strumenti di compilazione per configurare il tuo ambiente di sviluppo.

Installa Python e le dipendenze del pacchetto TensorFlow

Ubuntu

sudo apt install python3-dev python3-pip

macOS

Richiede Xcode 9.2 o versione successiva.

Installare utilizzando il gestore di pacchetti Homebrew :

brew install python

Installare le dipendenze del pacchetto pip di TensorFlow (se si utilizza un ambiente virtuale, omettere l'argomento --user ):

pip install -U --user pip

Installa Bazel

Per compilare TensorFlow, è necessario installare Bazel. Bazelisk è un modo semplice per installare Bazel e scarica automaticamente la versione corretta per TensorFlow. Per semplicità d'uso, aggiungi Bazelisk come eseguibile bazel nel tuo PATH .

Se Bazelisk non è disponibile, puoi installare Bazel manualmente. Assicurati di installare la versione corretta di Bazel dal file .bazelversion di TensorFlow.

Clang è un compilatore C/C++/Objective-C basato su LLVM, compilato in C++. È il compilatore predefinito per compilare TensorFlow a partire dalla versione 2.13. La versione attualmente supportata è LLVM/Clang 17.

I pacchetti nightly di LLVM per Debian/Ubuntu forniscono uno script di installazione automatica e pacchetti per l'installazione manuale su Linux. Assicurati di eseguire il seguente comando se aggiungi manualmente il repository apt di llvm alle tue sorgenti di pacchetti:

sudo apt-get update && sudo apt-get install -y llvm-17 clang-17

Ora, in questo caso /usr/lib/llvm-17/bin/clang è il percorso effettivo per clang.

In alternativa, puoi scaricare e decomprimere il pacchetto pre-costruito Clang + LLVM 17 .

Di seguito è riportato un esempio dei passaggi che è possibile seguire per configurare i binari Clang + LLVM 17 scaricati sui sistemi operativi Debian/Ubuntu:

  1. Passare alla directory di destinazione desiderata: cd <desired directory>

  2. Carica ed estrai un file di archivio...(adatto alla tua architettura):

    wget https://github.com/llvm/llvm-project/releases/download/llvmorg-17.0.2/clang+llvm-17.0.2-x86_64-linux-gnu-ubuntu-22.04.tar.xz
    
    tar -xvf clang+llvm-17.0.2-x86_64-linux-gnu-ubuntu-22.04.tar.xz
    

  3. Copia il contenuto estratto (directory e file) in /usr (potrebbero essere necessari i permessi sudo e la directory corretta potrebbe variare a seconda della distribuzione). Questo installa effettivamente Clang e LLVM e li aggiunge al percorso. Non dovresti dover sostituire nulla, a meno che tu non abbia un'installazione precedente, nel qual caso dovresti sostituire i file:

    cp -r clang+llvm-17.0.2-x86_64-linux-gnu-ubuntu-22.04/* /usr

  4. Controllare la versione dei binari Clang + LLVM 17 ottenuti:

    clang --version

  5. Ora che /usr/bin/clang è il percorso effettivo per il tuo nuovo clang, puoi eseguire lo script ./configure o impostare manualmente le variabili d'ambiente CC e BAZEL_COMPILER su questo percorso.

Installa il supporto GPU (facoltativo, solo Linux)

Non esiste alcun supporto GPU per macOS.

Leggi la guida al supporto GPU per installare i driver e il software aggiuntivo necessari per eseguire TensorFlow su una GPU.

Scarica il codice sorgente di TensorFlow

Utilizzare Git per clonare il repository TensorFlow :

git clone https://github.com/tensorflow/tensorflow.git
cd tensorflow

Il repository è impostato di default sul ramo di sviluppo master . Puoi anche effettuare il check-out di un ramo di rilascio per compilare:

git checkout branch_name  # r2.2, r2.3, etc.

Configurare la build

Le build di TensorFlow sono configurate dal file .bazelrc nella directory principale del repository. Gli script ./configure o ./configure.py possono essere utilizzati per modificare le impostazioni comuni.

Eseguire lo script ./configure dalla directory principale del repository. Questo script richiederà la posizione delle dipendenze di TensorFlow e ulteriori opzioni di configurazione della build (ad esempio, flag del compilatore). Per i dettagli, consultare la sezione Sessione di esempio .

./configure

Esiste anche una versione Python di questo script, ./configure.py . Se si utilizza un ambiente virtuale, python configure.py dà priorità ai percorsi all'interno dell'ambiente, mentre ./configure dà priorità ai percorsi all'esterno dell'ambiente. In entrambi i casi è possibile modificare l'impostazione predefinita.

Sessione di esempio

Di seguito è riportato un esempio di esecuzione dello script ./configure (la sessione potrebbe essere diversa):

Opzioni di configurazione

Supporto GPU

dalla v.2.18.0

Per il supporto GPU , impostare cuda=Y durante la configurazione e specificare le versioni di CUDA e cuDNN, se necessario. Bazel scaricherà automaticamente i pacchetti CUDA e CUDNN o punterà alle ridistribuzioni CUDA/CUDNN/NCCL sul file system locale, se necessario.

prima della v.2.18.0

Per il supporto GPU , imposta cuda=Y durante la configurazione e specifica le versioni di CUDA e cuDNN. Se il sistema ha più versioni di CUDA o cuDNN installate, imposta esplicitamente la versione invece di basarti su quella predefinita. ./configure crea collegamenti simbolici alle librerie CUDA del sistema, quindi se aggiorni i percorsi delle librerie CUDA, questo passaggio di configurazione deve essere eseguito nuovamente prima della compilazione.

Ottimizzazioni

Per i flag di ottimizzazione della compilazione, l'impostazione predefinita ( -march=native ) ottimizza il codice generato per il tipo di CPU del computer. Tuttavia, se si compila TensorFlow per un tipo di CPU diverso, è consigliabile utilizzare un flag di ottimizzazione più specifico. Consultare il manuale di GCC per alcuni esempi.

Configurazioni preconfigurate

Sono disponibili alcune configurazioni di build preconfigurate che possono essere aggiunte al comando bazel build , ad esempio:

  • --config=dbg — Compila con informazioni di debug. Vedi CONTRIBUTING.md per i dettagli.
  • --config=mkl —Supporto per Intel® MKL-DNN .
  • --config=monolithic —Configurazione per una build monolitica e prevalentemente statica.

Compila e installa il pacchetto pip

Opzioni di build Bazel

Per le opzioni di compilazione, fare riferimento al riferimento della riga di comando di Bazel.

Compilare TensorFlow dal codice sorgente può richiedere molta RAM. Se il sistema ha limitazioni di memoria, limita l'utilizzo della RAM di Bazel con: --local_ram_resources=2048 .

I pacchetti ufficiali di TensorFlow sono realizzati con una toolchain Clang conforme allo standard dei pacchetti manylinux2014.

Costruisci il pacchetto

Per creare un pacchetto pip, è necessario specificare il flag --repo_env=WHEEL_NAME . A seconda del nome fornito, il pacchetto verrà creato, ad esempio:

Per creare il pacchetto CPU tensorflow:

bazel build //tensorflow/tools/pip_package:wheel --repo_env=USE_PYWRAP_RULES=1 --repo_env=WHEEL_NAME=tensorflow_cpu

Per creare il pacchetto GPU tensorflow:

bazel build //tensorflow/tools/pip_package:wheel --repo_env=USE_PYWRAP_RULES=1 --repo_env=WHEEL_NAME=tensorflow --config=cuda --config=cuda_wheel

Per creare il pacchetto TPU di tensorflow:

bazel build //tensorflow/tools/pip_package:wheel --repo_env=USE_PYWRAP_RULES=1 --repo_env=WHEEL_NAME=tensorflow_tpu --config=tpu

Per creare un pacchetto notturno, impostare tf_nightly invece di tensorflow , ad esempio per creare un pacchetto notturno CPU:

bazel build //tensorflow/tools/pip_package:wheel --repo_env=USE_PYWRAP_RULES=1 --repo_env=WHEEL_NAME=tf_nightly_cpu

Di conseguenza, la ruota generata sarà posizionata in

bazel-bin/tensorflow/tools/pip_package/wheel_house/

Installa il pacchetto

Il nome del file .whl generato dipende dalla versione di TensorFlow e dalla piattaforma. Utilizza pip install per installare il pacchetto, ad esempio:

pip install bazel-bin/tensorflow/tools/pip_package/wheel_house/tensorflow-version-tags.whl

Build di Docker Linux

Le immagini di sviluppo Docker di TensorFlow rappresentano un modo semplice per configurare un ambiente per la creazione di pacchetti Linux a partire dal codice sorgente. Queste immagini contengono già il codice sorgente e le dipendenze necessarie per la creazione di TensorFlow. Consulta la guida Docker di TensorFlow per le istruzioni di installazione e l' elenco dei tag immagine disponibili .

Solo CPU

L'esempio seguente utilizza l'immagine :devel per creare un pacchetto CPU-only a partire dall'ultimo codice sorgente di TensorFlow. Consulta la guida Docker per i tag TensorFlow -devel disponibili.

Scarica l'ultima immagine di sviluppo e avvia un contenitore Docker che utilizzerai per creare il pacchetto pip :

docker pull tensorflow/tensorflow:devel
docker run -it -w /tensorflow_src -v $PWD:/mnt -e HOST_PERMS="$(id -u):$(id -g)" \
    tensorflow/tensorflow:devel bash

git pull  # within the container, download the latest source code

Il comando docker run sopra riportato avvia una shell nella directory /tensorflow_src , la radice dell'albero sorgente. Monta la directory corrente dell'host nella directory /mnt del container e passa le informazioni dell'utente host al container tramite una variabile d'ambiente (utilizzata per impostare i permessi, operazione che Docker può rendere complicata).

In alternativa, per creare una copia host di TensorFlow all'interno di un contenitore, montare l'albero sorgente dell'host nella directory /tensorflow del contenitore:

docker run -it -w /tensorflow -v /path/to/tensorflow:/tensorflow -v $PWD:/mnt \
    -e HOST_PERMS="\\((id -u):\\)(id -g)" tensorflow/tensorflow:devel bash

Dopo aver configurato l'albero sorgente, compila il pacchetto TensorFlow all'interno dell'ambiente virtuale del contenitore:

  1. Facoltativo: configura la build: questa operazione richiede all'utente di rispondere alle domande sulla configurazione della build.
  2. Compila il pacchetto pip .
  3. Regola i permessi di proprietà del file per l'esterno del contenitore.
./configure  # if necessary


bazel build //tensorflow/tools/pip_package:wheel \
--repo_env=USE_PYWRAP_RULES=1 --repo_env=WHEEL_NAME=tensorflow_cpu --config=opt

`
chown $HOST_PERMS bazel-bin/tensorflow/tools/pip_package/wheel_house/tensorflow-version-tags.whl

Installa e verifica il pacchetto all'interno del contenitore:

pip uninstall tensorflow  # remove current version

pip install bazel-bin/tensorflow/tools/pip_package/wheel_house/tensorflow-version-tags.whl
cd /tmp  # don't import from source directory
python -c "import tensorflow as tf; print(tf.__version__)"

Sulla macchina host, il pacchetto pip TensorFlow si trova nella directory corrente (con autorizzazioni utente host): ./tensorflow- version - tags .whl

Supporto GPU

Docker è il modo più semplice per creare il supporto GPU per TensorFlow, poiché la macchina host richiede solo il driver NVIDIA® (non è necessario installare NVIDIA® CUDA® Toolkit ). Consulta la guida al supporto GPU e la guida TensorFlow Docker per configurare nvidia-docker (solo Linux).

L'esempio seguente scarica l'immagine TensorFlow :devel-gpu e utilizza nvidia-docker per eseguire il contenitore abilitato per GPU. Questa immagine di sviluppo è configurata per creare un pacchetto pip con supporto GPU:

docker pull tensorflow/tensorflow:devel-gpu
docker run --gpus all -it -w /tensorflow -v $PWD:/mnt -e HOST_PERMS="$(id -u):$(id -g)" \
    tensorflow/tensorflow:devel-gpu bash
git pull  # within the container, download the latest source code

Quindi, all'interno dell'ambiente virtuale del contenitore, crea il pacchetto TensorFlow con supporto GPU:

./configure  # if necessary


bazel build //tensorflow/tools/pip_package:wheel \
--repo_env=USE_PYWRAP_RULES=1 --repo_env=WHEEL_NAME=tensorflow --config=cuda \
--config=cuda_wheel --config=opt


chown $HOST_PERMS bazel-bin/tensorflow/tools/pip_package/wheel_house/tensorflow-version-tags.whl

Installa e verifica il pacchetto all'interno del contenitore e controlla la presenza di una GPU:

pip uninstall tensorflow  # remove current version

pip install bazel-bin/tensorflow/tools/pip_package/wheel_house/tensorflow-version-tags.whl
cd /tmp  # don't import from source directory
python -c "import tensorflow as tf; print(\"Num GPUs Available: \", len(tf.config.list_physical_devices('GPU')))"

Configurazioni di build testate

Linux

processore

Versione Versione Python Compilatore Strumenti di costruzione
tensorflow-2.20.0 3.9-3.13 Clang 18.1.8 Bazel 7.4.1
tensorflow-2.19.0 3.9-3.12 Clang 18.1.8 Bazel 6.5.0
tensorflow-2.18.0 3.9-3.12 Clang 17.0.6 Bazel 6.5.0
tensorflow-2.17.0 3.9-3.12 Clang 17.0.6 Bazel 6.5.0
tensorflow-2.16.1 3.9-3.12 Clang 17.0.6 Bazel 6.5.0
tensorflow-2.15.0 3.9-3.11 Clang 16.0.0 Bazel 6.1.0
tensorflow-2.14.0 3.9-3.11 Clang 16.0.0 Bazel 6.1.0
tensorflow-2.13.0 3.8-3.11 Clang 16.0.0 Bazel 5.3.0
tensorflow-2.12.0 3.8-3.11 GCC 9.3.1 Bazel 5.3.0
tensorflow-2.11.0 3.7-3.10 GCC 9.3.1 Bazel 5.3.0
tensorflow-2.10.0 3.7-3.10 GCC 9.3.1 Bazel 5.1.1
tensorflow-2.9.0 3.7-3.10 GCC 9.3.1 Bazel 5.0.0
tensorflow-2.8.0 3.7-3.10 GCC 7.3.1 Bazel 4.2.1
tensorflow-2.7.0 3,7-3,9 GCC 7.3.1 Bazel 3.7.2
tensorflow-2.6.0 3,6-3,9 GCC 7.3.1 Bazel 3.7.2
tensorflow-2.5.0 3,6-3,9 GCC 7.3.1 Bazel 3.7.2
tensorflow-2.4.0 3,6-3,8 GCC 7.3.1 Bazel 3.1.0
tensorflow-2.3.0 3,5-3,8 GCC 7.3.1 Bazel 3.1.0
tensorflow-2.2.0 3,5-3,8 GCC 7.3.1 Bazel 2.0.0
tensorflow-2.1.0 2.7, 3.5-3.7 GCC 7.3.1 Bazel 0.27.1
tensorflow-2.0.0 2.7, 3.3-3.7 GCC 7.3.1 Bazel 0.26.1
tensorflow-1.15.0 2.7, 3.3-3.7 GCC 7.3.1 Bazel 0.26.1
tensorflow-1.14.0 2.7, 3.3-3.7 GCC 4.8 Bazel 0.24.1
tensorflow-1.13.1 2.7, 3.3-3.7 GCC 4.8 Bazel 0.19.2
tensorflow-1.12.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.15.0
tensorflow-1.11.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.15.0
tensorflow-1.10.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.15.0
tensorflow-1.9.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.11.0
tensorflow-1.8.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.10.0
tensorflow-1.7.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.10.0
tensorflow-1.6.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.9.0
tensorflow-1.5.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.8.0
tensorflow-1.4.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.5.4
tensorflow-1.3.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.4.5
tensorflow-1.2.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.4.5
tensorflow-1.1.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.4.2
tensorflow-1.0.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.4.2

GPU

Versione Versione Python Compilatore Strumenti di costruzione cuDNN CUDA
tensorflow-2.20.0 3.9-3.13 Clang 18.1.8 Bazel 7.4.1 9.3 12.5
tensorflow-2.19.0 3.9-3.12 Clang 18.1.8 Bazel 6.5.0 9.3 12.5
tensorflow-2.18.0 3.9-3.12 Clang 17.0.6 Bazel 6.5.0 9.3 12.5
tensorflow-2.17.0 3.9-3.12 Clang 17.0.6 Bazel 6.5.0 8.9 12.3
tensorflow-2.16.1 3.9-3.12 Clang 17.0.6 Bazel 6.5.0 8.9 12.3
tensorflow-2.15.0 3.9-3.11 Clang 16.0.0 Bazel 6.1.0 8.9 12.2
tensorflow-2.14.0 3.9-3.11 Clang 16.0.0 Bazel 6.1.0 8.7 11.8
tensorflow-2.13.0 3.8-3.11 Clang 16.0.0 Bazel 5.3.0 8.6 11.8
tensorflow-2.12.0 3.8-3.11 GCC 9.3.1 Bazel 5.3.0 8.6 11.8
tensorflow-2.11.0 3.7-3.10 GCC 9.3.1 Bazel 5.3.0 8.1 11.2
tensorflow-2.10.0 3.7-3.10 GCC 9.3.1 Bazel 5.1.1 8.1 11.2
tensorflow-2.9.0 3.7-3.10 GCC 9.3.1 Bazel 5.0.0 8.1 11.2
tensorflow-2.8.0 3.7-3.10 GCC 7.3.1 Bazel 4.2.1 8.1 11.2
tensorflow-2.7.0 3,7-3,9 GCC 7.3.1 Bazel 3.7.2 8.1 11.2
tensorflow-2.6.0 3,6-3,9 GCC 7.3.1 Bazel 3.7.2 8.1 11.2
tensorflow-2.5.0 3,6-3,9 GCC 7.3.1 Bazel 3.7.2 8.1 11.2
tensorflow-2.4.0 3,6-3,8 GCC 7.3.1 Bazel 3.1.0 8.0 11.0
tensorflow-2.3.0 3,5-3,8 GCC 7.3.1 Bazel 3.1.0 7.6 10.1
tensorflow-2.2.0 3,5-3,8 GCC 7.3.1 Bazel 2.0.0 7.6 10.1
tensorflow-2.1.0 2.7, 3.5-3.7 GCC 7.3.1 Bazel 0.27.1 7.6 10.1
tensorflow-2.0.0 2.7, 3.3-3.7 GCC 7.3.1 Bazel 0.26.1 7.4 10.0
tensorflow_gpu-1.15.0 2.7, 3.3-3.7 GCC 7.3.1 Bazel 0.26.1 7.4 10.0
tensorflow_gpu-1.14.0 2.7, 3.3-3.7 GCC 4.8 Bazel 0.24.1 7.4 10.0
tensorflow_gpu-1.13.1 2.7, 3.3-3.7 GCC 4.8 Bazel 0.19.2 7.4 10.0
tensorflow_gpu-1.12.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.15.0 7 9
tensorflow_gpu-1.11.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.15.0 7 9
tensorflow_gpu-1.10.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.15.0 7 9
tensorflow_gpu-1.9.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.11.0 7 9
tensorflow_gpu-1.8.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.10.0 7 9
tensorflow_gpu-1.7.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.9.0 7 9
tensorflow_gpu-1.6.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.9.0 7 9
tensorflow_gpu-1.5.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.8.0 7 9
tensorflow_gpu-1.4.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.5.4 6 8
tensorflow_gpu-1.3.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.4.5 6 8
tensorflow_gpu-1.2.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.4.5 5.1 8
tensorflow_gpu-1.1.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.4.2 5.1 8
tensorflow_gpu-1.0.0 2.7, 3.3-3.6 GCC 4.8 Bazel 0.4.2 5.1 8

macOS

processore

Versione Versione Python Compilatore Strumenti di costruzione
tensorflow-2.16.1 3.9-3.12 Clang da Xcode 13.6 Bazel 6.5.0
tensorflow-2.15.0 3.9-3.11 Clang da Xcode 10.15 Bazel 6.1.0
tensorflow-2.14.0 3.9-3.11 Clang da Xcode 10.15 Bazel 6.1.0
tensorflow-2.13.0 3.8-3.11 Clang da Xcode 10.15 Bazel 5.3.0
tensorflow-2.12.0 3.8-3.11 Clang da Xcode 10.15 Bazel 5.3.0
tensorflow-2.11.0 3.7-3.10 Clang da Xcode 10.14 Bazel 5.3.0
tensorflow-2.10.0 3.7-3.10 Clang da Xcode 10.14 Bazel 5.1.1
tensorflow-2.9.0 3.7-3.10 Clang da Xcode 10.14 Bazel 5.0.0
tensorflow-2.8.0 3.7-3.10 Clang da Xcode 10.14 Bazel 4.2.1
tensorflow-2.7.0 3,7-3,9 Clang da Xcode 10.11 Bazel 3.7.2
tensorflow-2.6.0 3,6-3,9 Clang da Xcode 10.11 Bazel 3.7.2
tensorflow-2.5.0 3,6-3,9 Clang da Xcode 10.11 Bazel 3.7.2
tensorflow-2.4.0 3,6-3,8 Clang da Xcode 10.3 Bazel 3.1.0
tensorflow-2.3.0 3,5-3,8 Clang da Xcode 10.1 Bazel 3.1.0
tensorflow-2.2.0 3,5-3,8 Clang da Xcode 10.1 Bazel 2.0.0
tensorflow-2.1.0 2.7, 3.5-3.7 Clang da Xcode 10.1 Bazel 0.27.1
tensorflow-2.0.0 2.7, 3.5-3.7 Clang da Xcode 10.1 Bazel 0.27.1
tensorflow-2.0.0 2.7, 3.3-3.7 Clang da Xcode 10.1 Bazel 0.26.1
tensorflow-1.15.0 2.7, 3.3-3.7 Clang da Xcode 10.1 Bazel 0.26.1
tensorflow-1.14.0 2.7, 3.3-3.7 Clang da Xcode Bazel 0.24.1
tensorflow-1.13.1 2.7, 3.3-3.7 Clang da Xcode Bazel 0.19.2
tensorflow-1.12.0 2.7, 3.3-3.6 Clang da Xcode Bazel 0.15.0
tensorflow-1.11.0 2.7, 3.3-3.6 Clang da Xcode Bazel 0.15.0
tensorflow-1.10.0 2.7, 3.3-3.6 Clang da Xcode Bazel 0.15.0
tensorflow-1.9.0 2.7, 3.3-3.6 Clang da Xcode Bazel 0.11.0
tensorflow-1.8.0 2.7, 3.3-3.6 Clang da Xcode Bazel 0.10.1
tensorflow-1.7.0 2.7, 3.3-3.6 Clang da Xcode Bazel 0.10.1
tensorflow-1.6.0 2.7, 3.3-3.6 Clang da Xcode Bazel 0.8.1
tensorflow-1.5.0 2.7, 3.3-3.6 Clang da Xcode Bazel 0.8.1
tensorflow-1.4.0 2.7, 3.3-3.6 Clang da Xcode Bazel 0.5.4
tensorflow-1.3.0 2.7, 3.3-3.6 Clang da Xcode Bazel 0.4.5
tensorflow-1.2.0 2.7, 3.3-3.6 Clang da Xcode Bazel 0.4.5
tensorflow-1.1.0 2.7, 3.3-3.6 Clang da Xcode Bazel 0.4.2
tensorflow-1.0.0 2.7, 3.3-3.6 Clang da Xcode Bazel 0.4.2

GPU

Versione Versione Python Compilatore Strumenti di costruzione cuDNN CUDA
tensorflow_gpu-1.1.0 2.7, 3.3-3.6 Clang da Xcode Bazel 0.4.2 5.1 8
tensorflow_gpu-1.0.0 2.7, 3.3-3.6 Clang da Xcode Bazel 0.4.2 5.1 8