Skip to content

A document processing service designed for RAG (Retrieval Augmented Generation) applications.

License

Notifications You must be signed in to change notification settings

mauricedesaxe/minerva

Repository files navigation

Minerva

Smart document assistant that helps you vectorize documents from S3.

What It Does

  • Processes markdown documents with smart chunking strategy
  • Stores document chunks with embeddings in vector database
  • Lets you ask questions about your documents using natural language

Quick Start

Use for development:

  1. Set up environment:
uv venv
source .venv/bin/activate
uv pip install -e .
  1. Set up environment variables:
cp .env.example .env
# Edit .env with your credentials
  1. Process a document from S3:
python scripts/process_docs.py path/to/your/doc.md
  1. Chat with your documents:
python scripts/chatbot.py
  1. Turn on the server:
uvicorn api.main:app --reload --log-level debug

Docker

Using Docker Compose (Recommended)

The usual Docker Compose commands:

# Build and start the services
docker compose up -d

# View logs
docker compose logs -f

# Stop services
docker compose down

The Docker setup includes:

  • Automatic health checks
  • Volume persistence for SQLite database
  • Resource limits and memory management
  • Environment variable configuration via .env file

About

A document processing service designed for RAG (Retrieval Augmented Generation) applications.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published