[ad_1]
Los equipos de aprendizaje automático (ML) necesitan flexibilidad para elegir su entorno de desarrollo integrado (IDE) cuando trabajan en un proyecto. Le permite tener una experiencia de desarrollador productiva e innovar rápidamente. Incluso puede usar múltiples IDE dentro de un proyecto. Con Amazon SageMaker, los equipos de aprendizaje automático pueden optar por trabajar en entornos basados en la nube totalmente administrados dentro de Amazon SageMaker Studio, instancias de notebooks de SageMaker o desde su computadora local en modo local.
SageMaker proporciona a Jupyter y RStudio una experiencia de un solo clic para crear, entrenar, depurar, implementar y monitorear modelos de ML. En esta publicación, también presentamos una solución para alojar servidores de código en SageMaker.
Code Server permite a los usuarios ejecutar VS Code en máquinas remotas y acceder a él en un navegador web. Para los equipos de aprendizaje automático, alojar servidores de código en SageMaker ofrece cambios mínimos en una experiencia de desarrollo local y le permite codificar desde cualquier lugar en la computación en la nube escalable. Con VS Code, también puede usar entornos conda integrados con TensorFlow y PyTorch optimizados para AWS, repositorios Git administrados, modo local y otras características proporcionadas por SageMaker para acelerar su implementación. Para los administradores de TI, les permite estandarizar y acelerar la implementación de IDE seguros y administrados en la nube para incorporar y respaldar rápidamente a los equipos de ML en sus proyectos.
descripción general de la solución
En esta publicación, cubrimos la instalación tanto para entornos Studio (Opción A) como para instancias de Notebook (Opción B). Para cada opción, pasamos por un proceso de instalación manual que los equipos de ML pueden ejecutar en su entorno y una instalación automatizada que los administradores de TI pueden configurar para ellos mediante la interfaz de línea de comandos de AWS (AWS CLI).
El siguiente diagrama ilustra la descripción general de la arquitectura para alojar servidores de código en SageMaker.
Nuestra solución acelera la instalación y configuración del servidor de códigos en su entorno. Funciona tanto para JupyterLab 3 (recomendado) como para JupyterLab 1 que se ejecutan en instancias de Studio y SageMaker Notebook. Consiste en scripts de shell que hacen lo siguiente según la opción.
Para Studio (opción A), el script de shell se ejecuta:
Para instancias de notebooks de SageMaker (Opción B), el script de shell hace lo siguiente:
- Instala el servidor de códigos.
- Agrega un acceso directo del servidor de código al menú del archivo del cuaderno Jupyter y el iniciador de JupyterLab para un acceso rápido al IDE.
- Crea un entorno conda dedicado para administrar dependencias.
- Instala las extensiones de Python y Docker en el IDE.
En las siguientes secciones, repasamos el proceso de instalación de la solución para la Opción A y la Opción B. Asegúrese de tener acceso a Studio o a una instancia de notebook.
Opción A: servidor de código de host en Studio
Siga estos pasos para alojar el servidor de códigos en Studio:
- Elegir terminal del sistema en el lanzador de tu estudio.
- Para instalar la solución del servidor de códigos, ejecute los siguientes comandos en la terminal de su sistema:
Los comandos deberían tardar unos segundos en completarse.
- Vuelva a cargar la página del navegador donde puede ver un servidor de código en el lanzador de Studio.
- Elegir servidor de código para abrir una nueva pestaña del navegador que le permita acceder al servidor de códigos desde su navegador.
La extensión de Python ya está instalada y puedes trabajar en tu proyecto de ML.
Puede abrir la carpeta de su proyecto en VS Code y seleccionar el entorno Conda preconstruido para ejecutar sus scripts de Python.
Automatice la instalación del servidor de código para los usuarios en un dominio de Studio
Como administrador de TI, puede automatizar la instalación para los usuarios de Studio mediante una configuración de ciclo de vida. Esto se puede hacer para todos los perfiles de usuario en un dominio de Studio o para perfiles de usuario específicos. Para obtener más detalles, consulte Personalización de Amazon SageMaker Studio mediante configuraciones de ciclo de vida.
Para esta publicación, crearemos una configuración de ciclo de vida a partir de la secuencia de comandos install-codeserver y la adjuntaremos a un dominio de Studio existente. La instalación se realiza para todos los perfiles de usuario del dominio.
En un terminal configurado con la AWS CLI y los permisos apropiados, ejecute los siguientes comandos:
Después de reiniciar Jupyter Server, el servidor de código El botón aparecerá en su lanzador de Studio.
Opción B: servidor de código de host en una instancia de SageMaker Notebook
Complete los siguientes pasos para alojar servidores de códigos en una instancia de notebook de SageMaker:
- Inicie una terminal desde Jupyter o JupyterLab para su instancia de notebook.
Si usa Jupyter, elija Terminal sobre el Nuevo Menú. - Para instalar la solución del servidor de códigos, ejecute los siguientes comandos en su terminal:
Las instalaciones del servidor de códigos y de la extensión son persistentes en la instancia del cuaderno. Sin embargo, si detiene o reinicia la instancia, debe ejecutar el siguiente comando para volver a configurar el servidor de códigos:
sudo ./setup-codeserver.sh
Los comandos deberían tardar unos segundos en completarse. Puede cerrar la pestaña Terminal cuando vea lo siguiente.
- Ahora vuelva a cargar la página de Jupyter y verifique el Nuevo menú de nuevo.
Que servidor de código La opción ahora debería estar disponible.
También puede iniciar el servidor de códigos desde JupyterLab usando un botón de inicio dedicado como se muestra en la captura de pantalla a continuación.
Elegir servidor de código abre una nueva pestaña del navegador que le permite acceder al servidor de códigos desde su navegador. Las extensiones de Python y Docker ya están instaladas y está listo para trabajar en su proyecto de ML.
Automatice la instalación del servidor de códigos en una instancia de notebook
Como administrador de TI, puede automatizar la instalación del servidor de códigos con una configuración de ciclo de vida que se ejecuta en la creación de la instancia y automatizar la instalación con una configuración que se ejecuta en el inicio de la instancia.
Aquí usamos la CLI de AWS para crear una instancia de cuaderno de muestra y una configuración de ciclo de vida. Que on-create
config ejecuta install-codeserver, y on-start
ejecuta setup-codeserver.
En un terminal configurado con la AWS CLI y los permisos apropiados, ejecute los siguientes comandos:
La instalación del servidor de códigos ahora está automatizada para la instancia del cuaderno.
Conclusión
Con Code Server alojado en SageMaker, los equipos de ML pueden ejecutar VS Code en computación en la nube escalable, codificar desde cualquier lugar y acelerar la entrega de sus proyectos de ML. Los administradores de TI pueden usarlo para estandarizar y acelerar la implementación de IDE seguros y administrados en la nube para incorporar y respaldar rápidamente a los equipos de ML en sus proyectos.
En esta publicación, compartimos una solución para instalar rápidamente servidores de códigos en las instancias de Studio y Notebook. Compartimos un proceso de instalación manual que los equipos de ML pueden ejecutar ellos mismos y una instalación automatizada que los administradores de TI pueden configurar para ellos.
Para profundizar aún más su aprendizaje, visite AWSome SageMaker en GitHub para encontrar todos los recursos relevantes y actualizados necesarios para trabajar con SageMaker.
Sobre los autores
Giuseppe Angelo Porcelli es un Arquitecto Principal de Soluciones Especializado en Aprendizaje Automático para Amazon Web Services. Con experiencia en desarrollo de software y aprendizaje automático de varios años, trabaja con clientes de todos los tamaños para comprender sus necesidades comerciales y técnicas en profundidad y para desarrollar soluciones de inteligencia artificial y aprendizaje automático que aprovechen al máximo la nube de AWS y la pila de Amazon Machine Learning. Ha trabajado en proyectos en varios campos, incluidos MLOps, Computer Vision, NLP, e involucró una amplia gama de servicios de AWS. En su tiempo libre, a Giuseppe le gusta jugar al fútbol.
Sofian Hamiti es un arquitecto de soluciones de IA/ML en AWS. Ayuda a los clientes de todas las industrias a acelerar su viaje de IA/ML ayudándolos a diseñar y poner en funcionamiento soluciones de aprendizaje automático de extremo a extremo.
Eric Peña es gerente sénior de productos técnicos en el equipo de plataformas de inteligencia artificial de AWS que trabaja en el aprendizaje automático interactivo de Amazon SageMaker. Actualmente se centra en integraciones IDE en SageMaker Studio. Tiene un MBA de MIT Sloan y le gusta jugar baloncesto y fútbol fuera del trabajo.
[ad_2]