Ejecución de cuadernos de Jupyter en el área de trabajo

En este artículo se muestra cómo ejecutar los cuadernos de Jupyter Notebook dentro del área de trabajo de Estudio de Azure Machine Learning. También hay otras maneras de ejecutar el cuaderno: Jupyter, JupyterLaby Visual Studio Code. VS Code escritorio se puede configurar para acceder a la instancia de proceso. O bien, use VS Code para web, directamente desde el explorador y sin instalaciones o dependencias necesarias.

Se recomienda probar VS Code para web para aprovechar las ventajas de la integración sencilla y el entorno de desarrollo enriquecido que proporciona. VS Code para web proporciona muchas de las características de VS Code escritorio que le encantan, incluido el resaltado de búsqueda y sintaxis mientras explora y edita. Para obtener más información sobre el uso de VS Code escritorio y VS Code para web, consulte Iniciar Visual Studio Code integrado con Azure Machine Learning (versión preliminar) y Trabajar en VS Code de forma remota conectada a una instancia de proceso (versión preliminar).

Independientemente de la solución que use para ejecutar el cuaderno, tendrá acceso a todos los archivos del área de trabajo. Para obtener información sobre cómo crear y administrar archivos, incluidos los cuadernos, consulte Creación y administración de archivos en el área de trabajo.

En el resto de este artículo se muestra la experiencia para ejecutar el cuaderno directamente en Studio.

Importante

Las características marcadas como (versión preliminar) se ofrecen sin Acuerdo de nivel de servicio y no se recomiendan para cargas de trabajo de producción. Es posible que algunas características no sean compatibles o que tengan sus funcionalidades limitadas. Para más información, consulte Términos de uso complementarios de las Versiones Preliminares de Microsoft Azure.

Requisitos previos

  • Suscripción a Azure. Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.
  • Un área de trabajo de Machine Learning. Consulte Creación de recursos del área de trabajo.
  • La identidad de usuario debe tener acceso a la cuenta de almacenamiento predeterminada del área de trabajo. Si puede leer, editar o crear cuadernos, depende del nivel de acceso al área de trabajo. Por ejemplo, un colaborador puede editar el cuaderno, mientras que un lector solo puede verlo.

Acceso a cuadernos desde el área de trabajo

Use la sección Cuadernos del área de trabajo para editar y ejecutar cuadernos de Jupyter Notebook.

  1. Inicie sesión en Estudio de Azure Machine Learning.
  2. Seleccione el área de trabajo si aún no está abierta.
  3. Seleccione Notebooks en la parte izquierda.

Edición de un cuaderno

Para editar un cuaderno, abra cualquiera que esté situado en la sección Archivos de usuario de su área de trabajo. Seleccione la celda que quiere editar. Si no tiene ningún cuaderno en esta sección, consulte Creación y administración de archivos en el área de trabajo.

Puede editar el cuaderno sin necesidad de conectarse a una instancia de proceso. Cuando desee ejecutar las celdas en el cuaderno, seleccione o cree una instancia de proceso. Si selecciona una instancia de proceso detenida, se iniciará automáticamente al ejecutar la primera celda.

Cuando se ejecuta una instancia de proceso, también puede usar la finalización de código, con la tecnología de IntelliSense, en cualquier cuaderno de Python.

También puede iniciar Jupyter o JupyterLab desde la barra de herramientas del cuaderno. Azure Machine Learning no proporciona actualizaciones ni corrige errores de Jupyter o JupyterLab, ya que son productos de código abierto fuera de los límites del servicio de Soporte técnico de Microsoft.

Modo de enfoque

Use el modo de enfoque para expandir la vista actual de forma que pueda centrarse en las pestañas activas. El modo de enfoque oculta el explorador de archivos de Notebooks.

  1. En la barra de herramientas de la ventana del terminal, seleccione Modo de enfoque para activar el modo de enfoque. En función del ancho de la ventana, la herramienta puede encontrarse en el elemento de menú ... de la barra de herramientas.

  2. En el modo de enfoque, seleccione Vista estándar para volver a la vista estándar.

    Toggle focus mode / standard view

Finalización de código (IntelliSense)

IntelliSense es una ayuda de finalización de código que incluye una serie de características: enumerar miembros, información de parámetros, información rápida y completar palabra. Con solo unas cuantas pulsaciones de tecla, puede:

  • Obtener información sobre el código que usa
  • Realizar un seguimiento de los parámetros que escribe
  • Agregar llamadas a propiedades y métodos

Uso compartido de un cuaderno

Los cuadernos se almacenan en la cuenta de almacenamiento del área de trabajo y se pueden compartir con otros usuarios, en función de su nivel de acceso al área de trabajo. Pueden abrir y editar el cuaderno siempre que tengan el acceso adecuado. Por ejemplo, un colaborador puede editar el cuaderno, mientras que un lector solo puede verlo.

Otros usuarios del área de trabajo pueden encontrar el cuaderno en la sección Cuadernos, Archivos de usuario de Estudio de Azure Machine Learning. De forma predeterminada, los cuadernos están en una carpeta con su nombre de usuario y otros usuarios pueden acceder a ellos.

También puede copiar la dirección URL del explorador al abrir un cuaderno y, a continuación, enviarla a otros usuarios. Siempre que tengan el acceso adecuado al área de trabajo, pueden abrir el cuaderno.

Dado que no comparte instancias de proceso, otros usuarios que ejecutan el cuaderno lo harán en su propia instancia de proceso.

Colaboración con comentarios de cuadernos (versión preliminar)

Use un comentario de cuaderno para colaborar con otros usuarios que tengan acceso al cuaderno.

Active y desactive el panel de comentarios con la herramienta Notebook comments (Comentarios de cuaderno) en la parte superior del cuaderno. Si la pantalla no es lo suficientemente ancha, busque esta herramienta seleccionando primero ... al final del conjunto de herramientas.

Screenshot of notebook comments tool in the top toolbar.

Tanto si el panel de comentarios está visible como si no, puede agregar un comentario en cualquier celda de código:

  1. Seleccione texto en la celda de código. Solo puede comentar texto en una celda de código.
  2. Use la herramienta New comment thread (Nuevo subproceso de comentario) para crear el comentario. Screenshot of add a comment to a code cell tool.
  3. Si el panel de comentarios se ocultaba anteriormente, ahora se abrirá.
  4. Escriba el comentario y publíquelo con la herramienta o use Ctrl+ENTRAR.
  5. Una vez publicado un comentario, seleccione ... en la parte superior derecha para:
    • Editar el comentario
    • Resolver el subproceso
    • Eliminar el subproceso

El texto que se ha comentado aparecerá con un resaltado púrpura en el código. Al seleccionar un comentario en el panel de comentarios, el cuaderno se desplazará a la celda que contiene el texto resaltado.

Nota

Los comentarios se guardan en los metadatos de la celda de código.

Limpieza del cuaderno (versión preliminar)

Durante la creación de un cuaderno, normalmente acaba con las celdas usadas para la exploración o la depuración de datos. La característica de recopilación le ayudará a crear un cuaderno limpio sin estas celdas extrañas.

  1. Ejecute todas las celdas del cuaderno.
  2. Seleccione la celda que contiene el código que desea que ejecute el nuevo cuaderno. Por ejemplo, el código que envía un experimento o quizás el código que registra un modelo.
  3. Seleccione el icono de recopilación que aparece en la barra de herramientas de celda. Screenshot: select the Gather icon
  4. Escriba el nombre del nuevo cuaderno "recopilado".

El nuevo cuaderno solo contiene celdas de código, con todas las celdas necesarias para generar los mismos resultados que la celda seleccionada para la recopilación.

Guardar y revisar un cuaderno

Azure Machine Learning crea un archivo de punto de comprobación cuando se crea un archivo ipynb.

En la barra de herramientas del cuaderno, seleccione el menú y luego, Archivo>Guardar y punto de control para guardar manualmente el cuaderno y agregará un archivo de punto de control asociado con el cuaderno.

Screenshot of save tool in notebook toolbar

Cada cuaderno se guarda automáticamente cada 30 segundos. El guardado automático actualiza solo el archivo ipynb inicial, no el archivo de puntos de control.

Seleccione Puntos de control en el menú del cuaderno para crear un punto de control con nombre y revertir el cuaderno a un punto de control guardado.

Exportación de un cuaderno

En la barra de herramientas del cuaderno, seleccione el menú y, a continuación, Exportar como para exportar el cuaderno en cualquiera de los tipos admitidos:

  • Notebook
  • Python
  • HTML
  • LaTeX

Export a notebook to your computer

El archivo exportado se guarda en el equipo.

Ejecución de un cuaderno o un script de Python

Para ejecutar un cuaderno o un script de Python, primero tiene que conectarse a una instancia de proceso en ejecución.

  • Si no tiene una instancia de proceso, siga estos pasos para crear una:

    1. En la barra de herramientas del cuaderno o script, a la derecha de la lista desplegable Proceso, seleccione + Nuevo proceso. En función del tamaño de la pantalla, es posible que se encuentre en el menú ... Create a new compute
    2. Asigne un nombre al proceso y elija el Tamaño de la máquina virtual.
    3. Seleccione Crear.
    4. La instancia de proceso se conecta automáticamente al archivo. Ahora puede ejecutar las celdas del cuaderno o el script de Python mediante la herramienta que se encuentra a la izquierda de la instancia de proceso.
  • Si tiene una instancia de proceso detenida, seleccione Iniciar proceso a la derecha de la lista desplegable Proceso. En función del tamaño de la pantalla, es posible que se encuentre en el menú ...

    Start compute instance

Una vez conectado a una instancia de proceso, use la barra de herramientas para ejecutar todas las celdas del cuaderno, o Control + Entrar para ejecutar una sola celda seleccionada.

Solo puede ver y usar las instancias de proceso que usted cree. Los Archivos de usuario se almacenan de forma independiente de la máquina virtual y se comparten entre todas las instancias de proceso en el área de trabajo.

Exploración de las variables del cuaderno

En la barra de herramientas del cuaderno, use la herramienta Explorador de variables para mostrar el nombre, el tipo, la longitud y los valores de ejemplo de todas las variables que se han creado en el cuaderno.

Screenshot: Variable explorer tool

Seleccione la herramienta para mostrar la ventana del explorador de variables.

Screenshot: Variable explorer window

En la barra de herramientas del cuaderno, use la herramienta Tabla de contenido para mostrar u ocultar la misma. Inicie una celda de Markdown con un encabezado para agregarla a la tabla de contenido. Seleccione una entrada de la tabla para desplazarse a esa celda en el cuaderno.

Screenshot: Table of contents in the notebook

Cambio del entorno del cuaderno.

La barra de herramientas del cuaderno le permite cambiar el entorno en el que se ejecuta el mismo.

Estas acciones no cambiarán el estado del cuaderno o los valores de las variables del mismo:

Acción Resultado
Detención del kernel Detiene cualquier celda en ejecución. Al ejecutar una celda, se reiniciará automáticamente el kernel.
Desplazamiento a otra sección del área de trabajo Se detienen las celdas en ejecución.

Estas acciones restablecerán el estado del cuaderno y todas las variables del mismo.

Acción Resultado
Cambio del kernel Notebook usa un nuevo kernel
Cambio de proceso Notebook utiliza automáticamente el nuevo proceso.
Restablecimiento del proceso Se inicia de nuevo cuando se intenta ejecutar una celda.
Detención del proceso No se ejecutarán las celdas.
Apertura del cuaderno en Jupyter o JupyterLab Notebook se abre en una nueva pestaña.

Incorporación de nuevos kernels

Use el terminal para crear y agregar kernels nuevos a la instancia de proceso. El cuaderno buscará automáticamente todos los kernels de Jupyter instalados en la instancia de proceso conectada.

Use la lista desplegable Kernel de la derecha para cambiar a cualquiera de los kernels instalados.

Administración de paquetes

Puesto que la instancia de proceso tiene varios kernels, asegúrese de que usa las funciones mágicas%pip o %conda, que instalan los paquetes en el kernel en ejecución actualmente. No use !pip ni !conda, ya que hacen referencia a todos los paquetes (incluidos los paquetes fuera del kernel que se está ejecutando actualmente).

Indicadores de estado

Un indicador situado junto al elemento de la lista desplegable Proceso muestra su estado. El estado también se muestra en el mismo elemento de la lista desplegable.

Color Estado de proceso
Verde Proceso en ejecución
Rojo Error de proceso
Negro Proceso detenido
Azul claro Proceso creando, iniciando, reiniciando, configurando
Gris Proceso eliminando, deteniendo

Un indicador situado junto al elemento de lista desplegable Kernel muestra su estado.

Color Estado del kernel
Verde Kernel conectado, inactivo, ocupado
Gris Kernel no conectado

Detalles de proceso

Busque los detalles sobre las instancias de proceso en la página Proceso de Studio.

Métodos abreviados de teclado útiles

De forma similar a los cuadernos de Jupyter Notebook, los cuadernos de Estudio de Azure Machine Learning tienen una interfaz de usuario modal. El teclado realiza diferentes acciones en función del modo en que se encuentre la celda del cuaderno. Los cuadernos de Estudio de Azure Machine Learning admiten los siguientes dos modos para una celda de código determinada: el modo de comando y el de edición.

Métodos abreviados del modo de comando

Una celda se encuentra en modo de comando cuando no hay ningún cursor de texto que le pida que escriba. Cuando una celda está en modo de comando, puede editar el cuaderno en su conjunto, pero no escribir en celdas individuales. Para ingresar al modo de comando, presione ESC o use el mouse para seleccionar fuera del área del editor de una celda. El borde izquierdo de la celda activa es azul y sólido, y el botón Ejecutar es azul.

Notebook cell in command mode

Acceso directo Descripción
Entrar Acceso al modo de edición
Mayús + Entrar Ejecución de la celda, selección del siguiente contenido
Control/Comando + Entrar Ejecución de una celda
Alt + Entrar Ejecución de una celda, inserción de la celda de código siguiente
Control/Comando + Alt + Entrar Ejecución de una celda, inserción de la celda de Markdown siguiente
Alt + R Ejecutar todo
Y Convertir la celda en código
M Convertir la celda en Markdown
Arriba/K Seleccionar la celda anterior
Abajo/J Seleccionar la celda siguiente
Un Insertar la celda de código más arriba
B Insertar la celda de código abajo
Control/Comando + Mayús + A Insertar la celda de Markdown arriba
Control/Comando + Mayús + B Insertar la celda de Markdown abajo
X Cortar la celda seleccionada
C Copiar la celda seleccionada
Mayús + V Pegar la celda seleccionada arriba
V Pegar la celda seleccionada abajo
D D Eliminar la celda seleccionada
O Toggle Output
Mayús + O Alternar el desplazamiento de salida
I I Interrumpir kernel
0 0 Reiniciar kernel
Mayús + barra espaciadora Desplazarse hacia arriba
Space Desplazarse hacia abajo
Pestaña Cambiar el foco al siguiente elemento enfocable (cuando se deshabilita la captura de pestañas)
Control/comando + S Guardar cuaderno
1 Cambiar a H1
2 Cambiar a H2
3 Cambiar a H3
4 Cambiar a H4
5 Cambiar a H5
6 Cambiar a H6

Métodos abreviados del modo de edición

El modo de edición se indica mediante un cursor de texto que le pide que escriba en el área del editor. Cuando una celda se encuentra en modo de edición, puede escribir en la celda. Para ingresar al modo de edición, presione Enter o Seleccione el área del editor de una celda. El borde izquierdo de la celda activa es verde y está sombreado, y el botón Ejecutar es verde. En el modo de edición también verá la solicitud del cursor en la celda.

Notebook cell in edit mode

Con los siguientes métodos abreviados de teclado, puede navegar y ejecutar código más fácilmente en cuadernos de Azure Machine Learning en el modo de edición.

Acceso directo Descripción
Escape Especificar el modo de comandos
Control/Comando + Espacio Activar IntelliSense
Mayús + Entrar Ejecución de la celda, selección del siguiente contenido
Control/Comando + Entrar Ejecución de una celda
Alt + Entrar Ejecución de una celda, inserción de la celda de código siguiente
Control/Comando + Alt + Entrar Ejecución de una celda, inserción de la celda de Markdown siguiente
Alt + R Ejecución de todas las celdas
Subir Subir el cursor o la celda anterior
Bajar Bajar el cursor o la celda siguiente
Control/comando + S Guardar cuaderno
Control/Comando + arriba Ir al inicio de la celda
Control/Comando + abajo Ir al final de la celda
Pestaña Finalizar el código o aplicarle sangría (si se habilita la captura de pestañas)
Control/Comando + M Habilitar o deshabilitar la captura de pestañas
Control/Cmando + ] Aplicar sangría
Control/Comando + [ Desaplicar sangría
Control/Comando + A Seleccionar todo
Control/Comando + Z Deshacer
Control/Comando + Mayús + Z Rehacer
Control/Comando + Y Rehacer
Control/Comando + Inicio Ir al inicio de la celda
Control/Comando + Fin Ir al final de la celda
Control/Comando + Izquierda Ir una palabra a la izquierda
Control/Comando + Derecha Ir una palabra a la derecha
Control/Comando + Retroceso Eliminar palabra anterior
Control/Comando + Eliminar Eliminar palabra posterior
Control/Comando + / Alternar comentario en celda

Solucionar problemas

  • Conexión a un cuaderno: si no puede conectarse a un cuaderno, asegúrese de que la comunicación de socket web no está deshabilitada. Para que la funcionalidad de Jupyter de instancia de proceso haga su trabajo, debe habilitarse la comunicación de socket web. Asegúrese de que la red permite conexiones de websocket a *.instances.azureml.net e *.instances.azureml.ms.

  • Punto de conexión privado: cuando una instancia de proceso se implementa en un área de trabajo con un punto de conexión privado, solo se puede acceder a ella desde la red virtual. Si usa un archivo de hosts o DNS personalizado, agregue una entrada para < nombre-de-instancia >.< región >.instances.azureml.ms con la dirección IP privada del punto de conexión privado de su área de trabajo. Para más información, consulte el artículo DNS personalizado.

  • Bloqueo del kernel: si el kernel se ha bloqueado y reiniciado, puede ejecutar el siguiente comando para ver el registro de Jupyter y obtener más detalles: sudo journalctl -u jupyter. Si los problemas del kernel persisten, considere la posibilidad de usar una instancia de proceso con más memoria.

  • Kernel not found (No se encontró el kernel) o Kernel operations were disabled (Se deshabilitaron las operaciones del kernel): cuando se usa el kernel de Python 3.8 predeterminado en una instancia de proceso, puede obtener un error como "Kernel not found" (No se encontró el kernel) o "Kernel operations were disabled" (Se deshabilitaron las operaciones del kernel). Para solucionarlos, utilice uno de los métodos siguientes:

    • Cree una nueva instancia de proceso. Esto usará una nueva imagen en la que se haya resuelto este problema.
    • Use el kernel de Python 3.6 en la instancia de proceso existente.
    • Desde un terminal en el entorno py38 predeterminado, ejecute pip install ipykernel==6.6.0 O pip install ipykernel==6.0.3.
  • Token expirado: si se encuentra con un problema de token expirado, cierre la sesión del Estudio de Azure Machine Learning, vuelva a iniciarla y reinicie el kernel del cuaderno.

  • Límite de carga de archivos: al cargar un archivo a través del explorador de archivos del cuaderno, trabaja con archivos limitados, de menos de 5 TB. Si necesita cargar un archivo mayor que este, se recomienda usar el SDK para cargar los datos en un almacén de datos. Para obtener más información, consulte Creación de recursos de datos.

Pasos siguientes