Skip to main content

Portable executable RAG artifacts for Python

Project description

RagBucket

Portable Executable RAG Artifacts for Python

Build Retrieval-Augmented Generation systems as reusable, shareable, and executable .rag artifacts.

PyPI • Portable RAG Runtime • Semantic Retrieval • Groq-Powered Generation


Overview

Traditional machine learning models are portable.

model.pt
model.onnx
model.gguf

They can be:

  • saved
  • shared
  • deployed
  • reused anywhere

But modern Retrieval-Augmented Generation (RAG) systems are different.

A typical RAG pipeline depends on:

  • vector databases
  • embedding models
  • chunking logic
  • retrievers
  • metadata
  • external storage systems

This makes RAG systems:

  • fragmented
  • difficult to distribute
  • hard to reproduce
  • tightly coupled to infrastructure

Introducing .rag

RagBucket introduces:

.rag

A portable executable artifact format for Retrieval-Augmented Generation systems.

The .rag artifact packages:

  • semantic vector memory
  • chunked knowledge
  • retrieval metadata
  • indexing structures
  • runtime configuration

into a single reusable file.


Core Philosophy

RagBucket treats RAG systems as:

portable intelligence artifacts

instead of:

fragmented retrieval pipelines

This allows developers to:

  • package knowledge systems
  • distribute semantic memory
  • separate retrieval from generation
  • reuse RAG artifacts across projects
  • execute portable knowledge bases anywhere

How It Works

Documents
    ↓
RagBuilder
    ↓
model.rag
    ↓
RagRuntime
    ↓
Question Answering

The builder serializes the retrieval pipeline into a portable artifact.

The runtime loads the artifact and executes semantic retrieval using an external language model.


What a .rag Artifact Contains

A .rag file stores everything required for retrieval:

  • vector embeddings
  • FAISS semantic index
  • chunked document memory
  • retrieval metadata
  • artifact manifest
  • runtime configuration

The only external dependency required during inference is:

  • an LLM provider API key (Groq)

Features

Portable Artifact System

Serialize RAG knowledge systems into reusable .rag files.

Semantic Retrieval Engine

Built-in FAISS vector indexing for fast semantic search.

Lightweight Runtime

Load and execute .rag artifacts anywhere using Python.

Groq Integration

Generate responses using Groq-hosted LLMs.

Self-Contained Knowledge

Store retrieval memory locally inside the artifact.

Simple Developer API

Minimal abstraction for building and querying artifacts.

Extensible Architecture

Designed for future support of:

  • hybrid retrieval
  • reranking
  • metadata filtering
  • distributed vector stores

Installation

Using uv

uv add ragbucket

Using pip

pip install ragbucket

Creating a .rag Artifact

from ragbucket import RagBuilder

builder = RagBuilder()

builder.build(
    documents_path="docs/",
    output_path="finance_assistant.rag"
)

This generates:

finance_assistant.rag

containing:

  • vector memory
  • document chunks
  • retrieval metadata
  • semantic index

Using a .rag Artifact

from ragbucket import RagRuntime

rag = RagRuntime(
    rag_path="finance_assistant.rag",
    api_key="your_groq_api_key"
)

response = rag.ask(
    "What is EBITDA?"
)

print(response)

Runtime Pipeline

User Query
    ↓
Query Embedding
    ↓
FAISS Semantic Search
    ↓
Relevant Context Retrieval
    ↓
Groq LLM Generation
    ↓
Final Response

Technology Stack

Component Technology
Embeddings Sentence Transformers
Vector Search FAISS
Chunking LangChain
Runtime Python
Generation Groq
Packaging zipfile
Artifact Format .rag

Why RagBucket Matters

Current RAG systems are deeply tied to infrastructure.

RagBucket introduces a cleaner abstraction:

Knowledge
≠
Generation

The .rag artifact becomes:

  • portable retrieval memory

while the external LLM becomes:

  • the reasoning engine

This separation enables:

  • reusable RAG systems
  • portable semantic memory
  • simplified deployment
  • reproducible retrieval pipelines

Current Scope

RagBucket currently supports:

  • local artifact packaging
  • FAISS vector indexing
  • semantic retrieval
  • Groq-powered generation

The project is intentionally lightweight and focused on:

portable RAG execution


Future Roadmap

Planned Features

  • Hybrid retrieval
  • Metadata-aware search
  • Artifact versioning
  • Reranking support
  • Multi-provider LLM runtime
  • Milvus integration
  • Distributed retrieval
  • .rag registries and marketplaces

Vision

RagBucket aims to become:

“The portable runtime layer for Retrieval-Augmented Generation systems.”

A future where RAG systems can be:

  • built once
  • shared anywhere
  • executed everywhere

through standardized portable intelligence artifacts.


License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ragbucket-0.1.2.tar.gz (9.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ragbucket-0.1.2-py3-none-any.whl (11.6 kB view details)

Uploaded Python 3

File details

Details for the file ragbucket-0.1.2.tar.gz.

File metadata

  • Download URL: ragbucket-0.1.2.tar.gz
  • Upload date:
  • Size: 9.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for ragbucket-0.1.2.tar.gz
Algorithm Hash digest
SHA256 89dce181a8c337842e9df831d03e2f6f4d3bc4fd0372bc3392638ec2e0250d65
MD5 22fe4882ec6e3c5f043e4d2b2eb6137e
BLAKE2b-256 64053adcdb276420ec12040295b12081b620b40b491afd82136d837de1bde88f

See more details on using hashes here.

File details

Details for the file ragbucket-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: ragbucket-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 11.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for ragbucket-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9f2011b08dd33cab6756db986ac9e73736ef50a4240d74b4543b9b90948f9918
MD5 126fada32f44422ec9b65cb2e0edcb01
BLAKE2b-256 f429880a8446a711c2cb181962c70cb2bcd37eecc55cadd8d473738edec3d142

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page