Créez un package pip TensorFlow à partir de la source et installez-le sur Windows.
Configuration pour Windows
Installez les outils de build suivants pour configurer votre environnement de développement Windows.
Installer Python et les dépendances du package TensorFlow
Installez une version Python 3.9+ 64 bits pour Windows . Sélectionnez pip comme fonctionnalité facultative et ajoutez-le à votre variable d'environnement %PATH%
.
Installez les dépendances du package pip TensorFlow :
pip3 install -U pip
pip3 install -U six numpy wheel packaging
pip3 install -U keras_preprocessing --no-deps
Les dépendances sont répertoriées dans le fichier setup.py
sous REQUIRED_PACKAGES
.
Installer Bazel
Installez Bazel , l'outil de build utilisé pour compiler TensorFlow. Pour la version Bazel, consultez les configurations de build testées pour Windows. Configurez Bazel pour construire C++ .
Ajoutez l'emplacement de l'exécutable Bazel à votre variable d'environnement %PATH%
.
Installer MSYS2
Installez MSYS2 pour les outils bin nécessaires à la création de TensorFlow. Si MSYS2 est installé sur C:\msys64
, ajoutez C:\msys64\usr\bin
à votre variable d'environnement %PATH%
. Ensuite, en utilisant cmd.exe
, exécutez :
pacman -Syu (requires a console restart) pacman -S git patch unzip pacman -S git patch unzip rsync
Installer les outils de construction Visual C++ 2022
Installez les outils de build Visual C++ 2022 . Ceci est fourni avec Visual Studio Community 2022 mais peut être installé séparément :
- Accédez aux téléchargements de Visual Studio ,
- Sélectionnez Outils pour Visual Studio ou Autres outils, Framework et redistribuables ,
- Téléchargez et installez :
- Créer des outils pour Visual Studio 2022
- Redistribuables Microsoft Visual C++ pour Visual Studio 2022
Installer LLVM
- Accédez aux téléchargements LLVM ,
- Téléchargez et installez LLVM compatible Windows dans C:/Program Files/LLVM, par exemple LLVM-17.0.6-win64.exe
Installer la prise en charge du GPU (facultatif)
Consultez le guide de prise en charge du GPU Windows pour installer les pilotes et les logiciels supplémentaires requis pour exécuter TensorFlow sur un GPU.
Téléchargez le code source de TensorFlow
Utilisez Git pour cloner le référentiel TensorFlow ( git
est installé avec MSYS2) :
git clone https://github.com/tensorflow/tensorflow.git
cd tensorflow
Le dépôt est par défaut la branche de développement master
. Vous pouvez également consulter une branche de publication pour construire :
git checkout branch_name # r1.9, r1.10, etc.
Facultatif : configuration des variables environnementales
Exécutez les commandes suivantes avant d'exécuter la commande build pour éviter les problèmes de création de packages : (Si les commandes ci-dessous ont été configurées lors de l'installation des packages, veuillez les ignorer). Exécutez set
pour vérifier si tous les chemins ont été définis correctement, exécutez echo %Environmental Variable%
par exemple, echo %BAZEL_VC%
pour vérifier le chemin configuré pour une variable d'environnement spécifique
Problème de configuration du chemin Python tensorflow:issue#59943 , tensorflow:issue#9436 , tensorflow:issue#60083
set PATH=path/to/python;%PATH% # [e.g. (C:/Python311)] set PATH=path/to/python/Scripts;%PATH% # [e.g. (C:/Python311/Scripts)] set PYTHON_BIN_PATH=path/to/python_virtualenv/Scripts/python.exe set PYTHON_LIB_PATH=path/to/python virtualenv/lib/site-packages set PYTHON_DIRECTORY=path/to/python_virtualenv/Scripts
Problème de configuration du chemin Bazel/MSVC/CLANG tensorflow : issue#54578
set BAZEL_SH=C:/msys64/usr/bin/bash.exe set BAZEL_VS=C:/Program Files/Microsoft Visual Studio/2022/BuildTools set BAZEL_VC=C:/Program Files/Microsoft Visual Studio/2022/BuildTools/VC set Bazel_LLVM=C:/Program Files/LLVM (explicitly tell Bazel where LLVM is installed by BAZEL_LLVM, needed while using CLANG) set PATH=C:/Program Files/LLVM/bin;%PATH% (Optional, needed while using CLANG as Compiler)
Facultatif : Configurer la build
Les builds TensorFlow sont configurées par le fichier .bazelrc
dans le répertoire racine du référentiel. Les scripts ./configure
ou ./configure.py
peuvent être utilisés pour ajuster les paramètres communs.
Si vous devez modifier la configuration, exécutez le script ./configure
à partir du répertoire racine du référentiel.
python ./configure.py
Ce script vous demande l'emplacement des dépendances TensorFlow et demande des options de configuration de build supplémentaires (indicateurs du compilateur, par exemple). Ce qui suit montre un exemple d'exécution de python ./configure.py
(votre session peut différer) :
Construire et installer le package pip
Le package pip est construit en deux étapes. Une commande bazel build
crée un programme "package-builder". Vous exécutez ensuite le package-builder pour créer le package.
Construire le générateur de packages
tensorflow:master repo a été mis à jour pour construire 2.x par défaut. Installez Bazel et utilisez bazel build
pour créer le générateur de packages TensorFlow.
bazel build //tensorflow/tools/pip_package:wheel
CPU uniquement
Utilisez bazel
pour créer le générateur de packages TensorFlow avec une prise en charge du processeur uniquement :
Construire avec MSVC
bazel build --config=opt --repo_env=TF_PYTHON_VERSION=3.11 //tensorflow/tools/pip_package:wheel --repo_env=WHEEL_NAME=tensorflow_cpu
Construire avec CLANG
Utilisez --config= win_clang
pour créer TenorFlow avec le compilateur CLANG :
bazel build --config=win_clang --repo_env=TF_PYTHON_VERSION=3.11 //tensorflow/tools/pip_package:wheel --repo_env=WHEEL_NAME=tensorflow_cpu
Prise en charge des GPU
Pour créer le générateur de packages TensorFlow avec prise en charge GPU :
bazel build --config=opt --config=cuda --define=no_tensorflow_py_deps=true //tensorflow/tools/pip_package:build_pip_package
Commandes pour nettoyer le cache Bazel pour résoudre les erreurs dues à des données mises en cache invalides ou obsolètes, Bazel Clean avec l'indicateur --expunge supprime les fichiers définitivement
bazel clean bazel clean --expunge
Options de construction de Bazel
Utilisez cette option lors de la construction pour éviter les problèmes de création de package : tensorflow:issue#22390
--define=no_tensorflow_py_deps=true
Consultez la référence de la ligne de commande Bazel pour les options de construction .
Construire TensorFlow à partir des sources peut utiliser beaucoup de RAM. Si votre système est limité en mémoire, limitez l'utilisation de la RAM de Bazel avec : --local_ram_resources=2048
.
Si vous construisez avec la prise en charge du GPU, ajoutez --copt=-nvcc_options=disable-warnings
pour supprimer les messages d'avertissement nvcc.
Construire le package
Pour créer un package pip, vous devez spécifier l'indicateur --repo_env=WHEEL_NAME. En fonction du nom fourni, le package sera créé. Par exemple:
Pour créer le package CPU Tensorflow :
bazel build //tensorflow/tools/pip_package:wheel --repo_env=WHEEL_NAME=tensorflow_cpu
Pour créer un package nocturne, définissez tf_nightly
au lieu de tensorflow
, par exemple pour créer un package CPU nocturne :
bazel build //tensorflow/tools/pip_package:wheel --repo_env=WHEEL_NAME=tf_nightly_cpu
En conséquence, la roue générée sera située dans
bazel-bin/tensorflow/tools/pip_package/wheel_house/
Installer le paquet
Le nom de fichier du fichier .whl
généré dépend de la version de TensorFlow et de votre plate-forme. Utilisez pip install
pour installer le package, par exemple :
pip install bazel-bin/tensorflow/tools/pip_package/wheel_house/tensorflow-version-tags.whl
Construire à l'aide du shell MSYS
TensorFlow peut également être créé à l'aide du shell MSYS. Apportez les modifications répertoriées ci-dessous, puis suivez les instructions précédentes pour la ligne de commande native de Windows ( cmd.exe
).
Désactiver la conversion de chemin MSYS
MSYS convertit automatiquement les arguments qui ressemblent à des chemins Unix en chemins Windows, et cela ne fonctionne pas avec bazel
. (L'étiquette //path/to:bin
est considérée comme un chemin absolu Unix puisqu'elle commence par une barre oblique.)
export MSYS_NO_PATHCONV=1
export MSYS2_ARG_CONV_EXCL="*"
Définissez votre CHEMIN
Ajoutez les répertoires d'installation Bazel et Python à votre variable d'environnement $PATH
. Si Bazel est installé sur C:\tools\bazel.exe
et Python sur C:\Python\python.exe
, définissez votre PATH
avec :
# Use Unix-style with ':' as separatorexport PATH="/c/tools:$PATH"
export PATH="/c/path/to/Python:$PATH"
Pour la prise en charge GPU, ajoutez les répertoires bin CUDA et cuDNN à votre $PATH
:
export PATH="/c/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.0/bin:$PATH"
export PATH="/c/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.0/extras/CUPTI/libx64:$PATH"
export PATH="/c/tools/cuda/bin:$PATH"
Configurations de build testées
Processeur
Version | Version Python | Compilateur | Construire des outils |
---|---|---|---|
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 | MSVC 2019 | Bazel 6.1.0 |
tensorflow-2.14.0 | 3.9-3.11 | MSVC 2019 | Bazel 6.1.0 |
tensorflow-2.12.0 | 3.8-3.11 | MSVC 2019 | Bazel 5.3.0 |
tensorflow-2.11.0 | 3.7-3.10 | MSVC 2019 | Bazel 5.3.0 |
tensorflow-2.10.0 | 3.7-3.10 | MSVC 2019 | Bazel 5.1.1 |
tensorflow-2.9.0 | 3.7-3.10 | MSVC 2019 | Bazel 5.0.0 |
tensorflow-2.8.0 | 3.7-3.10 | MSVC 2019 | Bazel 4.2.1 |
tensorflow-2.7.0 | 3,7-3,9 | MSVC 2019 | Bazel 3.7.2 |
tensorflow-2.6.0 | 3.6-3.9 | MSVC 2019 | Bazel 3.7.2 |
tensorflow-2.5.0 | 3.6-3.9 | MSVC 2019 | Bazel 3.7.2 |
tensorflow-2.4.0 | 3,6-3,8 | MSVC 2019 | Bazel 3.1.0 |
tensorflow-2.3.0 | 3,5-3,8 | MSVC 2019 | Bazel 3.1.0 |
tensorflow-2.2.0 | 3,5-3,8 | MSVC 2019 | Bazel 2.0.0 |
tensorflow-2.1.0 | 3,5-3,7 | MSVC 2019 | Bazel 0.27.1-0.29.1 |
tensorflow-2.0.0 | 3,5-3,7 | MSVC 2017 | Bazel 0.26.1 |
tensorflow-1.15.0 | 3,5-3,7 | MSVC 2017 | Bazel 0.26.1 |
tensorflow-1.14.0 | 3,5-3,7 | MSVC 2017 | Bazel 0.24.1-0.25.2 |
tensorflow-1.13.0 | 3,5-3,7 | MSVC 2015 mise à jour 3 | Bazel 0.19.0-0.21.0 |
tensorflow-1.12.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Bazel 0.15.0 |
tensorflow-1.11.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Bazel 0.15.0 |
tensorflow-1.10.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.9.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.8.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.7.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.6.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.5.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.4.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.3.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.2.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.1.0 | 3.5 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.0.0 | 3.5 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
GPU
Version | Version Python | Compilateur | Construire des outils | cuDNN | CUDA |
---|---|---|---|---|---|
tensorflow_gpu-2.10.0 | 3.7-3.10 | MSVC 2019 | Bazel 5.1.1 | 8.1 | 11.2 |
tensorflow_gpu-2.9.0 | 3.7-3.10 | MSVC 2019 | Bazel 5.0.0 | 8.1 | 11.2 |
tensorflow_gpu-2.8.0 | 3.7-3.10 | MSVC 2019 | Bazel 4.2.1 | 8.1 | 11.2 |
tensorflow_gpu-2.7.0 | 3,7-3,9 | MSVC 2019 | Bazel 3.7.2 | 8.1 | 11.2 |
tensorflow_gpu-2.6.0 | 3.6-3.9 | MSVC 2019 | Bazel 3.7.2 | 8.1 | 11.2 |
tensorflow_gpu-2.5.0 | 3.6-3.9 | MSVC 2019 | Bazel 3.7.2 | 8.1 | 11.2 |
tensorflow_gpu-2.4.0 | 3,6-3,8 | MSVC 2019 | Bazel 3.1.0 | 8.0 | 11.0 |
tensorflow_gpu-2.3.0 | 3,5-3,8 | MSVC 2019 | Bazel 3.1.0 | 7.6 | 10.1 |
tensorflow_gpu-2.2.0 | 3,5-3,8 | MSVC 2019 | Bazel 2.0.0 | 7.6 | 10.1 |
tensorflow_gpu-2.1.0 | 3,5-3,7 | MSVC 2019 | Bazel 0.27.1-0.29.1 | 7.6 | 10.1 |
tensorflow_gpu-2.0.0 | 3,5-3,7 | MSVC 2017 | Bazel 0.26.1 | 7.4 | 10 |
tensorflow_gpu-1.15.0 | 3,5-3,7 | MSVC 2017 | Bazel 0.26.1 | 7.4 | 10 |
tensorflow_gpu-1.14.0 | 3,5-3,7 | MSVC 2017 | Bazel 0.24.1-0.25.2 | 7.4 | 10 |
tensorflow_gpu-1.13.0 | 3,5-3,7 | MSVC 2015 mise à jour 3 | Bazel 0.19.0-0.21.0 | 7.4 | 10 |
tensorflow_gpu-1.12.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Bazel 0.15.0 | 7.2 | 9.0 |
tensorflow_gpu-1.11.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Bazel 0.15.0 | 7 | 9 |
tensorflow_gpu-1.10.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.9.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.8.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.7.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.6.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.5.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.4.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 6 | 8 |
tensorflow_gpu-1.3.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 6 | 8 |
tensorflow_gpu-1.2.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 5.1 | 8 |
tensorflow_gpu-1.1.0 | 3.5 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 5.1 | 8 |
tensorflow_gpu-1.0.0 | 3.5 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 5.1 | 8 |
Créez un package pip TensorFlow à partir de la source et installez-le sur Windows.
Configuration pour Windows
Installez les outils de build suivants pour configurer votre environnement de développement Windows.
Installer Python et les dépendances du package TensorFlow
Installez une version Python 3.9+ 64 bits pour Windows . Sélectionnez pip comme fonctionnalité facultative et ajoutez-le à votre variable d'environnement %PATH%
.
Installez les dépendances du package pip TensorFlow :
pip3 install -U pip
pip3 install -U six numpy wheel packaging
pip3 install -U keras_preprocessing --no-deps
Les dépendances sont répertoriées dans le fichier setup.py
sous REQUIRED_PACKAGES
.
Installer Bazel
Installez Bazel , l'outil de build utilisé pour compiler TensorFlow. Pour la version Bazel, consultez les configurations de build testées pour Windows. Configurez Bazel pour construire C++ .
Ajoutez l'emplacement de l'exécutable Bazel à votre variable d'environnement %PATH%
.
Installer MSYS2
Installez MSYS2 pour les outils bin nécessaires à la création de TensorFlow. Si MSYS2 est installé sur C:\msys64
, ajoutez C:\msys64\usr\bin
à votre variable d'environnement %PATH%
. Ensuite, en utilisant cmd.exe
, exécutez :
pacman -Syu (requires a console restart) pacman -S git patch unzip pacman -S git patch unzip rsync
Installer les outils de construction Visual C++ 2022
Installez les outils de build Visual C++ 2022 . Ceci est fourni avec Visual Studio Community 2022 mais peut être installé séparément :
- Accédez aux téléchargements de Visual Studio ,
- Sélectionnez Outils pour Visual Studio ou Autres outils, Framework et redistribuables ,
- Téléchargez et installez :
- Créer des outils pour Visual Studio 2022
- Redistribuables Microsoft Visual C++ pour Visual Studio 2022
Installer LLVM
- Accédez aux téléchargements LLVM ,
- Téléchargez et installez LLVM compatible Windows dans C:/Program Files/LLVM, par exemple LLVM-17.0.6-win64.exe
Installer la prise en charge du GPU (facultatif)
Consultez le guide de prise en charge du GPU Windows pour installer les pilotes et les logiciels supplémentaires requis pour exécuter TensorFlow sur un GPU.
Téléchargez le code source de TensorFlow
Utilisez Git pour cloner le référentiel TensorFlow ( git
est installé avec MSYS2) :
git clone https://github.com/tensorflow/tensorflow.git
cd tensorflow
Le dépôt est par défaut la branche de développement master
. Vous pouvez également consulter une branche de publication pour construire :
git checkout branch_name # r1.9, r1.10, etc.
Facultatif : configuration des variables environnementales
Exécutez les commandes suivantes avant d'exécuter la commande build pour éviter les problèmes de création de packages : (Si les commandes ci-dessous ont été configurées lors de l'installation des packages, veuillez les ignorer). Exécutez set
pour vérifier si tous les chemins ont été définis correctement, exécutez echo %Environmental Variable%
par exemple, echo %BAZEL_VC%
pour vérifier le chemin configuré pour une variable d'environnement spécifique
Problème de configuration du chemin Python tensorflow:issue#59943 , tensorflow:issue#9436 , tensorflow:issue#60083
set PATH=path/to/python;%PATH% # [e.g. (C:/Python311)] set PATH=path/to/python/Scripts;%PATH% # [e.g. (C:/Python311/Scripts)] set PYTHON_BIN_PATH=path/to/python_virtualenv/Scripts/python.exe set PYTHON_LIB_PATH=path/to/python virtualenv/lib/site-packages set PYTHON_DIRECTORY=path/to/python_virtualenv/Scripts
Problème de configuration du chemin Bazel/MSVC/CLANG tensorflow : issue#54578
set BAZEL_SH=C:/msys64/usr/bin/bash.exe set BAZEL_VS=C:/Program Files/Microsoft Visual Studio/2022/BuildTools set BAZEL_VC=C:/Program Files/Microsoft Visual Studio/2022/BuildTools/VC set Bazel_LLVM=C:/Program Files/LLVM (explicitly tell Bazel where LLVM is installed by BAZEL_LLVM, needed while using CLANG) set PATH=C:/Program Files/LLVM/bin;%PATH% (Optional, needed while using CLANG as Compiler)
Facultatif : Configurer la build
Les builds TensorFlow sont configurées par le fichier .bazelrc
dans le répertoire racine du référentiel. Les scripts ./configure
ou ./configure.py
peuvent être utilisés pour ajuster les paramètres communs.
Si vous devez modifier la configuration, exécutez le script ./configure
à partir du répertoire racine du référentiel.
python ./configure.py
Ce script vous demande l'emplacement des dépendances TensorFlow et demande des options de configuration de build supplémentaires (indicateurs du compilateur, par exemple). Ce qui suit montre un exemple d'exécution de python ./configure.py
(votre session peut différer) :
Construire et installer le package pip
Le package pip est construit en deux étapes. Une commande bazel build
crée un programme "package-builder". Vous exécutez ensuite le package-builder pour créer le package.
Construire le générateur de packages
tensorflow:master repo a été mis à jour pour construire 2.x par défaut. Installez Bazel et utilisez bazel build
pour créer le générateur de packages TensorFlow.
bazel build //tensorflow/tools/pip_package:wheel
CPU uniquement
Utilisez bazel
pour créer le générateur de packages TensorFlow avec une prise en charge du processeur uniquement :
Construire avec MSVC
bazel build --config=opt --repo_env=TF_PYTHON_VERSION=3.11 //tensorflow/tools/pip_package:wheel --repo_env=WHEEL_NAME=tensorflow_cpu
Construire avec CLANG
Utilisez --config= win_clang
pour créer TenorFlow avec le compilateur CLANG :
bazel build --config=win_clang --repo_env=TF_PYTHON_VERSION=3.11 //tensorflow/tools/pip_package:wheel --repo_env=WHEEL_NAME=tensorflow_cpu
Prise en charge des GPU
Pour créer le générateur de packages TensorFlow avec prise en charge GPU :
bazel build --config=opt --config=cuda --define=no_tensorflow_py_deps=true //tensorflow/tools/pip_package:build_pip_package
Commandes pour nettoyer le cache Bazel pour résoudre les erreurs dues à des données mises en cache invalides ou obsolètes, Bazel Clean avec l'indicateur --expunge supprime les fichiers définitivement
bazel clean bazel clean --expunge
Options de construction de Bazel
Utilisez cette option lors de la construction pour éviter les problèmes de création de package : tensorflow:issue#22390
--define=no_tensorflow_py_deps=true
Consultez la référence de ligne de commande Bazel pour les options de construction .
Construire TensorFlow à partir des sources peut utiliser beaucoup de RAM. Si votre système est limité en mémoire, limitez l'utilisation de la RAM de Bazel avec : --local_ram_resources=2048
.
Si vous construisez avec la prise en charge du GPU, ajoutez --copt=-nvcc_options=disable-warnings
pour supprimer les messages d'avertissement nvcc.
Construire le package
Pour créer un package pip, vous devez spécifier l'indicateur --repo_env=WHEEL_NAME. En fonction du nom fourni, le package sera créé. Par exemple:
Pour créer le package CPU Tensorflow :
bazel build //tensorflow/tools/pip_package:wheel --repo_env=WHEEL_NAME=tensorflow_cpu
Pour créer un package nocturne, définissez tf_nightly
au lieu de tensorflow
, par exemple pour créer un package CPU nocturne :
bazel build //tensorflow/tools/pip_package:wheel --repo_env=WHEEL_NAME=tf_nightly_cpu
En conséquence, la roue générée sera située dans
bazel-bin/tensorflow/tools/pip_package/wheel_house/
Installer le paquet
Le nom de fichier du fichier .whl
généré dépend de la version de TensorFlow et de votre plate-forme. Utilisez pip install
pour installer le package, par exemple :
pip install bazel-bin/tensorflow/tools/pip_package/wheel_house/tensorflow-version-tags.whl
Construire à l'aide du shell MSYS
TensorFlow peut également être créé à l'aide du shell MSYS. Apportez les modifications répertoriées ci-dessous, puis suivez les instructions précédentes pour la ligne de commande native de Windows ( cmd.exe
).
Désactiver la conversion de chemin MSYS
MSYS convertit automatiquement les arguments qui ressemblent à des chemins Unix en chemins Windows, et cela ne fonctionne pas avec bazel
. (L'étiquette //path/to:bin
est considérée comme un chemin absolu Unix puisqu'elle commence par une barre oblique.)
export MSYS_NO_PATHCONV=1
export MSYS2_ARG_CONV_EXCL="*"
Définissez votre CHEMIN
Ajoutez les répertoires d'installation Bazel et Python à votre variable d'environnement $PATH
. Si Bazel est installé sur C:\tools\bazel.exe
et Python sur C:\Python\python.exe
, définissez votre PATH
avec :
# Use Unix-style with ':' as separatorexport PATH="/c/tools:$PATH"
export PATH="/c/path/to/Python:$PATH"
Pour la prise en charge GPU, ajoutez les répertoires bin CUDA et cuDNN à votre $PATH
:
export PATH="/c/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.0/bin:$PATH"
export PATH="/c/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.0/extras/CUPTI/libx64:$PATH"
export PATH="/c/tools/cuda/bin:$PATH"
Configurations de build testées
Processeur
Version | Version Python | Compilateur | Construire des outils |
---|---|---|---|
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 | MSVC 2019 | Bazel 6.1.0 |
tensorflow-2.14.0 | 3.9-3.11 | MSVC 2019 | Bazel 6.1.0 |
tensorflow-2.12.0 | 3.8-3.11 | MSVC 2019 | Bazel 5.3.0 |
tensorflow-2.11.0 | 3.7-3.10 | MSVC 2019 | Bazel 5.3.0 |
tensorflow-2.10.0 | 3.7-3.10 | MSVC 2019 | Bazel 5.1.1 |
tensorflow-2.9.0 | 3.7-3.10 | MSVC 2019 | Bazel 5.0.0 |
tensorflow-2.8.0 | 3.7-3.10 | MSVC 2019 | Bazel 4.2.1 |
tensorflow-2.7.0 | 3,7-3,9 | MSVC 2019 | Bazel 3.7.2 |
tensorflow-2.6.0 | 3.6-3.9 | MSVC 2019 | Bazel 3.7.2 |
tensorflow-2.5.0 | 3.6-3.9 | MSVC 2019 | Bazel 3.7.2 |
tensorflow-2.4.0 | 3,6-3,8 | MSVC 2019 | Bazel 3.1.0 |
tensorflow-2.3.0 | 3,5-3,8 | MSVC 2019 | Bazel 3.1.0 |
tensorflow-2.2.0 | 3,5-3,8 | MSVC 2019 | Bazel 2.0.0 |
tensorflow-2.1.0 | 3,5-3,7 | MSVC 2019 | Bazel 0.27.1-0.29.1 |
tensorflow-2.0.0 | 3,5-3,7 | MSVC 2017 | Bazel 0.26.1 |
tensorflow-1.15.0 | 3,5-3,7 | MSVC 2017 | Bazel 0.26.1 |
tensorflow-1.14.0 | 3,5-3,7 | MSVC 2017 | Bazel 0.24.1-0.25.2 |
tensorflow-1.13.0 | 3,5-3,7 | MSVC 2015 mise à jour 3 | Bazel 0.19.0-0.21.0 |
tensorflow-1.12.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Bazel 0.15.0 |
tensorflow-1.11.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Bazel 0.15.0 |
tensorflow-1.10.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.9.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.8.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.7.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.6.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.5.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.4.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.3.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.2.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.1.0 | 3.5 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
tensorflow-1.0.0 | 3.5 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 |
GPU
Version | Version Python | Compilateur | Construire des outils | cuDNN | CUDA |
---|---|---|---|---|---|
tensorflow_gpu-2.10.0 | 3.7-3.10 | MSVC 2019 | Bazel 5.1.1 | 8.1 | 11.2 |
tensorflow_gpu-2.9.0 | 3.7-3.10 | MSVC 2019 | Bazel 5.0.0 | 8.1 | 11.2 |
tensorflow_gpu-2.8.0 | 3.7-3.10 | MSVC 2019 | Bazel 4.2.1 | 8.1 | 11.2 |
tensorflow_gpu-2.7.0 | 3,7-3,9 | MSVC 2019 | Bazel 3.7.2 | 8.1 | 11.2 |
tensorflow_gpu-2.6.0 | 3.6-3.9 | MSVC 2019 | Bazel 3.7.2 | 8.1 | 11.2 |
tensorflow_gpu-2.5.0 | 3.6-3.9 | MSVC 2019 | Bazel 3.7.2 | 8.1 | 11.2 |
tensorflow_gpu-2.4.0 | 3,6-3,8 | MSVC 2019 | Bazel 3.1.0 | 8.0 | 11.0 |
tensorflow_gpu-2.3.0 | 3,5-3,8 | MSVC 2019 | Bazel 3.1.0 | 7.6 | 10.1 |
tensorflow_gpu-2.2.0 | 3,5-3,8 | MSVC 2019 | Bazel 2.0.0 | 7.6 | 10.1 |
tensorflow_gpu-2.1.0 | 3,5-3,7 | MSVC 2019 | Bazel 0.27.1-0.29.1 | 7.6 | 10.1 |
tensorflow_gpu-2.0.0 | 3,5-3,7 | MSVC 2017 | Bazel 0.26.1 | 7.4 | 10 |
tensorflow_gpu-1.15.0 | 3,5-3,7 | MSVC 2017 | Bazel 0.26.1 | 7.4 | 10 |
tensorflow_gpu-1.14.0 | 3,5-3,7 | MSVC 2017 | Bazel 0.24.1-0.25.2 | 7.4 | 10 |
tensorflow_gpu-1.13.0 | 3,5-3,7 | MSVC 2015 mise à jour 3 | Bazel 0.19.0-0.21.0 | 7.4 | 10 |
tensorflow_gpu-1.12.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Bazel 0.15.0 | 7.2 | 9.0 |
tensorflow_gpu-1.11.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Bazel 0.15.0 | 7 | 9 |
tensorflow_gpu-1.10.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.9.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.8.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.7.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.6.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.5.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 7 | 9 |
tensorflow_gpu-1.4.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 6 | 8 |
tensorflow_gpu-1.3.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 6 | 8 |
tensorflow_gpu-1.2.0 | 3,5-3,6 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 5.1 | 8 |
tensorflow_gpu-1.1.0 | 3.5 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 5.1 | 8 |
tensorflow_gpu-1.0.0 | 3.5 | MSVC 2015 mise à jour 3 | Cmake v3.6.3 | 5.1 | 8 |