Amazon ha lanzado un servicio completamente gestionado llamado Amazon Bedrock, que ofrece una selección de modelos fundamentales de alto rendimiento de empresas líderes en inteligencia artificial, como AI21 Labs, Anthropic, Cohere, Meta, Mistral AI, Stability AI y Amazon, accesible a través de una única API. Este servicio también proporciona un conjunto amplio de capacidades necesarias para construir aplicaciones de inteligencia artificial generativa con seguridad, privacidad y prácticas responsables de IA.
Algunos de estos modelos están disponibles públicamente, permitiendo su personalización para casos de uso y dominios específicos. Sin embargo, implementar modelos personalizados de manera segura y escalable es una tarea compleja, debido a la selección del tipo de instancia y los parámetros de implementación necesarios para alojar modelos grandes.
Para enfrentar este desafío, AWS ha anunciado la vista previa del nuevo Amazon Bedrock Custom Model Import, una característica que permite importar modelos personalizados creados en otros entornos como Amazon SageMaker, Amazon EC2 y en instalaciones locales a Amazon Bedrock. Esta función simplifica el proceso de implementación a través de APIs sencillas para la implementación e invocación del modelo.
La capacidad para personalizar modelos fundamentales puede desbloquear un valor significativo al adaptar sus capacidades a dominios o tareas específicas. En esta oportunidad, se detalla el proceso de ajuste fino del modelo Meta Llama 3 8B en SageMaker para especializarlo en la generación de consultas SQL (texto a SQL). Meta Llama 3 8B es un modelo relativamente pequeño que equilibra rendimiento y eficiencia de recursos.
Los clientes de AWS han explorado el ajuste fino de Meta Llama 3 8B para la generación de consultas SQL, especialmente en dialectos SQL no estándar, y han solicitado métodos para importar sus modelos personalizados a Amazon Bedrock. Esto les permite beneficiarse de la infraestructura gestionada y la seguridad de Amazon Bedrock.
El proceso de personalización se divide en varios pasos: se invoca un trabajo de entrenamiento en SageMaker para ajustar el modelo con QLoRA y almacenar los pesos en Amazon S3. Una vez completado el ajuste fino, el usuario ejecuta el trabajo de importación de modelos usando la consola de Amazon Bedrock. El servicio inicia un trabajo de importación en una cuenta de implementación operada por AWS, copiando los artefactos del modelo de la cuenta del usuario a un bucket S3 gestionado por AWS. Una vez completada la importación, el modelo ajustado será accesible para su invocación.
Todos los datos permanecen en la región seleccionada de AWS, utilizando un punto final VPC, y es posible cifrar los datos del modelo con claves propias de Amazon Key Management Service (AWS KMS). Los scripts para el ajuste fino y la evaluación están disponibles en el repositorio de GitHub de Amazon Bedrock.
La importación del modelo ajustado en Amazon Bedrock se culmina configurando varias opciones en la consola del servicio, importando los datos almacenados en S3 y asegurándose de que el modelo cumpla con los parámetros soportados. Una evaluación del modelo ajustado mostró un rendimiento superior, generando SQL correctos en la mayoría de los casos.
Este lanzamiento y sus capacidades de personalización proporcionan una herramienta poderosa para científicos de datos y desarrolladores de aplicaciones que buscan implementar modelos de IA generativa a escala, permitiendo operaciones más eficientes y seguras. Explorando las mejores prácticas y metodologías proporcionadas, los usuarios pueden maximizar el potencial de modelos ajustados para tareas específicas como la generación de código.