Async-first RAG SDK. The fastest way to build RAG applications with Python.
Project description
ezrag
A modular, hexagonal-architecture RAG SDK for Python.
Install
pip install ezrag
# optional extras
pip install "ezrag[openai]" # OpenAI embeddings + generation
pip install "ezrag[ollama]" # Ollama (local LLM) support
pip install "ezrag[firestore]" # Firestore vector store
Quickstart
import asyncio
from ezrag import rag, Document
from ezrag.embeddings import OpenAIEmbedder
from ezrag.stores import InMemoryVectorStore
from ezrag.generators import OpenAIGenerator
async def main() -> None:
sdk = rag(
embedder=OpenAIEmbedder(api_key="..."),
store=InMemoryVectorStore(),
generator=OpenAIGenerator(api_key="..."),
)
await sdk.ingest([Document(content="RAG combines retrieval with generation.")])
result = await sdk.query("What is RAG?")
answer = await sdk.generate("Explain RAG simply")
print(result.results)
print(answer.answer)
asyncio.run(main())
Documentation
- docs/quickstart.md — install and first local RAG flow
- docs/extras.md — optional dependencies matrix
- docs/adapters.md — public adapter namespaces
- docs/stores.md — in-memory vs Firestore
- docs/chunkers.md — chunker selection guide
- docs/operations.md — ingest / query / generate / generate_stream
- docs/environments.md — local, OpenAI, Ollama, Firestore setup
- docs/limitations.md — beta constraints
Examples
Runnable scripts in examples/:
examples/local_memory.py— zero-service, local adaptersexamples/openai_memory.py— OpenAI embedder + in-memory storeexamples/ollama_memory.py— Ollama embedder + in-memory storeexamples/openai_firestore.py— OpenAI embedder + Firestore storeexamples/openai_pgvector.py— OpenAI embedder + PgVectorStore
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ezrag-0.2.0b1.tar.gz.
File metadata
- Download URL: ezrag-0.2.0b1.tar.gz
- Upload date:
- Size: 163.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d7786ce7e542bf62528a8809701c6db3fb6c98d5286241acf8e83fca4e1bc559
|
|
| MD5 |
648a1275f588c68dff8513e110af10a3
|
|
| BLAKE2b-256 |
81a778ac259ac64a340e498a250cf49a0d03b6c6f95c12187f8cdfb96ebd594c
|
Provenance
The following attestation bundles were made for ezrag-0.2.0b1.tar.gz:
Publisher:
publish-pypi.yml on manuarmillas/ezrag
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ezrag-0.2.0b1.tar.gz -
Subject digest:
d7786ce7e542bf62528a8809701c6db3fb6c98d5286241acf8e83fca4e1bc559 - Sigstore transparency entry: 1547176841
- Sigstore integration time:
-
Permalink:
manuarmillas/ezrag@dce3a635d06978db5dcb2789b832eaacbbfcd92b -
Branch / Tag:
refs/tags/v0.2.0b1 - Owner: https://github.com/manuarmillas
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@dce3a635d06978db5dcb2789b832eaacbbfcd92b -
Trigger Event:
push
-
Statement type:
File details
Details for the file ezrag-0.2.0b1-py3-none-any.whl.
File metadata
- Download URL: ezrag-0.2.0b1-py3-none-any.whl
- Upload date:
- Size: 43.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fbcd30547f43b46deb720cec8532f734a7cb4da438205b18662fd15d9a5064f4
|
|
| MD5 |
dbc3269c3a10783a00b0702df9f49c00
|
|
| BLAKE2b-256 |
4c249458d5ba73a27ec26057a054af583908821822cb303979ddc35010b27f56
|
Provenance
The following attestation bundles were made for ezrag-0.2.0b1-py3-none-any.whl:
Publisher:
publish-pypi.yml on manuarmillas/ezrag
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ezrag-0.2.0b1-py3-none-any.whl -
Subject digest:
fbcd30547f43b46deb720cec8532f734a7cb4da438205b18662fd15d9a5064f4 - Sigstore transparency entry: 1547176864
- Sigstore integration time:
-
Permalink:
manuarmillas/ezrag@dce3a635d06978db5dcb2789b832eaacbbfcd92b -
Branch / Tag:
refs/tags/v0.2.0b1 - Owner: https://github.com/manuarmillas
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@dce3a635d06978db5dcb2789b832eaacbbfcd92b -
Trigger Event:
push
-
Statement type: