Ir al contenido principal
Versión: 2.0.0

PDF Preguntas y respuestas con Gaia y Qdrant

Gaia PDF RAG es una aplicación de generación mejorada de recuperación (RAG) que permite a los usuarios hacer preguntas sobre documentos PDF utilizando un nodo local de Gaia y una base de datos vectorial Qdrant. Combina la potencia de los LLM locales con una búsqueda vectorial eficiente para ofrecer respuestas precisas y adaptadas al contexto.

pdf-rag-image-1 pdf-rag-image-2 pdf-rag-image-3 pdf-rag-image-4 pdf-rag-image-5

información

El código fuente completo y las instrucciones detalladas para configurar y ejecutar este ejemplo se pueden encontrar en el repositorio Gaia Cookbook.

Lo que puedes aprender y construir:

Explorando y adaptando este ejemplo, puedes aprender a:

  • Procesar y trocear documentos PDF: Comprenda los pasos necesarios para dividir archivos PDF en segmentos manejables para una recuperación eficaz.
  • Implemente la búsqueda semántica con Qdrant: Descubra cómo aprovechar una base de datos vectorial para realizar búsquedas eficientes y contextualizadas de sus documentos.
  • Integración de LLM locales a través de Gaia: Aprenda a conectarse a su nodo local de Gaia para utilizar la potencia de los modelos lingüísticos alojados localmente para la respuesta a preguntas.
  • Mejore la relevancia con la reordenación de codificadores cruzados: Descubra técnicas para refinar los resultados de búsqueda y mejorar la precisión de la información recuperada.
  • Proporcione una experiencia de usuario fluida con respuestas en tiempo real: Implemente respuestas en tiempo real para los usuarios a medida que se genera la respuesta.
  • Garantice la fiabilidad con citas inteligentes de las fuentes: Aprenda a proporcionar referencias claras a los documentos fuente de cada respuesta.
  • Mitigar las alucinaciones con el filtrado de relevancia: Explore estrategias para filtrar la información irrelevante y reducir la probabilidad de respuestas inexactas.
  • Cree un robot de preguntas y respuestas personalizable para PDF: Este ejemplo proporciona una base sólida para que pueda adaptar e implementar su propio sistema de respuesta a preguntas para documentos o colecciones PDF específicos.

Características clave demostradas:

  • Procesamiento y fragmentación de documentos PDF: Maneja eficientemente la extracción y segmentación de contenido de archivos PDF.
  • 🔍 Búsqueda semántica con Qdrant: Leverages vector embeddings for intelligent retrieval of relevant document parts.
  • 🤖 Integración LLM local a través del nodo Gaia: Se conecta a su LLM localmente en ejecución para generar respuestas basadas en el contexto recuperado.
  • Reordenación de codificadores cruzados para mejorar la relevancia: Optimiza los resultados de búsqueda aplicando un modelo de clasificación más sofisticado.
  • 💨 Respuestas en streaming para una mejor UX: Proporciona una experiencia de usuario más interactiva y receptiva.
  • 🎯 Cita inteligente de las fuentes: Indica claramente los documentos fuente utilizados para generar cada respuesta.
  • Filtrado de relevancia para evitar alucinaciones: Aumenta la fiabilidad de las respuestas filtrando la información menos relevante.

Cómo empezar:

Requisitos previos

Antes de ejecutar Gaia RAG, asegúrese de tener:

  1. Un nodo Gaia local en ejecución (Consulta este enlace para aprender a ejecutar tu propio LLM local: https://docs.gaianet.ai/node-guide/quick-start)
  2. Servidor Qdrant en funcionamiento
  3. Python 3.8+
  4. Bibliotecas de sistema necesarias para el procesamiento de PDF

Instalación

  1. Clonar el repositorio:
git clone https://github.com/harishkotra/gaia-pdf-rag.git
cd gaia-pdf-rag
  1. Crear un entorno virtual:
python -m venv venv
source venv/bin/activate # En Windows use: venv\Scripts\activate
  1. Instalar dependencias:
pip install -r requisitos.txt

Configuración de componentes

1. Nodo Gaia

Inicie su nodo Gaia local:

gaianet init
inicio de gaianet

2. Servidor Qdrant

Inicie Qdrant usando Docker:

docker run -d -p 6333:6333 -p 6334:6334 \
-v $(pwd)/qdrant_storage:/qdrant/storage \
qdrant/qdrant

Ejecutar la aplicación

  1. Asegúrate de que tanto el nodo Gaia como Qdrant están funcionando

  2. Inicia la aplicación Streamlit:

streamlit run app.py
  1. Abra su navegador en http://localhost:8501

Utilización

  1. Cargar un documento PDF mediante la barra lateral
  2. Haga clic en "Procesar documento" para indexarlo
  3. Haga preguntas en el campo de entrada principal
  4. Ver las respuestas y los documentos fuente pertinentes

Configuración

Puede modificar los siguientes parámetros en app.py:

  • GAIA_NODE_URL: URL de su nodo Gaia local
  • QDRANT_HOST: Servidor host Qdrant
  • PUERTO_QDRANT: Puerto del servidor Qdrant
  • VECTOR_SIZE: Tamaño de la dimensión de incrustación
  • NOMBRE_COLECCIÓN: Nombre de la colección de bases de datos vectoriales

Estructura del proyecto

gaia-pdf-rag/
├── app.py # Aplicación principal Streamlit.
├── requirements.txt # Dependencias de Python.
├── .gitignore # Archivo gitignore
├── README.md
información

El código fuente completo y las instrucciones detalladas para configurar y ejecutar este ejemplo se pueden encontrar en el repositorio Gaia Cookbook.