Configuración de un entorno de desarrollo de Python para Azure Machine Learning

Descubra cómo configurar un entorno de desarrollo de Python para Azure Machine Learning.

En la tabla siguiente se muestra cada entorno de desarrollo que se trata en este artículo, junto con las ventajas y desventajas.

Entorno Ventajas Desventajas
Entorno local Control total del entorno de desarrollo y las dependencias. Funciona con cualquier herramienta de compilación, entorno o IDE de su elección. Tarda más tiempo en comenzar. Se deben instalar los paquetes de SDK necesarios y también debe instalarse un entorno si aún no tiene uno.
Data Science Virtual Machine (DSVM) De manera similar a la instancia de proceso basada en la nube (con Python preinstalado), pero con herramientas adicionales de ciencia de datos y aprendizaje automático conocidas instaladas previamente. Fácil de escalar y combinar con otras herramientas y flujos de trabajo personalizados. Una experiencia de inicio más lenta en comparación con la instancia de proceso basada en la nube.
Instancia de proceso de Azure Machine Learning Manera más fácil de empezar. El SDK ya está instalado en la máquina virtual del área de trabajo y los tutoriales de cuaderno están clonados previamente y listos para ejecutarse. Falta de control sobre el entorno de desarrollo y las dependencias. Costo adicional por la máquina virtual Linux (la máquina virtual se puede detener cuando no se use para evitar cargos). Consulte los detalles de los precios.

En este artículo también se proporcionan sugerencias de uso adicionales para las siguientes herramientas:

  • Jupyter Notebook: si ya usa instancias de Jupyter Notebook, el SDK incluye algunos elementos adicionales que debe instalar.

  • Visual Studio Code: Si usa Visual Studio Code, la extensión de Azure Machine Learning incluye compatibilidad de lenguaje con Python, así como características para que trabajar con Azure Machine Learning sea mucho más cómodo y productivo.

Requisitos previos

Solo en el entorno local y DSVM: Crear un archivo de configuración del área de trabajo

El archivo de configuración del área de trabajo es un archivo JSON que le indica al SDK cómo comunicarse con el área de trabajo de Azure Machine Learning. El archivo se denomina config.json y tiene el formato siguiente:

{
    "subscription_id": "<subscription-id>",
    "resource_group": "<resource-group>",
    "workspace_name": "<workspace-name>"
}

Este archivo JSON debe estar en la estructura de directorios que contiene los scripts de Python o las instancias de Jupyter Notebook. Puede estar en el mismo directorio, en un subdirectorio denominado .azureml*, o en un directorio primario.

Para utilizar este archivo desde el código, utilice el método MLClient.from_config. Este código carga la información del archivo y se conecta a su área de trabajo.

Cree un archivo de configuración del área de trabajo con uno de los métodos siguientes:

  • Azure Machine Learning Studio

    Descargue el archivo:

    1. Inicie sesión en Azure Machine Learning Studio.
    2. En la barra de herramientas de Estudio de Azure Machine Learning superior derecha, seleccione el nombre del área de trabajo.
    3. Seleccione el vínculo Descargar archivo de configuración.

    Captura de pantalla en la que se muestra cómo descargar un archivo de configuración.

  • SDK de Python de Azure Machine Learning

    Cree un script para conectarse al área de trabajo de Azure Machine Learning. Asegúrese de reemplazar subscription_id, resource_group y workspace_name por sus propios valores.

    SE APLICA A: SDK de Python azure-ai-ml v2 (actual)

    #import required libraries
    from azure.ai.ml import MLClient
    from azure.identity import DefaultAzureCredential
    
    #Enter details of your Azure Machine Learning workspace
    subscription_id = '<SUBSCRIPTION_ID>'
    resource_group = '<RESOURCE_GROUP>'
    workspace = '<AZUREML_WORKSPACE_NAME>'
    
    #connect to the workspace
    ml_client = MLClient(DefaultAzureCredential(), subscription_id, resource_group, workspace)
    

Equipo local o entorno de máquina virtual remoto

Puede configurar un entorno en un equipo local o una máquina virtual remota, como una instancia de proceso de Azure Machine Learning o Data Science VM.

Para configurar un entorno de desarrollo local o una máquina virtual remota:

  1. Cree un entorno virtual de Python (virtualenv, conda).

    Nota

    Aunque no es necesario, se recomienda usar Anaconda o Miniconda para administrar entornos virtuales de Python e instalar paquetes.

    Importante

    Si usa Linux o Mac OS y un shell distinto de bash (por ejemplo, zsh), es posible que reciba errores al ejecutar algunos comandos. Para solucionar este problema, use el comando bash para iniciar un nuevo shell de bash y ejecutar sus comandos.

  2. Active el entorno virtual de Python recién creado.

  3. Instale el SDK de Azure Machine Learning para Python.

  4. Con el fin de configurar el entorno local para usar el área de trabajo de Azure Machine Learning, cree un archivo de configuración de área de trabajo o use uno que ya tenga.

Ahora que ha configurado el entorno local, ya podrá empezar a trabajar con Azure Machine Learning. Para empezar, consulte el Tutorial: Azure Machine Learning en un día.

Cuadernos de Jupyter Notebook

Al ejecutar un servidor de Jupyter Notebook local, se recomienda crear un kernel de IPython para el entorno virtual de Python. Esto ayuda a garantizar el comportamiento esperado de la importación del paquete y el kernel.

  1. Habilitación de los kernels de IPython específicos del entorno

    conda install notebook ipykernel
    
  2. Cree un kernel para el entorno virtual de Python. Asegúrese de reemplazar <myenv> por el nombre de su entorno virtual de Python.

    ipython kernel install --user --name <myenv> --display-name "Python (myenv)"
    
  3. Inicio del servidor de Jupyter Notebook

Sugerencia

Para cuadernos de ejemplo, consulte el repositorio AzureML-Examples. Los ejemplos de SDK se encuentran en /sdk/python. Por ejemplo, el ejemplo Cuaderno de configuración.

Visual Studio Code

Para usar Visual Studio Code para el desarrollo:

  1. Instale Visual Studio Code.
  2. Instale la extensión Azure Machine Learning para Visual Studio Code (versión preliminar).

Una vez que tenga instalada la extensión de Visual Studio Code, úsela para:

Instancia de proceso de Azure Machine Learning

La instancia de proceso de Azure Machine Learning es una estación de trabajo de Azure segura y basada en la nube que proporciona a los científicos de datos un servidor de Jupyter Notebook, JupyterLab y un entorno de aprendizaje automático totalmente administrado.

No hay nada que instalar o configurar para una instancia de proceso.

Cree una en cualquier momento desde el área de trabajo de Azure Machine Learning. Basta con que proporcione un nombre y especifique un tipo de máquina virtual de Azure. Pruébela ahora mediante Creación de recursos para empezar.

Para obtener más información acerca de las instancias de proceso, incluyendo cómo instalar paquetes, consulte Creación de una instancia de proceso de Azure Machine Learning.

Sugerencia

Para evitar incurrir en cargos por una instancia de proceso sin usar, habilite el apagado inactivo.

Además de un servidor de Jupyter Notebook y JupyterLab, puede usar instancias de proceso en la característica de cuadernos integrada en Estudio de Azure Machine Learning.

También puede usar la extensión de Visual Studio Code para Azure Machine Learning para conectarse a una instancia de proceso remota mediante VS Code.

Máquina virtual de ciencia de datos

Data Science VM es una imagen de máquina virtual personalizada que puede usar como entorno de desarrollo. Está diseñada para realizar trabajos de ciencia de datos que estén preconfigurados con herramientas y software como:

  • Paquetes, como TensorFlow, PyTorch, Scikit-learn, XGBoost y el SDK de Azure Machine Learning
  • Herramientas de ciencia de datos populares, como Spark Standalone o Drill
  • Herramientas de Azure, como la CLI de Azure, AzCopy y el Explorador de Storage
  • Entornos de desarrollo integrado (IDE), como Visual Studio Code y PyCharm
  • Servidor de Jupyter Notebook

Para ver una lista más completa de las herramientas, consulte la guía de herramientas de Data Science VM.

Importante

Si planea usar la instancia de Data Science VM como destino de proceso para sus trabajos de entrenamiento o inferencia, solo se admite Ubuntu.

Para usar la instancia de Data Science VM como entorno de desarrollo, haga lo siguiente:

  1. Cree una instancia de Data Science VM con uno de los métodos siguientes:

    • Use Azure Portal para crear una instancia de DSVM de Ubuntu o Windows.

    • Cree una instancia de Data Science VM con plantillas de Resource Manager.

    • Uso de la CLI de Azure

      Para crear una instancia de Data Science VM de Ubuntu, use el siguiente comando:

      # create a Ubuntu Data Science VM in your resource group
      # note you need to be at least a contributor to the resource group in order to execute this command successfully
      # If you need to create a new resource group use: "az group create --name YOUR-RESOURCE-GROUP-NAME --location YOUR-REGION (For example: westus2)"
      az vm create --resource-group YOUR-RESOURCE-GROUP-NAME --name YOUR-VM-NAME --image microsoft-dsvm:linux-data-science-vm-ubuntu:linuxdsvmubuntu:latest --admin-username YOUR-USERNAME --admin-password YOUR-PASSWORD --generate-ssh-keys --authentication-type password
      

      Para crear una instancia de DSVM de Windows, use el siguiente comando:

      # create a Windows Server 2016 DSVM in your resource group
      # note you need to be at least a contributor to the resource group in order to execute this command successfully
      az vm create --resource-group YOUR-RESOURCE-GROUP-NAME --name YOUR-VM-NAME --image microsoft-dsvm:dsvm-windows:server-2016:latest --admin-username YOUR-USERNAME --admin-password YOUR-PASSWORD --authentication-type password
      
  2. Cree un entorno de conda para el SDK de Azure Machine Learning:

    conda create -n py310 python=310
    
  3. Una vez creado el entorno, actívelo e instale el SDK.

    conda activate py310
    pip install azure-ai-ml azure-identity
    
  4. Para configurar la instancia de Data Science VM que usará el área de trabajo de Azure Machine Learning, cree un archivo de configuración del área de trabajo o use uno que ya tenga.

    Sugerencia

    De forma similar a los entornos locales, puede usar Visual Studio Code y la extensión de Azure Machine Learning para Visual Studio Code con el fin de interactuar con Azure Machine Learning.

    Consulte Data Science Virtual Machine para obtener más información.

Pasos siguientes