Gestión de imágenes
Descripción general
Durante el desarrollo y el tiempo de ejecución de los servicios de IA, las dependencias de entorno complejas deben depurarse para la contenedorización. En las mejores prácticas de desarrollo de IA de ModelArts las imágenes de contenedores se utilizan para proporcionar entornos de tiempo de ejecución fijos. De esta manera, las dependencias se pueden gestionar y los entornos de tiempo de ejecución se pueden cambiar fácilmente. Los recursos de contenedores proporcionados por ModelArts permiten el desarrollo rápido y eficiente de IA y la iteración de experimentos de modelos.
Las imágenes preestablecidas proporcionadas por ModelArts por defecto tienen las siguientes características:
- Listo para usar y específico para escenarios: Los entornos dependientes típicos para el desarrollo de IA están preestablecidos en estas imágenes para proporcionar configuraciones óptimas de software, SO y red. Se han probado completamente en el hardware para garantizar una compatibilidad y un rendimiento óptimos.
- Configuración personalizable: las imágenes preestablecidas se almacenan en el repositorio de SWR para que pueda personalizarlas y registrarlas como sus propias imágenes.
- Seguro y confiable: las políticas de acceso, el control de permisos de usuario, el escaneo de vulnerabilidades para software de desarrollo y el sistema operativo se configuran en función de las mejores prácticas para reforzar la seguridad para garantizar la seguridad de las imágenes.
Si tiene los requisitos especiales en el motor de aprendizaje profundo y la biblioteca de desarrollo, puede usar imágenes personalizadas de ModelArts para personalizar los motores de tiempo de ejecución.
En función de la tecnología de contenedores, puede personalizar las imágenes de contenedores y ejecutarlas en ModelArts. Las imágenes personalizadas admiten parámetros de CLI y variables de entorno en formato de texto libre, con una alta flexibilidad para una amplia gama de motores de cómputo.
Escenarios de aplicación de imágenes preestablecidas
ModelArts ofrece un grupo de imágenes preestablecidas. Puede utilizar una imagen preestablecida para crear una instancia de notebook. Después de instalar y configurar dependencias en la instancia, cree una imagen personalizada. A continuación, puede utilizar directamente la imagen de ModelArts para los trabajos de entrenamiento sin ninguna adaptación. También puede usar imágenes preestablecidas para enviar trabajos de entrenamiento y crear aplicaciones de IA.
Recomendamos la versión de imagen preestablecida en función de sus requisitos de desarrollo y la estabilidad de la versión. Si su desarrollo se puede realizar con las versiones preestablecidas de ModelArts, por ejemplo, MindSpore 1.X, utilice las imágenes preestablecidas. Se han verificado completamente y tienen muchos paquetes de instalación de uso común, lo que le libera de la configuración del entorno.
Escenarios de aplicación de imágenes personalizadas
- Usar imágenes personalizadas en las instancias de notebook
Si las imágenes preestablecidas de las instancias de notebook no pueden cumplir los requisitos, puede crear una imagen personalizada instalando y configurando el software y otros datos requeridos por el entorno en una imagen preestablecida. A continuación, utilice la imagen personalizada para crear nuevas instancias de notebook.
- Usar una imagen personalizada para crear trabajos de entrenamiento
Si ha desarrollado un modelo o script de entrenamiento localmente pero ModelArts no admite el motor de IA, cree una imagen personalizada y súbala a SWR. A continuación, utilice esta imagen para crear un trabajo de entrenamiento sobre ModelArts y utilice los recursos proporcionados por ModelArts para entrenar modelos.
- Usar una imagen personalizada para crear aplicaciones de IA
Si ha desarrollado un modelo utilizando un motor de IA que no es compatible con ModelArts, para utilizar este modelo para crear aplicaciones de IA, haga lo siguiente: Cree una imagen personalizada, importe la imagen a ModelArts y utilícela para crear aplicaciones de IA. Las aplicaciones de IA creadas de esta manera pueden gestionarse de forma centralizada y desplegarse como servicios.
Servicios de imágenes personalizadas
Cuando se utiliza una imagen personalizada, pueden estar involucrados los siguientes servicios:
- SWR
Software Repository for Container (SWR) proporciona una gestión fácil, segura y confiable de las imágenes de contenedores a lo largo de su ciclo de vida, facilitando el despliegue de las aplicaciones en contenedores. Puede cargar, descargar y gestionar las imágenes de contenedores a través de la consola de SWR, las API de SWR o la CLI de la comunidad.
Sus imágenes personalizadas deben subirse a SWR. Las imágenes personalizadas utilizadas por ModelArts para entrenar o crear aplicaciones de IA se obtienen de la lista de gestión de servicios de SWR.
Figura 1 Obtención de imágenes
- OBS
Object Storage Service (OBS) es un servicio de almacenamiento en la nube optimizado para almacenar las cantidades masivas de datos. Proporciona capacidades de almacenamiento ilimitadas, seguras y altamente confiables con un costo relativamente bajo.
ModelArts intercambia datos con OBS. Puede almacenar datos en OBS.
- ECS
Un Elastic Cloud Server (ECS) es una unidad informática básica que consta de vCPUs, memoria, sistema operativo (SO) y discos de Elastic Volume Service (EVS). Después de crear un ECS, puede usarlo de manera similar a cómo usaría su PC local o servidor físico.
Puede crear una imagen personalizada en las instalaciones o en un ECS.
Cuando utiliza una imagen personalizada, es posible que ModelArts deba acceder a los servicios dependientes, como SWR y OBS. La imagen personalizada solo se puede utilizar una vez autorizado el acceso. Es una buena práctica utilizar una delegación para la autorización. Una vez configurada la delegación, los permisos para acceder a los servicios dependientes se delegan en ModelArts para que ModelArts pueda utilizar los servicios dependientes y realizar operaciones en los recursos en su nombre. Para obtener más información, véase Configuración de la autorización de acceso (configuración global).