Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Uma API RAG em Python que processa PDFs, responde perguntas com Gemini 2 Flash e armazena tudo com ChromaDB e MongoDB.

License

Notifications You must be signed in to change notification settings

yanagassi/RAG_PDF

Repository files navigation

Projeto RAG com FastAPI, Langchain e MongoDB

Este projeto implementa uma solução RAG (Retrieval Augmented Generation) com as seguintes funcionalidades principais:

  • Processamento de arquivos PDF
  • Armazenamento em base vetorial
  • Endpoint para realização de perguntas
  • Persistência das perguntas com suas respectivas respostas

Tecnologias Utilizadas

  • Langchain
  • FastAPI
  • Base vetorial (Chroma ou Pinecone)
  • LLM Gemini 2 Flash (gratuito)
  • Ambiente com Docker e Docker Compose
  • Banco NoSQL para armazenamento de perguntas e respostas

Como Rodar

  1. Clone o repositório:
git clone https://github.com/yanagassi/RAG_PDF.git
cd RAG_PDF
  1. Crie um arquivo .env baseado no arquivo .env.example e configure a chave de API do Google:
GOOGLE_API_KEY=sua-chave-google

Importante: Não esqueça de habilitar o serviço Generative Language para a sua chave na Google Cloud.

  1. Suba os containers usando Docker Compose:
docker-compose up --build
  1. Acesse a documentação da API em: http://localhost:8000/docs

Adicionei também uma collection do Postman além do Swagger para facilitar os testes.

Evidências de Teste

Utilizei o mesmo exemplo mencionado na reunião, que é o meu currículo, considerando que a IA não sabe o tipo do arquivo.

Envio do arquivo PDF para a API

Evidência de Envio do PDF

Envio de pergunta e resposta gerada

Evidência de Resposta

About

Uma API RAG em Python que processa PDFs, responde perguntas com Gemini 2 Flash e armazena tudo com ChromaDB e MongoDB.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published