Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Centro de ayuda/ ModelArts/ DevEnviron/ IDE local/ IDE local (PyCharm)/ Conexión manual a una instancia de notebook con PyCharm
Actualización más reciente 2024-09-20 GMT+08:00

Conexión manual a una instancia de notebook con PyCharm

Un IDE local admite PyCharm y VS Code. Puede utilizar VS Code o PyCharm para conectar remotamente el IDE local a la instancia de notebook de destino de ModelArts para ejecutar y depurar el código.

En esta sección se describe cómo utilizar PyCharm para acceder a una instancia de notebook.

Requisitos previos

  • PyCharm professional 2019.2 o posterior se ha instalado localmente. La edición profesional de PyCharm está disponible porque SSH remoto solo se aplica a la edición profesional.
  • Se ha creado una instancia de notebook con SSH remoto habilitado. Asegúrese de que la instancia se está ejecutando. Para obtener más detalles, véase Creación de una instancia de notebook.
  • La dirección y el número de puerto del entorno de desarrollo están disponibles. Para obtener esta información, vaya a la página de detalles de la instancia del notebook.
    Figura 1 Página de detalles de la Instancia
  • El par de claves está disponible.

    Un par de claves se descarga automáticamente después de crearlo. Guárdelo de forma segura. Si se pierde un par de claves existente, cree uno nuevo.

Paso 1 Configurar SSH

  1. En su entorno de desarrollo de PyCharm local, elija File > Settings > Tools > SSH Configurations y haga clic en + para agregar una configuración de SSH.
    • Host: la dirección para acceder al entorno de desarrollo en la nube. Obtenga la dirección en la página que proporciona la información detallada de la instancia del notebook de destino.
    • Port: número de puertos para acceder al entorno de desarrollo en la nube. Obtenga el número de puerto en la página que proporciona la información detallada de la instancia del notebook de destino.
    • User name: se establece de forma consistente en ma-user.
    • Authentication type: par de claves
    • Private key file: el archivo de clave privada almacenado localmente del entorno de desarrollo en la nube. Es el archivo de par de claves que se descarga automáticamente al crear la instancia del notebook.
  2. Haga clic en para cambiar el nombre de la conexión. Luego, haga clic en OK.
  3. Una vez completada la configuración, haga clic en Test Connection para probar la conectividad.
  4. Seleccione Yes. Si se muestra "Successfully connected", se puede acceder a la red. Luego, haga clic en OK.
  5. Haga clic en OK en la parte inferior para guardar la configuración.
Figura 2 Configuración de SSH

Paso 2 Obtener la ruta al entorno virtual integrado en el entorno de desarrollo

  1. Elija Tools > Start SSH Session para acceder al entorno de desarrollo en la nube.
  2. Ejecute el siguiente comando para ver los entornos virtuales de Python construidos en el entorno actual en el archivo README en /home/ma-user/:
    cat /home/ma-user/README
  3. Ejecute el comando source para cambiar a un entorno específico de Python.
  4. Ejecute which python para obtener la ruta de Python y cópiela para configurar el intérprete de Python en la nube.
Figura 3 Obtención de la ruta hacia el entorno virtual integrado en el entorno de desarrollo

Paso 3 Configurar un intérprete de Python

  1. Elija File > Settings > Project: Python project > Python Interpreter. A continuación, haga clic en y Add para agregar un intérprete.
  2. Seleccione Existing server configuration en la lista desplegable, elija la configuración de SSH y haga clic en Next.
  3. Configure el intérprete de Python.
    • Interpreter: introduzca la ruta de Python copiada en el paso 1, por ejemplo, /home/ma-user/anaconda3/envs/Pytorch-1.0.0/bin/python.

      Si la ruta de acceso es ~/anaconda3/envs/Pytorch-1.0.0/bin/python, reemplace ~ por /home/ma-user.

    • Sync folders: establezca este parámetro en un directorio en el entorno de desarrollo en la nube para sincronizar archivos de directorio de proyectos locales. Se recomienda un directorio de /home/ma-user, por ejemplo, el /home/ma-user/work/projects porque otros directorios pueden tener prohibido el acceso.
  4. Haga clic en ! a la derecha y seleccione Automatically upload para que el archivo modificado localmente se pueda cargar automáticamente en el contenedor.
  5. Haga clic en Finish.

    El archivo de proyecto local se ha cargado automáticamente en el entorno de nube. Cada vez que se modifica un archivo local, la modificación se sincroniza automáticamente con el entorno de nube.

    En la esquina inferior derecha, el intérprete actual se muestra como un intérprete remoto.

    Figura 4 Configuración de un intérprete de Python

Paso 4 Instalar la biblioteca dependiente para el entorno de nube

Después de acceder al entorno de desarrollo, puede utilizar diferentes entornos virtuales, como TensorFlow y PyTorch. Sin embargo, en el desarrollo real, es necesario instalar paquetes de dependencias. A continuación, puede acceder al entorno a través de la terminal para realizar operaciones.

Seleccione Tools > Start SSH Session y seleccione el entorno de desarrollo configurado. Ejecute el comando pip install para instalar los paquetes de dependencias requeridos.

Paso 5 Código de depuración en el entorno de desarrollo

Ha accedido al entorno de desarrollo en la nube. Luego, puede escribir, depurar y ejecutar el código en el PyCharm local. El código se ejecuta realmente en el entorno de desarrollo en la nube y se utilizan los recursos de AI de Ascend en la nube. De esta manera, compile y modifique el código localmente y ejecute el código en la nube.

Ejecute el código en el IDE local. Los logs se pueden mostrar localmente.

Figura 5 Código de depuración

Haga clic en Run/Debug Configurations en la esquina superior derecha del IDE local para establecer los parámetros de tiempo de ejecución.

Figura 6 Configuración de parámetros de tiempo de ejecución

Para depurar código, establezca puntos de interrupción y ejecute el programa en modo de depuración.

Figura 7 Punto de interrupción de código
Figura 8 Depuración en modo de depuración

En modo de depuración, la ejecución de código se suspende en la línea especificada, y puede obtener valores de variables.

Figura 9 Modo de depuración

Antes de depurar código en modo de depuración, asegúrese de que el código local es el mismo que el código de la nube. Si son diferentes, la línea donde se agregue localmente un punto de interrupción puede ser diferente de la línea del código de nube, lo que lleva a errores.

Al configurar un intérprete de Python en el entorno de desarrollo de la nube, seleccione Automatically upload para que cualquier modificación de archivo local se pueda cargar automáticamente en la nube. Si no selecciona Automatically upload, cargue manualmente el directorio o código después de modificar el código local. Para obtener más detalles, véase Paso 6 Cargar archivos locales en la instancia de notebook.