Saltar para o conteúdo principal
Versão: 2.0.0

PDF Resposta a perguntas com Gaia e Qdrant

O Gaia PDF RAG é uma aplicação RAG (Retrieval-Augmented Generation) que permite aos utilizadores colocar questões sobre documentos PDF utilizando um nó Gaia local e uma base de dados vetorial Qdrant. Combina o poder dos LLMs locais com uma pesquisa vetorial eficiente para fornecer respostas precisas e contextualizadas.

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

informação

O código-fonte completo e as instruções detalhadas para configurar e executar este exemplo podem ser encontrados no repositório Gaia Cookbook.

O que pode aprender e construir:

Ao explorar e adaptar este exemplo, pode aprender a fazê-lo:

  • Processar e fragmentar documentos PDF: Compreender as etapas envolvidas na divisão de ficheiros PDF em segmentos geríveis para uma recuperação eficaz.
  • Implementar a pesquisa semântica com Qdrant: Veja como tirar partido de uma base de dados vetorial para uma pesquisa eficiente e contextualizada dos seus blocos de documentos.
  • Integrar LLMs locais via Gaia: Saiba como se conectar ao seu nó Gaia local para utilizar o poder dos modelos de linguagem hospedados localmente para responder a perguntas.
  • Aumentar a relevância com o Cross-Encoder Reranking: Descubra técnicas para refinar os resultados da pesquisa e melhorar a exatidão das informações recuperadas.
  • Proporcionar uma experiência de utilizador sem falhas com respostas em fluxo contínuo: Implemente feedback em tempo real para os utilizadores à medida que a resposta é gerada.
  • Garantir a fiabilidade com a citação inteligente de fontes: Saiba como fornecer referências claras aos documentos de origem para cada resposta.
  • Atenuar alucinações com filtragem de relevância: Explore estratégias para filtrar informações irrelevantes e reduzir a probabilidade de respostas incorrectas.
  • Criar um bot de perguntas e respostas personalizável para PDF: este exemplo fornece uma base sólida para personalizar e implantar seu próprio sistema de resposta a perguntas para documentos ou coleções de PDF específicos.

Principais caraterísticas demonstradas:

  • 📑 Processamento e fragmentação de documentos PDF: Lida eficazmente com a extração e segmentação de conteúdos de ficheiros PDF.
  • Pesquisa semântica com Qdrant: Alavanca a incorporação de vetores para recuperação inteligente de partes relevantes de documentos.
  • Integração LLM local através do nó Gaia: Liga-se ao seu LLM em execução local para gerar respostas com base no contexto recuperado.
  • Reranking de codificadores cruzados para melhorar a relevância: Optimiza os resultados da pesquisa através da aplicação de um modelo de classificação mais sofisticado.
  • 💨 Respostas em fluxo contínuo para uma melhor experiência do utilizador : proporciona uma experiência do utilizador mais interactiva e reactiva.
  • Citação inteligente da fonte: Indica claramente os documentos de origem utilizados para gerar cada resposta.
  • Filtragem da relevância para evitar alucinações: Aumenta a fiabilidade das respostas, filtrando as informações menos relevantes.

Começar a trabalhar:

Pré-requisitos

Antes de executar o Gaia RAG, certifique-se de que tem

  1. Um nó local de Gaia em execução (consulte esta ligação para saber como executar o seu próprio LLM local: https://docs.gaianet.ai/node-guide/quick-start)
  2. Servidor Qdrant em execução
  3. Python 3.8+
  4. Bibliotecas de sistema necessárias para o processamento de PDF

Instalação

  1. Clonar o repositório:
git clone https://github.com/harishkotra/gaia-pdf-rag.git
cd gaia-pdf-rag
  1. Criar um ambiente virtual:
python -m venv venv
source venv/bin/activate # No Windows use: venv\Scripts\activate
  1. Instalar dependências:
pip install -r requirements.txt

Configuração de componentes

1. Nó de Gaia

Iniciar o nó local de Gaia:

gaianet init
início da gaianet

2. Servidor Qdrant

Iniciar o Qdrant usando o Docker:

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

Executar a aplicação

  1. Certifique-se de que o nó Gaia e o Qdrant estão a funcionar

  2. Iniciar a aplicação Streamlit:

streamlit run app.py
  1. Abra o seu browser em http://localhost:8501

Utilização

  1. Carregar um documento PDF utilizando a barra lateral
  2. Clique em "Processar documento" para o indexar
  3. Fazer perguntas no campo de entrada principal
  4. Ver respostas e documentos de referência relevantes

Configuração

É possível modificar os seguintes parâmetros em app.py:

  • GAIA_NODE_URL: URL do seu nó Gaia local
  • QDRANT_HOST: Anfitrião do servidor Qdrant
  • QDRANT_PORT: Porta do servidor Qdrant
  • VECTOR_SIZE: Tamanho da dimensão de incorporação
  • NOME_DA_COLECÇÃO: Nome da coleção de bases de dados vectoriais

Estrutura do projeto

gaia-pdf-rag/
├── app.py # Aplicação principal do Streamlit
├─── requirements.txt # Dependências do Python
├─── .gitignore # Arquivo Gitignore
├─── README.md
informação

O código-fonte completo e as instruções detalhadas para configurar e executar este exemplo podem ser encontrados no repositório Gaia Cookbook.