Desarrollo de una Aplicación RAG con Amazon Aurora y Amazon Kendra

Elena Digital López

El avance de la inteligencia artificial generativa y los modelos de lenguaje grande (LLMs) está provocando una transformación significativa en diversas organizaciones, mejorando la experiencia del cliente de manera mucho más rápida que los métodos tradicionales, que a menudo requerían años de desarrollo. En este contexto, muchas organizaciones se encuentran con vastas cantidades de datos almacenados, ya sea en infraestructuras locales o en la nube.

Una estrategia eficaz para aprovechar la inteligencia artificial generativa es convertir estos datos existentes en un índice que pueda ser utilizado para su búsqueda. A diferencia de los resultados que se obtienen a partir de consultas a un LLM de código abierto, que solo devuelven información disponible públicamente, la inteligencia generativa tiene la capacidad de proporcionar un entendimiento más profundo de esos datos. Esto se logra complementando la información con contexto adicional gracias a métodos como la Generación Aumentada por Recuperación (RAG).

La RAG permite extraer datos de una base de conocimiento preexistente dentro de la organización y combinarlos con el conocimiento del LLM, generando respuestas que suenan más naturales y relevantes. Sin embargo, para que la inteligencia generativa comprenda adecuadamente los datos de una organización, es necesario preparar esa información, lo que puede suponer una curva de aprendizaje considerable.

En este sentido, Amazon Aurora, una base de datos relacional compatible con MySQL y PostgreSQL, ha sido creada con el objetivo de optimizar su uso en la nube. Aurora combina la eficacia y disponibilidad de las bases de datos empresariales tradicionales con la simplicidad y rentabilidad de las bases de datos de código abierto. Se presenta como una solución ideal para transformar los datos en un recurso útil para la inteligencia generativa.

Un ejemplo concreto de esta estrategia se encuentra en el uso de los datos existentes en Aurora como fuente para crear un servicio de búsqueda inteligente. Esto se realiza conectando y sincronizando la base de datos con Amazon Kendra, lo que permite realizar búsquedas generativas que hacen uso de RAG para generar respuestas precisas. Estas respuestas se basan en la combinación de los datos de la organización y el conocimiento proporcionado por los LLMs.

Los pasos para llevar a cabo esta implementación incluyen la creación de un clúster de Aurora PostgreSQL, la ingestión de datos en la base de datos, el establecimiento de un índice en Amazon Kendra, y la configuración de un conector de Aurora PostgreSQL en Kendra para vincular ambos sistemas. Una vez que el índice de Kendra está sincronizado con los datos de Aurora, se activa la búsqueda inteligente y la generación de respuestas mejoradas a través de la interacción con la inteligencia artificial.

La adopción de esta tecnología no solo disminuye la necesidad de preparar los datos previamente para su uso en servicios de búsqueda, sino que también acelera el desarrollo de aplicaciones de inteligencia generativa. Esto permite a las organizaciones avanzar en su transformación digital y optimizar sus servicios al cliente, constituyendo un avance significativo en la forma en que los datos pueden ser utilizados en el ámbito empresarial.