Nos complace anunciar una versión simplificada del Inicio rápido de Amazon SageMaker SDK que simplifica la creación, el entrenamiento y la implementación de modelos básicos. El código de predicción también está simplificado. En esta publicación, demostramos cómo puede usar el SDK Jumpstart de SageMaker simplificado para comenzar a usar modelos básicos en solo un par de líneas de código.
Para obtener más información sobre el SDK JumpStart de SageMaker simplificado para implementación y capacitación, consulte Implementación de código bajo con la clase JumpStartModel y Ajuste de código bajo con la clase JumpStartEstimatorrespectivamente.
Descripción general de la solución
SageMaker JumpStart proporciona modelos de código abierto previamente entrenados para una amplia gama de tipos de problemas para ayudarle a comenzar con el aprendizaje automático (ML). Puede entrenar y ajustar progresivamente estos modelos antes de su implementación. JumpStart también proporciona plantillas de soluciones que configuran la infraestructura para casos de uso comunes y cuadernos de ejemplo ejecutables para ML con Amazon SageMaker. Puede acceder a los modelos, plantillas de soluciones y ejemplos previamente entrenados a través de la página de inicio de SageMaker JumpStart en Amazon SageMaker Estudio o utilice el SDK de SageMaker Python.
Para demostrar las nuevas funciones del SDK JumpStart de SageMaker, le mostramos cómo utilizar el software previamente entrenado. Flan T5 XL modelo de Hugging Face para generación de texto para tareas de resumen. También mostramos cómo, con solo unas pocas líneas de código, puede ajustar el modelo Flan T5 XL para tareas de resumen. Puede utilizar cualquier otro modelo para la generación de texto como llama2, Halcóno Mistral AI.
Puede encontrar el cuaderno para esta solución utilizando Flan T5 XL en la repositorio de GitHub.
Implementar e invocar el modelo.
Los modelos de Foundation alojados en SageMaker JumpStart tienen ID de modelo. Para obtener la lista completa de ID de modelo, consulte Algoritmos integrados con tabla modelo previamente entrenada. Para esta publicación, utilizamos el ID del modelo de generación de texto Flan T5 XL. Creamos una instancia del objeto modelo y lo implementamos en un punto final de SageMaker llamando a su deploy método. Vea el siguiente código:
A continuación, invocamos el modelo para crear un resumen del texto proporcionado utilizando el modelo Flan T5 XL. La nueva interfaz del SDK hace que sea sencillo invocar el modelo: solo necesita pasar el texto al predictor y éste devuelve la respuesta del modelo como un diccionario de Python.
El siguiente es el resultado de la tarea de resumen:
Ajustar e implementar el modelo
El SDK JumpStart de SageMaker le proporciona una nueva clase, JumpStartEstimator, lo que simplifica el ajuste. Puede proporcionar la ubicación de los datos de ajuste y, opcionalmente, también pasar conjuntos de datos de validación. Después de ajustar el modelo, utilice el método de implementación del objeto Estimador para implementar el modelo ajustado:
Personalice las nuevas clases en SageMaker SDK
El nuevo SDK simplifica la implementación y el ajuste de los modelos JumpStart al establecer muchos parámetros predeterminados. Aún tiene la opción de anular los valores predeterminados y personalizar la implementación y la invocación según sus requisitos. Por ejemplo, puede personalizar el tipo de formato de carga útil de entrada, el tipo de instancia, la configuración de VPC y más para su entorno y caso de uso.
El siguiente código muestra cómo anular el tipo de instancia al implementar su modelo:
El SDK JumpStart de SageMaker deploy La función seleccionará automáticamente un tipo de contenido y un serializador predeterminados para usted. Si desea cambiar el tipo de formato de la carga útil de entrada, puede utilizar serializers y content_types objetos para hacer una introspección de las opciones disponibles para usted pasando el model_id del modelo con el que estás trabajando. En el siguiente código, configuramos el formato de entrada de carga útil como JSON configurando JSONSerializer como serializer y application/json como content_type:
A continuación, puede invocar el modelo Flan T5 XL para la tarea de resumen con una carga útil en formato JSON. En el siguiente código, también pasamos parámetros de inferencia en la carga útil JSON para que las respuestas sean más precisas:
Si está buscando más formas de personalizar las entradas y otras opciones de alojamiento y ajuste, consulte la documentación de JumpStartModelo y Estimador JumpStart clases.
Conclusión
En esta publicación, le mostramos cómo puede utilizar el SDK JumpStart de SageMaker simplificado para crear, entrenar e implementar modelos básicos y basados en tareas en solo unas pocas líneas de código. Demostramos las nuevas clases como JumpStartModel y JumpStartEstimator usando el modelo Hugging Face Flan T5-XL como ejemplo. Puede utilizar cualquiera de los otros modelos básicos de SageMaker JumpStart para casos de uso como redacción de contenido, generación de código, respuesta a preguntas, resumen, clasificación, recuperación de información y más. Para ver la lista completa de modelos disponibles con SageMaker JumpStart, consulte Algoritmos integrados con tabla modelo previamente entrenada. SageMaker JumpStart también es compatible modelos de tareas específicas para muchos tipos de problemas populares.
Esperamos que la interfaz simplificada de SageMaker JumpStart SDK le ayude a empezar rápidamente y le permita realizar entregas más rápido. ¡Esperamos escuchar cómo utiliza el SDK JumpStart simplificado de SageMaker para crear aplicaciones interesantes!
Sobre los autores
Evan Kravitz es ingeniero de software en Amazon Web Services y trabaja en SageMaker JumpStart. Está interesado en la confluencia del aprendizaje automático con la computación en la nube. Evan recibió su licenciatura de la Universidad de Cornell y su maestría de la Universidad de California, Berkeley. En 2021, presentó un artículo sobre redes neuronales adversarias en la conferencia ICLR. En su tiempo libre, Evan disfruta cocinar, viajar y salir a correr por la ciudad de Nueva York.
Rachna Chadha es arquitecto principal de soluciones AI/ML en Cuentas Estratégicas en AWS. Rachna es una optimista que cree que el uso ético y responsable de la IA puede mejorar la sociedad en el futuro y generar prosperidad económica y social. En su tiempo libre, a Rachna le gusta pasar tiempo con su familia, hacer senderismo y escuchar música.
Jonathan Guinea es ingeniero de software sénior en Amazon SageMaker JumpStart en AWS. Obtuvo su maestría en la Universidad de Columbia. Sus intereses abarcan el aprendizaje automático, los sistemas distribuidos y la computación en la nube, además de democratizar el uso de la IA. Jonathan es originario de Francia y ahora vive en Brooklyn, Nueva York.
Dr. Ashish Khetan es un científico aplicado senior con algoritmos integrados de Amazon SageMaker y ayuda a desarrollar algoritmos de aprendizaje automático. Obtuvo su doctorado en la Universidad de Illinois Urbana-Champaign. Es un investigador activo en aprendizaje automático e inferencia estadística, y ha publicado numerosos artículos en conferencias NeurIPS, ICML, ICLR, JMLR, ACL y EMNLP.