Activer PyTorch avec DirectML sur WSL 2
PyTorch avec DirectML offre aux développeurs un moyen facile d’essayer les modèles d’IA les plus récents et les plus performants sur leur ordinateur Windows. Vous pouvez télécharger PyTorch avec DirectML en installant le package PyPi torch-directml. Une fois configuré, vous pouvez commencer avec nos échantillons ou utiliser l’AI Toolkit pour VS Code.
Le package torch-directml du sous-système Windows pour Linux (WSL) 2 fonctionne à partir de Windows 11 (version 22000 ou supérieur). Vous pouvez vérifier votre numéro de version de build en exécutant winver
via la commande Run (touche de logo Windows + touche R).
Vérifiez que le pilote de GPU le plus récent est installé. Sélectionnez Rechercher les mises à jour dans la section Windows Update de l’application Paramètres.
Pour configurer Sous-système Windows pour Linux (WSL) 2, suivez les instructions du Installer WLS.
Installez ensuite le pilote GUI/interface utilisateur graphique WSL en suivant les instructions dans le fichier README.md
, disponible dans Référentiel GitHub microsoft/wslg.
Nous vous recommandons de configurer un environnement Python virtuel à l’intérieur de WSL 2. Il existe de nombreux outils que vous pouvez utiliser pour configurer un environnement Python virtuel. Dans le cadre de cette rubrique, nous allons utiliser Miniconda d’Anaconda. Le reste de ce guide d’installation part du principe que vous utilisez un environnement Miniconda.
Installez Miniconda en suivant les instructions d’installateur Linux sur le site d’Anaconda ou en exécutant les commandes suivantes dans WSL 2.
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh
Une fois Miniconda installé, créez un environnement Python nommé pytdml et activez-le à l’aide des commandes suivantes :
conda create --name pytdml -y
conda activate pytdml
Notes
Le package torch-directml prend en charge jusqu’à PyTorch 2.2.
Tout ce dont vous avez besoin pour démarrer est d’installer la dernière version de torch-directml en exécutant la commande suivante :
pip install torch-directml
Une fois que vous avez installé le package torch-directml, vous pouvez vérifier qu’il s’exécute correctement en ajoutant deux tenseurs. Commencez par démarrer une session Python interactive et importez Torch avec les lignes suivantes :
import torch
import torch_directml
dml = torch_directml.device()
La version actuelle de torch-directml est mappée au back-end Torch « PrivateUse1 ». L’API torch_directml.device() est un wrapper pratique pour envoyer vos tenseurs à l’appareil DirectML.
Avec l’appareil DirectML créé, vous pouvez maintenant définir deux tenseurs simples : un tenseur contenant un 1 et un autre contenant un 2. Placez les tenseurs sur l’appareil « dml ».
tensor1 = torch.tensor([1]).to(dml) # Note that dml is a variable, not a string!
tensor2 = torch.tensor([2]).to(dml)
Ajoutez les tenseurs ensemble et imprimez les résultats.
dml_algebra = tensor1 + tensor2
dml_algebra.item()
Vous devez voir le nombre 3 en sortie, comme dans l’exemple ci-dessous.
>>> import torch
>>> tensor1 = torch.tensor([1]).to(dml)
>>> tensor2 = torch.tensor([2]).to(dml)
>>> dml_algebra = tensor1 + tensor2
>>> dml_algebra.item()
3
Consultez nos échantillons pour voir plus d’utilisations de PyTorch avec DirectML. Si vous rencontrez des problèmes ou si vous avez des retours à nous faire sur le package PyTorch avec DirectML, contactez notre équipe ici.