Cookies

Com a sua autorização, usamos cookies do Google Analytics para medir as visitas e melhorar o site. Os cookies necessários ficam sempre ativos. Pode mudar a escolha ou retirar o consentimento quando quiser, no rodapé, em Definições de cookies. Política de Cookies

Saltar para o conteúdo
PTEN
Começar

RAG e Conhecimento ·Médio

Aplicação RAG com Pesquisa Híbrida

Sobre esta app

Uma poderosa aplicação de perguntas e respostas sobre documentos que combina Pesquisa Híbrida (RAG) e as capacidades avançadas de linguagem do Claude.

  • Código aberto completo
  • Explicado em português

Ficha técnica

Categoria
RAG e Conhecimento
Dificuldade
Médio
Modelos
OpenAI, Claude
Frameworks
-
Corre local?
Precisa de APIs cloud
Chaves necessárias
ANTHROPIC_API_KEYCOHERE_API_KEYOPENAI_API_KEY

Licença Apache-2.0 · conteúdo curado, traduzido e mantido pelo Doutor AI.

Tutorial completo

Uma poderosa aplicação de perguntas e respostas sobre documentos que aproveita a Pesquisa Híbrida (RAG) e as avançadas capacidades linguísticas do Claude para fornecer respostas abrangentes. Construída com RAGLite para um processamento e recuperação robustos de documentos, e Streamlit para uma interface de chat intuitiva, este sistema combina de forma fluida o conhecimento específico de documentos com a inteligência geral do Claude para oferecer respostas precisas e contextuais.

Funcionalidades

  • Resposta a Perguntas com Pesquisa Híbrida
  • Respostas baseadas em RAG para consultas específicas de documentos
  • Alternativa ao Claude para perguntas de conhecimento geral
  • Processamento de Documentos:
  • Upload e processamento de documentos PDF
  • Divisão automática de texto em partes e incorporação
  • Pesquisa híbrida combinando correspondência semântica e por palavras-chave
  • Reclassificação para melhor seleção de contexto
  • Integração Multi-Modelo:
  • Claude para geração de texto - testado com Claude 3 Opus
  • OpenAI para incorporações - testado com text-embedding-3-large
  • Cohere para reclassificação - testado com Cohere 3.5 reranker

Pré-requisitos

Vais precisar das seguintes chaves de API e configuração de base de dados:

  1. Base de Dados: Cria uma base de dados PostgreSQL gratuita em Neon:
  • Regista-te/Inicia sessão em Neon
  • Cria um novo projeto
  • Copia a string de conexão (parece: postgresql://user:pass@ep-xyz.region.aws.neon.tech/dbname)
  1. Chaves de API:

Como Começar?

  1. Clona o Repositório:
   git clone https://github.com/Shubhamsaboo/awesome-llm-apps.git
   cd awesome-llm-apps/rag_tutorials/hybrid_search_rag
  1. Instalar Dependências:
   pip install -r requirements.txt
  1. Instalar o Modelo spaCy:
   pip install https://github.com/explosion/spacy-models/releases/download/xx_sent_ud_sm-3.7.0/xx_sent_ud_sm-3.7.0-py3-none-any.whl
  1. Executa a Aplicação:
   streamlit run main.py

Utilização

  1. Inicia a aplicação
  2. Introduz as tuas chaves de API na barra lateral:
  • Chave de API da OpenAI
  • Chave de API da Anthropic
  • Chave de API da Cohere
  • URL da base de dados (opcional, por defeito é SQLite)
  1. Clica em "Guardar Configuração"
  2. Carrega documentos PDF
  3. Começa a fazer perguntas!
  • Perguntas específicas sobre documentos utilizarão RAG
  • Perguntas gerais utilizarão Claude diretamente

Opções de Base de Dados

A aplicação suporta múltiplos backends de base de dados:

  • PostgreSQL (Recomendado):
  • Cria uma base de dados PostgreSQL sem servidor gratuita em Neon
  • Obtém provisionamento instantâneo e capacidade de escalonamento para zero
  • Formato da string de conexão: postgresql://user:pass@ep-xyz.region.aws.neon.tech/dbname
  • MySQL:
  mysql://user:pass@host:port/db

SQLite (Desenvolvimento local)

Instalação

Para instalar o SQLite, segue os seguintes passos:

  1. Faz o download da versão mais recente do SQLite a partir do site oficial.
  2. Extrai o ficheiro para um diretório da tua escolha.
  3. Adiciona o caminho do diretório onde extraíste o SQLite à variável de ambiente PATH.

Uso

Para iniciar o SQLite, abre o terminal e executa o seguinte comando:

sqlite3

Isto abrirá o shell do SQLite, onde podes começar a executar comandos SQL.

Criar uma base de dados

Para criar uma nova base de dados, utiliza o seguinte comando:

sqlite3 nome_da_base_de_dados.db

Isto criará um novo ficheiro chamado nome_da_base_de_dados.db.

Comandos básicos

Aqui estão alguns comandos básicos que podes usar no SQLite:

  • Criar uma tabela:
CREATE TABLE nome_da_tabela (
    id INTEGER PRIMARY KEY,
    nome TEXT NOT NULL,
    idade INTEGER
);
  • Inserir dados:
INSERT INTO nome_da_tabela (nome, idade) VALUES ('João', 30);
  • Consultar dados:
SELECT * FROM nome_da_tabela;
  • Atualizar dados:
UPDATE nome_da_tabela SET idade = 31 WHERE nome = 'João';
  • Eliminar dados:
DELETE FROM nome_da_tabela WHERE nome = 'João';

Exportar e importar dados

Para exportar dados para um ficheiro CSV, utiliza o seguinte comando:

.mode csv
.headers on
.output dados.csv
SELECT * FROM nome_da_tabela;
.output stdout

Para importar dados de um ficheiro CSV, utiliza:

.mode csv
.import dados.csv nome_da_tabela

Conclusão

O SQLite é uma ferramenta poderosa para desenvolvimento local. Com os comandos acima, já deves estar preparado para começar a trabalhar com bases de dados SQLite.

  sqlite:///path/to/db.sqlite

Contribuição

As contribuições são bem-vindas! Sente-te à vontade para submeter um Pull Request.

Da mesma categoria

RAG e ConhecimentoMédio

Gemma de Embedding Agentic Rag

Esta aplicação Streamlit demonstra um Agente de Geração Aumentada por Recuperação (RAG) agentic utilizando o EmbeddingGemma do Google para embeddings …

  • Llama
  • local
RAG e ConhecimentoMédio

RAG Agentic com GPT-5

Uma aplicação RAG agentic construída com o framework Agno, apresentando GPT-5 e LanceDB para recuperação eficiente de conhecimento e resposta a pergun…

  • OpenAI

Precisa de uma solução à medida?

Não sabe por onde começar a usar IA no seu negócio? Receba uma avaliação gratuita e um plano à medida - sem compromisso.

Poupe horas todas as semanas com IA, sem complicações

O Doutor AI dá-lhe 1859 prompts de IA prontos a copiar, por indústria e em português simples - mais uma biblioteca técnica completa para quem quer ir mais longe.

Ver planos