Utilice modelos básicos de IA generativos en modo VPC sin conexión a Internet con Amazon SageMaker JumpStart | Servicios web de Amazon

Utilice modelos básicos de IA generativos en modo VPC sin conexión a Internet con Amazon SageMaker JumpStart | Servicios web de Amazon

Con los recientes avances en IA generativa, hay muchas discusiones sobre cómo usar la IA generativa en diferentes industrias para resolver problemas comerciales específicos. La IA generativa es un tipo de IA que puede crear nuevos contenidos e ideas, incluidas conversaciones, historias, imágenes, videos y música. Todo está respaldado por modelos muy grandes que están entrenados previamente en grandes cantidades de datos y comúnmente se les conoce como modelos de cimentación (FM). Estos FM pueden realizar una amplia gama de tareas que abarcan múltiples dominios, como escribir publicaciones de blog, generar imágenes, resolver problemas matemáticos, entablar diálogos y responder preguntas basadas en un documento. El tamaño y la naturaleza de propósito general de los FM los hacen diferentes de los modelos de ML tradicionales, que normalmente realizan tareas específicas, como analizar texto en busca de sentimiento, clasificar imágenes y pronosticar tendencias.

Si bien las organizaciones buscan utilizar el poder de estos FM, también quieren que las soluciones basadas en FM se ejecuten en sus propios entornos protegidos. Las organizaciones que operan en espacios muy regulados, como los servicios financieros globales y las ciencias de la salud y la vida, tienen requisitos de auditoría y cumplimiento para ejecutar su entorno en sus VPC. De hecho, muchas veces, incluso el acceso directo a Internet está deshabilitado en estos entornos para evitar la exposición a cualquier tráfico no deseado, tanto de entrada como de salida.

JumpStart de Amazon SageMaker es un centro de ML que ofrece algoritmos, modelos y soluciones de ML. Con SageMaker JumpStart, los profesionales de ML pueden elegir entre una lista cada vez mayor de FM de código abierto con mejor rendimiento. También proporciona la capacidad de implementar estos modelos en su propio Nube privada virtual (VPC).

En esta publicación, demostramos cómo usar JumpStart para implementar un Flan-T5 XXL modelo en una VPC sin conexión a Internet. Discutimos los siguientes temas:

  • Cómo implementar un modelo base con SageMaker JumpStart en una VPC sin acceso a Internet
  • Ventajas de implementar FM a través de modelos SageMaker JumpStart en modo VPC
  • Formas alternativas de personalizar la implementación de modelos de base a través de JumpStart

Además de FLAN-T5 XXL, JumpStart ofrece muchos modelos de base diferentes para diversas tareas. Para ver la lista completa, consulte Primeros pasos con Amazon SageMaker JumpStart.

Resumen de la solución

Como parte de la solución, cubrimos los siguientes pasos:

  1. Configure una VPC sin conexión a Internet.
  2. Preparar Estudio Amazon SageMaker utilizando la VPC que creamos.
  3. Implemente el modelo base generativo AI Flan T5-XXL mediante JumpStart en la VPC sin acceso a Internet.

El siguiente es un diagrama de arquitectura de la solución.

sol-arco

Veamos los diferentes pasos para implementar esta solución.

Requisitos previos

Para seguir junto con esta publicación, necesita lo siguiente:

Configurar una VPC sin conexión a Internet

Crear una nueva pila de CloudFormation mediante el uso de la 01_redes.yaml plantilla. Esta plantilla crea una nueva VPC y agrega dos subredes privadas en dos zonas de disponibilidad sin conectividad a Internet. A continuación, implementa puntos de enlace de la VPC de puerta de enlace para acceder Servicio de almacenamiento simple de Amazon (Amazon S3) y puntos de enlace de la VPC de interfaz para SageMaker y algunos otros servicios para permitir que los recursos de la VPC se conecten a los servicios de AWS a través de Enlace privado de AWS.

Proporcione un nombre de pila, como No-Internety complete el proceso de creación de la pila.

VPC-stack-entrada

Esta solución no tiene una alta disponibilidad porque la plantilla de CloudFormation crea puntos de enlace de la VPC de interfaz solo en una subred para reducir los costos al seguir los pasos de esta publicación.

Configurar Studio usando la VPC

Cree otra pila de CloudFormation usando 02_sagemaker_studio.yaml, que crea un dominio de Studio, un perfil de usuario de Studio y recursos de apoyo, como roles de IAM. Elija un nombre para la pila; para esta publicación, usamos el nombre SageMaker-Studio-VPC-No-Internet. Proporcione el nombre de la pila de VPC que creó anteriormente (No-Internet) como el CoreNetworkingStackName parámetro y dejar todo lo demás por defecto.

estudio-cfn-pila-entrada

Espere hasta que AWS CloudFormation informe que se completó la creación de la pila. Puede confirmar que el dominio de Studio está disponible para su uso en la consola de SageMaker.

inicio de dominio

Para verificar que el usuario del dominio de Studio no tiene acceso a Internet, inicie Studio con la consola de SageMaker. Escoger Archive, Nuevoy terminal, luego intente acceder a un recurso de Internet. Como se muestra en la siguiente captura de pantalla, el terminal seguirá esperando el recurso y, finalmente, se agotará el tiempo de espera.

terminal de estudio

Esto prueba que Studio está operando en una VPC que no tiene acceso a Internet.

Implemente el modelo básico de IA generativa Flan T5-XXL con JumpStart

Podemos implementar este modelo a través de Studio y API. JumpStart proporciona todo el código para implementar el modelo a través de un cuaderno de SageMaker al que se puede acceder desde Studio. Para esta publicación, mostramos esta capacidad de Studio.

  • En la página de bienvenida de Studio, seleccione Buen inicio bajo soluciones Preconstruidas y automatizadas.

estudio-bienvenida-pagina

  • Elija el modelo Flan-T5 XXL debajo Modelos de cimientos.

js-model-hub

  • Por defecto, abre el Despliegue pestaña. Ampliar la Configuración de implementación sección para cambiar la hosting instance y endpoint nameo agregue cualquier etiqueta adicional. También hay una opción para cambiar el S3 bucket location donde se almacenará el artefacto del modelo para crear el punto final. Para esta publicación, dejamos todo en sus valores predeterminados. Tome nota del nombre del punto final que se usará al invocar el punto final para hacer predicciones.

desplegar-js

  • Ampliar la opción Configuración de seguridad sección, donde se puede especificar el IAM role para crear el punto final. También puede especificar el VPC configurations proporcionando el subnets y security groups. Los ID de subred y los ID de grupo de seguridad se pueden encontrar en la pestaña Salidas de la pila de VPC en la consola de AWS CloudFormation. SageMaker JumpStart requiere al menos dos subredes como parte de esta configuración. Las subredes y los grupos de seguridad controlan el acceso hacia y desde el contenedor del modelo.

js-deploy-seguridad-configuraciones

NOTA: Independientemente de si el modelo JumpStart de SageMaker se implementa en la VPC o no, el modelo siempre se ejecuta en modo de aislamiento de red, lo que aísla el contenedor del modelo para que no se puedan realizar llamadas de red entrantes o salientes hacia o desde el contenedor del modelo. Debido a que usamos una VPC, SageMaker descarga el artefacto del modelo a través de nuestra VPC especificada. Ejecutar el contenedor del modelo en aislamiento de red no evita que su terminal de SageMaker responda a las solicitudes de inferencia. Un proceso de servidor se ejecuta junto con el contenedor del modelo y le reenvía las solicitudes de inferencia, pero el contenedor del modelo no tiene acceso a la red.

  • Elige Despliegue para desplegar el modelo. Podemos ver el estado casi en tiempo real de la creación del punto final en curso. La creación del punto final puede tardar entre 5 y 10 minutos en completarse.

js-deploy-progreso

Observar el valor del campo. Ubicación de los datos del modelo en esta página. Todos los modelos JumpStart de SageMaker están alojados en un depósito de S3 administrado por SageMaker (s3://jumpstart-cache-prod-{region}). Por lo tanto, independientemente del modelo que se elija de JumpStart, el modelo se implementa desde el depósito SageMaker JumpStart S3 de acceso público y el tráfico nunca se dirige a las API del zoológico de modelos públicos para descargar el modelo. Esta es la razón por la cual la creación del punto de enlace del modelo comenzó correctamente incluso cuando creamos el punto de enlace en una VPC que no tiene acceso directo a Internet.

El artefacto del modelo también se puede copiar en cualquier zoológico de modelos privado o en su propio depósito de S3 para controlar y proteger aún más la ubicación de la fuente del modelo. Puede usar el siguiente comando para descargar el modelo localmente usando el Interfaz de línea de comandos de AWS (CLI de AWS):

aws s3 cp s3://jumpstart-cache-prod-eu-west-1/huggingface-infer/prepack/v1.0.2/infer-prepack-huggingface-text2text-flan-t5-xxl.tar.gz .
  • Después de unos minutos, el punto final se crea correctamente y muestra el estado como En servicio. Escoger Open Notebook existentes Use Endpoint from Studio sección. Este es un cuaderno de muestra proporcionado como parte de la experiencia JumpStart para probar rápidamente el punto final.

jumpstart-deploy-completar

  • En el cuaderno, elige la imagen como Ciencia de datos 3.0 y el núcleo como 3 Python. Cuando el kernel esté listo, puede ejecutar las celdas del cuaderno para hacer predicciones sobre el punto final. Tenga en cuenta que el portátil utiliza el invoke_endpoint () API de la AWS SDK para Python para hacer predicciones. Como alternativa, puede utilizar el SageMaker Python SDK predice() método para lograr el mismo resultado.

ejecutar-implementar-notebook-jumpstart

Esto concluye los pasos para implementar el modelo Flan-T5 XXL utilizando JumpStart dentro de una VPC sin acceso a Internet.

Ventajas de implementar modelos JumpStart de SageMaker en modo VPC

Las siguientes son algunas de las ventajas de implementar modelos JumpStart de SageMaker en modo VPC:

  • Debido a que SageMaker JumpStart no descarga los modelos de un zoológico de modelos público, también se puede usar en entornos totalmente bloqueados donde no hay acceso a Internet.
  • Debido a que el acceso a la red se puede limitar y reducir el alcance de los modelos SageMaker JumpStart, esto ayuda a los equipos a mejorar la postura de seguridad del entorno.
  • Debido a los límites de VPC, el acceso al punto final también se puede limitar a través de subredes y grupos de seguridad, lo que agrega una capa adicional de seguridad.

Formas alternativas de personalizar la implementación de modelos básicos a través de SageMaker JumpStart

En esta sección, compartimos algunas formas alternativas de implementar el modelo.

Use las API JumpStart de SageMaker desde su IDE preferido

Los modelos proporcionados por SageMaker JumpStart no requieren que acceda a Studio. Puede implementarlos en puntos finales de SageMaker desde cualquier IDE, gracias a la API JumpStart. Puede omitir el paso de configuración de Studio discutido anteriormente en esta publicación y usar las API de JumpStart para implementar el modelo. Estas API proporcionan argumentos donde también se pueden proporcionar configuraciones de VPC. Las API son parte de la SDK de SageMaker Python sí mismo. Para obtener más información, consulte Modelos pre-entrenados.

Utilice cuadernos proporcionados por SageMaker JumpStart de SageMaker Studio

SageMaker JumpStart también proporciona cuadernos para implementar el modelo directamente. En la página de detalles del modelo, seleccione Cuaderno abierto para abrir un bloc de notas de muestra que contiene el código para implementar el punto final. El cuaderno utiliza API de la industria JumpStart de SageMaker que le permiten enumerar y filtrar los modelos, recuperar los artefactos e implementar y consultar los puntos finales. También puede editar el código del cuaderno según los requisitos específicos de su caso de uso.

abrir-jumpstart-cuaderno

Limpiar recursos

Primero eche un vistazo al sitio web de la página LIMPIEZA.md para encontrar pasos detallados para eliminar Studio, VPC y otros recursos creados como parte de esta publicación.

Solucionando Problemas

Si encuentra algún problema al crear las pilas de CloudFormation, consulte Solución de problemas de CloudFormation.

Conclusión

La IA generativa impulsada por grandes modelos de lenguaje está cambiando la forma en que las personas adquieren y aplican conocimientos de la información. Sin embargo, las organizaciones que operan en espacios fuertemente regulados deben utilizar las capacidades de IA generativa de una manera que les permita innovar más rápido pero que también simplifique los patrones de acceso a tales capacidades.

Lo alentamos a que pruebe el enfoque proporcionado en esta publicación para incorporar capacidades de IA generativa en su entorno existente y al mismo tiempo mantenerlo dentro de su propia VPC sin acceso a Internet. Para obtener más información sobre los modelos básicos de SageMaker JumpStart, consulte lo siguiente:


Sobre los autores

Utilice modelos básicos de IA generativa en modo VPC sin conectividad a Internet mediante Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Inteligencia de datos. Búsqueda vertical. Ai.vikesh pandey es un arquitecto de soluciones especializado en aprendizaje automático en AWS, que ayuda a los clientes de las industrias financieras a diseñar y crear soluciones en inteligencia artificial y aprendizaje automático generativos. Fuera del trabajo, a Vikesh le gusta probar diferentes cocinas y practicar deportes al aire libre.

Utilice modelos básicos de IA generativa en modo VPC sin conectividad a Internet mediante Amazon SageMaker JumpStart | Amazon Web Services PlatoBlockchain Inteligencia de datos. Búsqueda vertical. Ai. Mehran Nikoo es arquitecto sénior de soluciones en AWS, trabaja con empresas nativas digitales en el Reino Unido y las ayuda a lograr sus objetivos. Apasionado por aplicar su experiencia en ingeniería de software al aprendizaje automático, se especializa en prácticas de MLOps y aprendizaje automático de extremo a extremo.

Sello de tiempo:

Mas de Aprendizaje automático de AWS