Skip to content

Repository files navigation

Simple-RAG-Project

Projeto simples de RAG em Python usando LangChain, Chroma, Gemini e uma UI web com Gradio.

O que este projeto faz

  • Carrega um PDF local com PyPDFLoader
  • Quebra o documento em chunks
  • Gera embeddings com Gemini
  • Salva os vetores localmente com Chroma
  • Expõe uma interface web simples com Gradio para perguntar sobre o PDF

Estrutura

simple-rag-project/
  .env
  .env.example
  .gitignore
  rag_app.py
  requirements.txt
  TechCorp_Official_Employee_Handbook.pdf
  chroma_db/
  venv/ ou .venv/  # local, ignorado pelo Git

Setup

Crie um ambiente virtual:

py -m venv .venv

Ative o ambiente no PowerShell:

.\.venv\Scripts\Activate.ps1

Instale as dependencias:

py -m pip install -r requirements.txt

Crie seu arquivo .env a partir do exemplo:

Copy-Item .env.example .env

Depois edite o .env com sua chave:

GOOGLE_API_KEY=sua_chave_aqui

Rodando

A interface web do projeto foi implementada com Gradio.

Com o terminal na raiz do projeto:

py .\rag_app.py

Depois de iniciar, o terminal vai mostrar uma URL local do Gradio, como http://127.0.0.1:7860, para abrir no navegador.

Arquivos Para O GitHub

Devem ir para o Git:

  • rag_app.py
  • requirements.txt
  • README.md
  • .gitignore
  • .env.example
  • TechCorp_Official_Employee_Handbook.pdf se ele fizer parte do exemplo do projeto

Nao devem ir para o Git:

  • .env
  • venv/ ou .venv/
  • chroma_db/
  • .gradio/

Observacoes

  • O codigo-fonte fica na raiz em rag_app.py.
  • A pasta venv/ ou .venv/ e local e nao deve ir para o Git.
  • A pasta chroma_db/ e gerada automaticamente durante a execucao.
  • A UI do chatbot roda com Gradio e recebe perguntas pelo navegador.

About

RAG = Retrieval-Augmented Generation

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages