-
Notifications
You must be signed in to change notification settings - Fork 3
Getting Started
antonyrag edited this page Aug 4, 2026
·
1 revision
pip install ragleap-rag
# or
uv add ragleap-ragYou'll need a PostgreSQL database with the pgvector extension enabled, and an API key for at least one supported provider (Gemini, Anthropic, OpenAI, or any OpenAI-compatible endpoint including local Ollama).
from ragleap import RagLeap, ProviderConfig, EmbeddingConfig
rag = RagLeap(
database_url="postgresql://user:pass@localhost:5432/mydb",
primary=ProviderConfig(provider="gemini", model="gemini-3.6-flash", api_key="..."),
embedder=EmbeddingConfig(
provider="gemini", model="models/gemini-embedding-001",
dimensions=3072, api_key="...",
),
)
rag.init_schema()
result = rag.ingest_text(filename="handbook.pdf", text="...your document text...")
answer = rag.ask("What's our PTO policy?")
print(answer["answer"])
print(answer["sources"])model= is always required for both primary and embedder — there are
no hardcoded model defaults (see the
breaking change in v0.9.0
and why: no provider's default model stays safe to hardcode forever).
rag.ingest("report.pdf", raw_bytes) # any of 28 formats
rag.ingest_url("https://example.com/article") # clean text extraction
rag.ingest_image("scan.png", raw_bytes, mode="ocr") # OCR or vision captioning
rag.ingest_audio("call.mp3", raw_bytes) # pluggable transcription
rag.ingest_video("webinar.mp4", raw_bytes) # audio extraction + transcriptionrag = RagLeap(
database_url="postgresql://user:pass@localhost:5432/mydb",
primary=ProviderConfig(provider="custom", model="qwen2.5:0.5b",
api_key="ollama", base_url="http://localhost:11434/v1"),
embedder=EmbeddingConfig(provider="custom", model="nomic-embed-text",
dimensions=768, api_key="ollama",
base_url="http://localhost:11434/v1"),
)Fully local, no API key cost — see Benchmarks for real measured latency on this setup (it's meaningfully slower than a hosted API on CPU-only hardware, which is the honest tradeoff of running free and local).
- Architecture — how the pipeline fits together
- Vector Backends — pick the right storage backend
- Full API reference: README.md