Skip to main content

OpenRAG is a comprehensive Retrieval-Augmented Generation platform that enables intelligent document search and AI-powered conversations.

Project description

OpenRAG

Intelligent Agent-powered document search

Langflow OpenSearch Docling

YouTube Channel GitHub stars GitHub forks

Documentation Ask DeepWiki


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.


OpenRAG Demo

✨ 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:

OpenRAG Workflow Diagram

🚀 Install OpenRAG

To get started with OpenRAG, see the installation guides in the OpenRAG documentation:

✨ Quick Start Workflow

Use uv run openrag to start

1. Launch OpenRAG

Add files or folders as knowledge

2. Add Knowledge

Start Chatting with your 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.

📖 Full MCP Documentation

🛠️ 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

openrag-0.5.0.dev29.tar.gz (7.3 MB view details)

Uploaded Source

Built Distribution

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

openrag-0.5.0.dev29-py3-none-any.whl (7.3 MB view details)

Uploaded Python 3

File details

Details for the file openrag-0.5.0.dev29.tar.gz.

File metadata

  • Download URL: openrag-0.5.0.dev29.tar.gz
  • Upload date:
  • Size: 7.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","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

Hashes for openrag-0.5.0.dev29.tar.gz
Algorithm Hash digest
SHA256 0e54867356ebf91636679023bb0557bb87db318089ad1ccb5dd836dfcaac449a
MD5 02083fe07f77a3647b0236b04f498b67
BLAKE2b-256 38664e099d4dbdc00e1391ac4cdf21b0c2e6ed937c6c4af8c9884e23284cc781

See more details on using hashes here.

File details

Details for the file openrag-0.5.0.dev29-py3-none-any.whl.

File metadata

  • Download URL: openrag-0.5.0.dev29-py3-none-any.whl
  • Upload date:
  • Size: 7.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","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

Hashes for openrag-0.5.0.dev29-py3-none-any.whl
Algorithm Hash digest
SHA256 f87bd09b0b2d3c35c16c5646616f621873a13abb49bb26e5b3dadbc526fbf51a
MD5 e0308713f20272ad7754e55e380347bd
BLAKE2b-256 c4755635e245afb4ca1f3acf4d4973a4c90c269757976e0bc9cd1d23e0c117b9

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