Elasticsearch: Construye una app de chatbot RAG
Visión general
Introducción
En esta guía, comenzarás a configurar y ejecutar una app de chatbot RAG. RAG significa generación aumentada de recuperación. Es un método de usar una fuente de datos personalizada para basar las respuestas de los modelos de lenguaje grande (LLM) de AI generativa (GenAI) para prevenir problemas como alucinaciones de LLM. Este viaje recorre el proceso de cómo configurar y ejecutar la app de chatbot RAG de ejemplo de Elastic para que puedas verla en acción por ti mismo.
Esta app de chatbot RAG es open source y está hospedada en GitHub, por lo que puedes clonarla, bifurcarla y crear tu propia versión. La app usa Elastic Cloud para hospedar un índice de Elasticsearch que sirve como la "fuente de veracidad" de aumento de recuperación para la app RAG. Esto garantiza que las respuestas que genera se basan en la información de los documentos contenidos en el índice. La app de chatbot está codificada para admitir los múltiples servicios populares de LLM como OpenAI. La arquitectura de la app se basa en un backend de Python Flask y un frontend de React. Consulta la lista completa de requisitos de la app en el tutorial de chatbot de Elasticsearch Labs.
La app de chatbot RAG es una excelente manera de aprender y experimentar con las apps RAG porque puedes ejecutarla en tu computadora local y ver de primera mano cómo las integraciones con Elastic Cloud y los LLM trabajan juntas para crear una experiencia de búsqueda impulsada por GenAI que se personaliza para tu conjunto único de documentos. La app admite la integración con una variedad de LLM, como OpenAI, AWS Bedrock, Azure OpenAI, Google Vertex AI, Mistral AI y Cohere. Hay dos formas de desplegar la aplicación de chatbot RAG de ejemplo en tu computadora local: usando Docker o Python.
Comencemos
Ejecutar la aplicación de chatbot RAG
Sigue los pasos de las secciones Ejecutar la app de chatbot con Docker o Ejecutar la app de chatbot con Python que se encuentran a continuación, según tu enfoque de despliegue preferido. El uso de Docker requiere menos pasos, mientras que el uso de Python proporciona una comprensión más profunda de cómo configurar y ejecutar los componentes de backend y frontend de la app. Ambas formas de ejecutar la app usan OpenAI como LLM. Una vez que la app se ejecuta con OpenAI, actualizar la app para usar uno de los otros LLM compatibles requiere pasos mínimos.
Ejecutar la app de chatbot con Docker
El proceso de ejecutar la app de chatbot RAG con Docker implica:
- Clonar el código de la app
- Crear un despliegue de Elastic Cloud
- Crear una clave API de OpenAI
- Completar la configuración de la app
Sigue este recorrido guiado que incluye todos los pasos necesarios para alcanzar el objetivo de ejecutar la app en tu computadora local:
Recorrido guiado: Ejecutar la aplicación de chatbot RAG con OpenAI mediante Docker
Ejecuta la app de chatbot con Python
El proceso de ejecución de la app de chatbot RAG con Python implica:
- Clonar el código de la app
- Crear un despliegue de Elastic Cloud
- Crear una clave API de OpenAI
- Completar la configuración de la app
Una vez configuradas la app y sus dependencias, se iniciará el backend de Python de la app. Luego, se iniciará el frontend de React para proporcionar la UI de la app, con la que podrás interactuar en tu navegador.
Sigue este recorrido guiado que incluye todos los pasos necesarios para alcanzar el objetivo de ejecutar la app en tu computadora local:
Recorrido guiado: Ejecutar la aplicación de chatbot RAG con OpenAI mediante Python
Trabajar con Elasticsearch
Jugar con la app en ejecución
Una vez que tengas la app ejecutándose, prueba a hacer una pregunta o a usar una de las preguntas preconfiguradas. La app está codificada para incluir un índice Elastic que ingesta el historial de tus chats, por lo que debes intentar hacer preguntas de seguimiento que pongan a prueba la "memoria" del chatbot.

Pasos siguientes
Gracias por tomarte el tiempo de aprender sobre el proceso de ejecutar la app de chatbot RAG de Elastic de ejemplo. A medida que inicias tu recorrido con Elastic, debes comprender algunos componentes operativos, de seguridad y de datos que deberías gestionar como usuario al desplegarlo en todo el entorno.
¿Listo para comenzar? Activa una prueba gratuita de 14 días en Elastic Cloud.