En este tutorial vas a construir un chatbot de gran modelo de lenguaje (LLM) que emplea un patrón conocido como Generación Aumentada por Recuperación (RAG).

Los chatbots construidos con RAG pueden superar algunas de las limitaciones que tienen los modelos conversacionales de propósito general como ChatGPT. En individuo, pueden debatir y responder preguntas sobre:

  • Información privada para tu organización.
  • Eventos que no formaban parte del conjunto de datos de entrenamiento, o que ocurrieron después de que el LLM terminara la formación.

Como beneficio adicional, RAG ayuda a "anclar" los LLM con hechos, haciendo que sean menos propensos a inventar una respuesta o a "alucinar".

El secreto para lograr esto es emplear un proceso de dos pasos para obtener una respuesta del LLM:

  • Primero, en la Fase de Recuperación, se buscan una o más fuentes de datos para la consulta del usuario. Se recuperan los documentos relevantes que se encuentran en esta búsqueda. Emplear un índice de Elasticsearch para esto es una gran opción, ya que te permite elegir entre métodos de búsqueda vectorial por palabra clave, métodos de búsqueda vectorial densa y dispersa, o incluso una combinación híbrida de ellos.
  • Luego, en la Fase de Generación, el prompt del usuario se amplía para incluir los documentos recuperados en la primera fase, con instrucciones agregadas al LLM para encontrar la respuesta a la pregunta del usuario en la información recuperada. El prompt ampliado, incluyendo el contexto agregado para la pregunta, es lo que se envía al LLM en lugar de la consulta original.

Estructura del tutorial

Este tutorial está estructurado en dos partes principales.

En la primera parte, aprenderás a ejecutar el ejemplo de la aplicación Chatbot RAG , una aplicación completa que incluye un backend en Python y un front-end React.

Una vez que tengas la aplicación de ejemplo en funcionamiento, la segunda parte de este tutorial explica los diferentes componentes de la implementación de RAG, para que puedas adaptar el código de ejemplo a tus propias necesidades.

Próximo

Requisitos

¿Estás listo para crear experiencias de búsqueda de última generación?

No se logra una búsqueda suficientemente avanzada con los esfuerzos de uno. Elasticsearch está impulsado por científicos de datos, operaciones de ML, ingenieros y muchos más que son tan apasionados por la búsqueda como tú. Conectemos y trabajemos juntos para crear la experiencia mágica de búsqueda que te dará los resultados que deseas.

Pruébalo tú mismo