Implementación de aplicaciones generativas basadas en RAG en AWS con Amazon FSx para NetApp ONTAP y Amazon Bedrock

Elena Digital López

Las aplicaciones de inteligencia artificial generativa (IA generativa) se desarrollan comúnmente utilizando una técnica llamada Generación Aumentada por Recuperación (RAG). Este método permite que los modelos base (FMs) accedan a datos adicionales, no disponibles durante el entrenamiento, para enriquecer el contexto de las respuestas generadas, mejorando la precisión y transparencia sin necesidad de reentrenar continuamente el modelo, además de minimizar posibles errores.

En este contexto, se presenta una solución que utiliza Amazon FSx para NetApp ONTAP junto con Amazon Bedrock, para proporcionar una experiencia RAG en aplicaciones de IA generativa en AWS. Esta innovación permite traer la información no estructurada específica de la empresa a Amazon Bedrock de manera rápida y segura. Emplea un sistema de archivos FSx for ONTAP como fuente de datos no estructurados y actualiza continuamente una base de datos vectorial Amazon OpenSearch Serverless con los archivos, carpetas y metadatos del usuario. Esto permite enriquecer los prompts de la IA generativa utilizando APIs de Amazon Bedrock con datos específicos de la empresa recuperados de la base de datos vectorial de OpenSearch.

Uno de los desafíos en el desarrollo de aplicaciones de IA generativa, como los chatbots de preguntas y respuestas, es garantizar la seguridad de los datos y prevenir consultas a fuentes no autorizadas. La solución presentada utiliza FSx for ONTAP para extender los mecanismos de seguridad de datos y acceso, aumentando las respuestas de modelos en Amazon Bedrock. Utilizando FSx for ONTAP como fuente de metadatos asociados, específicamente las configuraciones de la lista de control de acceso (ACL) de los usuarios, se muestra cómo garantizar que Amazon Bedrock use solo datos autorizados para usuarios específicos conectados a la aplicación de IA generativa.

Los servicios serverless de AWS facilitan la construcción de aplicaciones de IA generativa, proporcionando escalabilidad automática, alta disponibilidad y un modelo de facturación basado en el uso. La computación impulsada por eventos con AWS Lambda es adecuada para tareas intensivas en computación bajo demanda y orquestación flexible de grandes modelos de lenguaje. Además, Amazon API Gateway ofrece una interfaz API que permite front-ends enchufables e invocación por eventos de los modelos.

La solución implementa un sistema de archivos FSx for ONTAP Multi-AZ con una máquina virtual de almacenamiento (SVM) vinculada a un dominio AWS Managed Microsoft AD. Utiliza una colección de búsqueda vectorial en OpenSearch Serverless que proporciona capacidad de búsqueda de alta performance. También incluye el uso de servidores Amazon Elastic Compute Cloud (Amazon EC2) para gestionar el acceso al almacenamiento y las ACLs, mientras que el componente de contenedor de embeddings migra periódicamente archivos y carpetas existentes con sus configuraciones de ACL a OpenSearch Serverless.

Los usuarios interactúan con la solución enviando un prompt en lenguaje natural a través de una aplicación de chatbot o directamente mediante la interfaz de API Gateway. La aplicación de chatbot está construida usando Streamlit y gestionada por un AWS Application Load Balancer (ALB), demostrando accesos basados en permisos utilizando ACLs de Windows configuradas para cada documento.

Para implementar esta solución, es necesario clonar el repositorio disponible en GitHub y usar la plantilla Terraform para provisionar todos los componentes con sus configuraciones. El proceso completo puede tardar de 15 a 20 minutos y se puede realizar siguiendo los pasos indicados. Finalmente, para evitar cargos adicionales, se recomienda limpiar la cuenta AWS una vez finalizadas las pruebas, eliminando la plantilla Terraform.

En resumen, esta solución con FSx for ONTAP y Amazon Bedrock permite construir aplicaciones de IA generativa que responden de manera precisa y segura usando datos específicos de la empresa. Los servicios serverless de AWS facilitan la escalabilidad automática y la computación impulsada por eventos, brindando una infraestructura robusta para aplicaciones de IA generativa.

Scroll al inicio