OpenRAG is a comprehensive Retrieval-Augmented Generation platform that enables intelligent document search and AI-powered conversations.
Project description
OpenRAG is a comprehensive Retrieval-Augmented Generation platform that enables intelligent document search and AI-powered conversations.
Users can upload, process, and query documents through a chat interface backed by large language models and semantic search capabilities. The system utilizes Langflow for document ingestion, retrieval workflows, and intelligent nudges, providing a seamless RAG experience.
Check out the documentation or get started with the quickstart.
Built with FastAPI and Next.js. Powered by OpenSearch, Langflow, and Docling.
✨ Highlight Features
- Pre-packaged & ready to run - All core tools are hooked up and ready to go, just install and run
- Agentic RAG workflows - Advanced orchestration with re-ranking and multi-agent coordination
- Document ingestion - Handles messy, real-world data with intelligent parsing
- Drag-and-drop workflow builder - Visual interface powered by Langflow for rapid iteration
- Modular enterprise add-ons - Extend functionality when you need it
- Enterprise search at any scale - Powered by OpenSearch for production-grade performance
🔄 How OpenRAG Works
OpenRAG follows a streamlined workflow to transform your documents into intelligent, searchable knowledge:
🚀 Install OpenRAG
To get started with OpenRAG, see the installation guides in the OpenRAG documentation:
✨ Quick Start Workflow
1. Launch OpenRAG
↓
2. Add Knowledge
↓
3. Start Chatting
📦 SDKs
Integrate OpenRAG into your applications with our official SDKs:
Python SDK
pip install openrag-sdk
Quick Example:
import asyncio
from openrag_sdk import OpenRAGClient
async def main():
async with OpenRAGClient() as client:
response = await client.chat.create(message="What is RAG?")
print(response.response)
if __name__ == "__main__":
asyncio.run(main())
📖 Full Python SDK Documentation
TypeScript/JavaScript SDK
npm install openrag-sdk
Quick Example:
import { OpenRAGClient } from "openrag-sdk";
const client = new OpenRAGClient();
const response = await client.chat.create({ message: "What is RAG?" });
console.log(response.response);
📖 Full TypeScript/JavaScript SDK Documentation
🔌 Model Context Protocol (MCP)
Connect AI assistants like Cursor and Claude Desktop to your OpenRAG knowledge base:
pip install openrag-mcp
Quick Example (Cursor/Claude Desktop config):
{
"mcpServers": {
"openrag": {
"command": "uvx",
"args": ["openrag-mcp"],
"env": {
"OPENRAG_URL": "http://localhost:3000",
"OPENRAG_API_KEY": "your_api_key_here"
}
}
}
}
The MCP server provides tools for RAG-enhanced chat, semantic search, and settings management.
🛠️ Development
For developers who want to contribute to OpenRAG or set up a development environment, see CONTRIBUTING.md.
🛟 Troubleshooting
For assistance with OpenRAG, see Troubleshoot OpenRAG and visit the Discussions page.
To report a bug or submit a feature request, visit the Issues page.
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 openrag_nightly-0.3.2.dev2.tar.gz.
File metadata
- Download URL: openrag_nightly-0.3.2.dev2.tar.gz
- Upload date:
- Size: 13.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ae6b79bbd4dba6c642e3ef734aa646bd05c274070055f063a70d503d1f87533f
|
|
| MD5 |
6db967e2989f0c7276ecaa139de48b20
|
|
| BLAKE2b-256 |
7a3b3d08839788b1061bff988cb84e076bb3693d8389cb587e86af2013adf84d
|
File details
Details for the file openrag_nightly-0.3.2.dev2-py3-none-any.whl.
File metadata
- Download URL: openrag_nightly-0.3.2.dev2-py3-none-any.whl
- Upload date:
- Size: 13.8 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
66380dc4ba3b893cd945102ce09e9d6bb1a9af57e848e2223a3bca3a19abaeb6
|
|
| MD5 |
886e9eb12e48f573199f34be7355de7c
|
|
| BLAKE2b-256 |
a696a42eafcebebbcfa9f1ac9d90177c7bbe9ee407443fec058d081b44fb894d
|