Skip to content

RaGens (Retrieval-Augmented Generations) é um sistema completo e modular para transformar uma coleção de documentos pessoais (.md, .pdf, .docx) numa base de conhecimento inteligente e interativa.

Notifications You must be signed in to change notification settings

joaopsimoesr/RaGens

Repository files navigation

RaGens: Um Ecossistema de Conhecimento Pessoal com IA

Logo

Python Version Status

RaGens (Retrieval-Augmented Generations) é um sistema completo e modular para transformar uma coleção de documentos pessoais (.md, .pdf, .docx) numa base de conhecimento inteligente e interativa.

Propósito e Visão

Este projeto serve a um duplo propósito:

  1. Como Ferramenta: Criar um assistente de IA pessoal, capaz de responder a perguntas complexas com base estritamente no conteúdo de uma coleção de notas e documentos.
  2. Como Laboratório de Investigação: Atuar como um ambiente de Pesquisa e Desenvolvimento para o JURION, um sistema de IA focado em lógica jurídica, e para testar a hipótese das "Camadas de Sentido" — a ideia de que o significado emerge da sobreposição de múltiplas camadas de metadados (estruturais, linguísticos, semânticos) sobre o mesmo texto.

Visão Geral da Arquitetura

O RaGens é dividido em três pacotes principais, seguindo o Princípio da Responsabilidade Única:

  1. ingestion_pipeline/: Responsável por ler os documentos brutos, extrair o seu conteúdo e enriquecê-los com múltiplas camadas de metadados, salvando o resultado como XML.
  2. knowledge_base/: Responsável por pegar nos XMLs enriquecidos e construir uma base de conhecimento vetorial otimizada (usando FAISS) para busca semântica de alta velocidade.
  3. application/: A camada de interação com a IA, que usa um Agente Roteador para classificar a intenção do utilizador e Agentes Especialistas para gerar respostas com base nos contextos recuperados.

Para uma exploração aprofundada de cada componente, consulte o nosso Documento de Arquitetura.

Início Rápido (Quick Start)

Para ir de uma coleção de notas a uma resposta gerada por IA, siga estes passos:

  1. Prepare o Ambiente:

    # Crie e ative o ambiente virtual
    python3 -m venv venv
    source venv/bin/activate
    
    # Instale as dependências
    pip install -r requirements.txt
    python -m spacy download pt_core_news_lg
  2. Processe as Suas Notas:

    • Coloque os seus ficheiros (.md, .pdf, etc.) na pasta notas_a_processar/.

    • Execute o pipeline de ingestão:

      python scripts/run_ingestion.py
  3. Construa a Base de Conhecimento:

    python scripts/run_indexing.py
  4. Faça uma Pergunta:

    python scripts/run_application.py "Qual é a arquitetura central do Projeto LILAC?"

Guias Detalhados

  • Para instruções sobre como executar o sistema em ambiente local, consulte o Guia de Testes.
  • Para um passo a passo sobre como usar o sistema no Google Colab com GPUs, veja o Guia do Colab.

About

RaGens (Retrieval-Augmented Generations) é um sistema completo e modular para transformar uma coleção de documentos pessoais (.md, .pdf, .docx) numa base de conhecimento inteligente e interativa.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages