Compartir a través de


Habilitación de PyTorch con DirectML en Windows

PyTorch con DirectML proporciona una manera fácil de usar para que los desarrolladores prueben los modelos de IA más recientes y mejores en su máquina Windows. Puede descargar PyTorch con DirectML instalando el paquete de PyPi torch-directml. Una vez configurado, puede empezar con nuestras muestras o usar el AI Toolkit para VS Code.

Comprobación de la versión de Windows

El paquete torch-directml en Windows nativo funciona a partir de Windows 10, versión 1709 (compilación 16299 o posterior). Para comprobar el número de versión de compilación, ejecute winver mediante el comando Run (tecla del logo de Windows + R).

Comprobación de las actualizaciones del controlador de GPU

Asegúrese de tener los controladores de GPU más recientes instalados. Seleccione Buscar actualizaciones en la sección Windows Update de la aplicación Configuración.

Configuración de Torch-DirectML

Se recomienda configurar un entorno de Python virtual en Windows. Existen muchas herramientas que puede usar para configurar un entorno de Python virtual; en estas instrucciones, usaremos la característica Miniconda de Anaconda. En el resto de esta configuración se da por supuesto que usa un entorno de Miniconda.

Configuración del entorno de Python

Descargue e instale el instalador de Windows Miniconda en el sistema. Tiene instrucciones adicionales para la configuración en el sitio de Anaconda. Una vez instalado Miniconda, cree un entorno mediante Python denominado pytdml y actívelo mediante los siguientes comandos.

conda create --name pytdml -y
conda activate pytdml

Instalación de PyTorch y Torch-DirectML

Nota:

El paquete torch-directml admite hasta PyTorch 2.2

Para empezar solo tiene que instalar la versión más reciente de torch-directml mediante la ejecución del siguiente comando:

pip install torch-directml

Comprobación y creación de dispositivos

Una vez instalado el paquete torch-directml, puede comprobar que se ejecuta correctamente agregando dos tensores. En primer lugar, inicie una sesión interactiva de Python e importe Torch con las siguientes líneas:

import torch
import torch_directml
dml = torch_directml.device()

La versión actual de torch-directml se asigna al back-end de Torch "PrivateUse1". La API torch_directml.device() es un cómodo contenedor para enviar los tensores al dispositivo DirectML.

Con el dispositivo DirectML creado, ahora puede definir dos tensores simples; un tensor que contiene 1 y otro que contiene 2. Coloque los tensores en el dispositivo "dml".

tensor1 = torch.tensor([1]).to(dml) # Note that dml is a variable, not a string!
tensor2 = torch.tensor([2]).to(dml)

Agregue los tensores e imprima los resultados.

dml_algebra = tensor1 + tensor2
dml_algebra.item()

Debería ver que el número 3 es la salida, como en el ejemplo siguiente.

>>> import torch
>>> tensor1 = torch.tensor([1]).to(dml)
>>> tensor2 = torch.tensor([2]).to(dml)
>>> dml_algebra = tensor1 + tensor2
>>> dml_algebra.item()
3

PyTorch con ejemplos de DirectML y comentarios

Consulte nuestros ejemplos para ver más usos de PyTorch con DirectML. Si tiene problemas o tiene comentarios sobre el paquete PyTorch con DirectML, póngase en contacto con nuestro equipo aquí.