Skip to main content

ragify-lib: Effortless Retrieval-Augmented Generation (RAG) Workflows in Python

ragify-lib is a modern, production-ready Python library that makes Retrieval-Augmented Generation (RAG) simple, fast, and flexible. With just a few lines of code, you can chunk, embed, store, and retrieve text using state-of-the-art embedding models and vector databases. Whether you’re building chatbots, search engines, or knowledge assistants, ragify-lib helps you unlock the power of RAG with minimal setup.


🚀 Why Choose ragify-lib?

  • Minimal Setup: Go from raw text to powerful retrieval in minutes.
  • Flexible: Easily configure your embedding model, chunking strategy, and vector database (supports Quadrant and mock mode).
  • Human-Readable Results: Retrieve relevant text chunks with similarity scores and metadata—no need to handle raw embeddings.
  • CLI Included: Use the command-line tool for quick experiments and automation.
  • Open Source: Free to use for research and commercial projects.

👤 About the Developer

Rahul Wale
AI Developer & Researcher
Rahul specializes in building practical, scalable AI solutions for real-world problems, with a focus on natural language processing and information retrieval.


📦 Installation

pip install ragify-lib

📝 Example 1: Local RAG Workflow in Python

from ragify import KaliRAG

# 1. Configure your database and embedding model (optional, uses sensible defaults)
rag = KaliRAG()
rag.configure_database(api_key="mock_key", host="localhost", port=6333, collection="my_collection")
rag.configure_embedding_model("all-MiniLM-L6-v2")
rag.configure_chunking(chunk_size=256, chunk_overlap=32)

# 2. Store your documents
documents = [
    "Retrieval-Augmented Generation (RAG) combines retrieval and generation for better answers.",
    "ragify-lib makes it easy to build RAG pipelines in Python.",
    "You can use Quadrant or mock mode for vector storage."
]
for doc in documents:
    rag.create_store_embedding(doc)

# 3. Retrieve relevant chunks for a query
results = rag.retrieve_embedding("How does RAG work?")
for chunk in results["results"]:
    print(f"Text: {chunk['text']}\nScore: {chunk['score']}\n")

📝 Example 2: File-Based Workflow & CLI Usage

Create embeddings from a file and query them using the CLI:

# Store embeddings from a text file
ragify create --input knowledge.txt --output embeddings.json --api-key mock_key

# Query your knowledge base
ragify query "What is retrieval-augmented generation?" --top-k 3

Or configure everything via the CLI:

ragify config --api-key mock_key --host "localhost" --port 6333 --collection "my_collection" --model "all-MiniLM-L6-v2" --chunk-size 256 --chunk-overlap 32

Note: Use --api-key mock_key for local/mock mode. For production, use your real Quadrant API key.


🌟 Features

  • Plug-and-play with Quadrant vector database or use built-in mock mode
  • Customizable chunking and embedding for any use case
  • Returns human-readable results with scores and metadata
  • Designed for both developers and researchers
  • Robust CLI for automation and scripting
  • Easy integration with existing Python projects

🛠️ Advanced Usage

  • Recursive Chunking: Handles very long documents with automatic recursion.
  • Similarity Thresholds: Filter results by similarity score.
  • Comprehensive Logging: Built-in logging for debugging and monitoring.
  • Error Handling: Robust error handling with detailed error messages.

📚 Use Cases

  • AI-powered chatbots and assistants
  • Semantic search engines
  • Knowledge base augmentation
  • Research and prototyping in NLP

📖 Documentation

For full documentation, visit the official docs or see the CLI help:

ragify --help

📄 License

This project is licensed under the MIT License.


ragify-lib: The easiest way to add Retrieval-Augmented Generation to your Python projects.

Metadata

Release files for ragify-lib 0.1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ragify-lib 0.1.5
File Size Uploaded
ragify_lib-0.1.5.tar.gz 18.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ragify-lib 0.1.5
File Interpreter ABI Platform
ragify_lib-0.1.5-py3-none-any.whl Python 3 none any Details

Total release size: 36.8 kB

Release files / ragify_lib-0.1.5.tar.gz

Download URL ragify_lib-0.1.5.tar.gz
Size 18.0 kB
Tags Source
SHA-256 checksum
How to use checksums
c456d29c6a2a4126ebad3f566594c3f184058ae4a73027648fe3d09d5c47d238
BLAKE2b-256 checksum
How to use checksums
c6a6eac124e8e648804bbdc73f07f5c878f89bf96cf4f2de61476879ce32bfea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.0

Release files / ragify_lib-0.1.5-py3-none-any.whl

Download URL ragify_lib-0.1.5-py3-none-any.whl
Size 18.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
39faa7a7889164b2acbb9e9184488a52de2d5eacfc6647c019f53978f82c6b3b
BLAKE2b-256 checksum
How to use checksums
268848a5f6b43226508a912fe1da761e5031aa03738873c91f97fc90b9647a03
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.0

Release history Release notifications | RSS feed

This release

0.1.5 This release

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page