MiniRAG について
MiniRAGは、SQLiteストレージとハイブリッド検索を組み合わせ、出典を示す回答を生成するセルフホスト可能なRAGナレッジベースです。単一のSpring Bootプロセスで動作し、Web UI、REST API、MCPサーバーから文書検索を利用したいチーム向けです。
主な機能
- 01ベクトル検索とBM25の併用
- 02RRFによる統合と任意の再ランキング
- 03クリック可能な引用付き回答
- 04ストリーミングWebインターフェース
- 05単一プロセスでのSQLite保存
- 06Web UI、REST API、WeChat Work
活用シーン
- 01取り込んだコーパスに基づく質問応答
- 02ベクトル、ハイブリッド、再ランキング検索の確認
- 03Webインターフェースで引用付き回答を配信
- 04MCPクライアントへのコーパス検索の提供
MCP 対応
組み込みのMCPサーバーはSSEを使用し、引用付き回答を返す`query`と文書を追加する`ingest_text`を提供します。文書取り込みツールには管理者キーが必要です。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://minirag.kimelody.de5.net/sseclaude mcp add --transport sse kimelody-minirag https://minirag.kimelody.de5.net/sse{"mcpServers":{"kimelody-minirag":{"type":"sse","url":"https://minirag.kimelody.de5.net/sse"}}}Cursor で開く{"servers":{"kimelody-minirag":{"type":"sse","url":"https://minirag.kimelody.de5.net/sse"}}}VS Code で開く{"mcpServers":{"kimelody-minirag":{"type":"sse","url":"https://minirag.kimelody.de5.net/sse"}}}{"mcpServers":{"kimelody-minirag":{"serverUrl":"https://minirag.kimelody.de5.net/sse"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
https://minirag.kimelody.de5.net/sse認証が必要ツール
詳細
MiniRAG
単一の Spring Boot プロセスで動作するセルフホスト可能な RAG ナレッジベースです。SQLite ストレージ、ハイブリッド検索、出典付きの回答、組み込みの MCP サーバーを備えています。ベクトルデータベースもメッセージキューも必要ありません。
ライブデモ(アクセスコードはオーナーにお問い合わせください) · 評価レポート
機能
- ハイブリッド検索 — メモリ内のコサイン類似度検索と SQLite FTS5(BM25)を RRF で統合し、オプションで LLM による再ランキングにも対応
- 出典付きの回答 — クリック可能な
[n]引用。実際に引用されたソースのみを表示します - ストリーミング対応のウェブ UI — SSE、タイプライター表示、Markdown、検索モード切り替え(vector / hybrid / rerank)
- 省リソース — 単一プロセス、RSS 約 250MB、1GB の VPS で動作
- 複数のインターフェース — MCP サーバー(SSE トランスポート)、REST API、ウェブ UI、WeChat Work コールバック連携
クイックスタート
docker run -d --name minirag -p 18090:18090 --memory 512m \
-v $(pwd)/data:/app/data \
-e DEEPSEEK_API_KEY=sk-... \
-e EMBEDDING_API_KEY=sk-... \
ghcr.io/kimelody/minirag:latest
http://localhost:18090 を開いて、質問を始めてください。データは ./data に保存されます(SQLite、自動作成)。
設定
| Env | Required | Default | Description |
|---|---|---|---|
DEEPSEEK_BASE_URL | いいえ | https://api.deepseek.com | OpenAI 互換のチャットエンドポイント |
DEEPSEEK_API_KEY | はい | — | チャットモデルの API キー |
EMBEDDING_BASE_URL | いいえ | https://api.siliconflow.cn/v1 | OpenAI 互換の埋め込みエンドポイント |
EMBEDDING_API_KEY | はい | — | 埋め込み API キー |
EMBEDDING_MODEL | いいえ | BAAI/bge-m3 | 埋め込みモデル |
DEMO_KEY | いいえ | — | 読み取り API 用の訪問者アクセスコード。未設定の場合は公開(ローカル開発用) |
ADMIN_KEY | いいえ | — | データ取り込み API に必要な管理者キー |
MCP
2 つのツールを提供します。query(question, mode?) — 質問して出典付きの回答を取得します。ingest_text(docId, text, adminKey) — ドキュメントを追加します。
{
"mcpServers": {
"minirag": {
"url": "http://localhost:18090/sse"
}
}
}
ホストされているデモのエンドポイントでは、基本認証が必要です:https://minirag.kimelody.de5.net/sse(認証情報はオーナーにお問い合わせください)。
REST API
| Method | Path | Description |
|---|---|---|
| POST | /api/chat | 質問し、回答と出典を取得(JSON) |
| POST | /api/chat/stream | 同じ内容を SSE でストリーミング(meta / token / sources / done) |
| GET | /api/search?q=&mode= | 検索のデバッグ:vector | hybrid | rerank |
| POST | /api/documents/text | {docId, text} を取り込み(X-Admin-Key が必要) |
| POST | /api/documents | アップロードされたファイルをマルチパート形式で取り込み(X-Admin-Key が必要) |
評価
評価ハーネスは eval/ に含まれています。ラベル付きの質問セットと、3 つの検索モードを対象とする Top-1 / Recall / MRR のスコアリングを提供します。デモセットでは hybrid+rerank が Top-1 100% / MRR 1.0 を達成しています(レポート)。コーパスのクリーニングスクリプト付きの20問の労働法評価は eval/law/ にあります。独自のコーパスをご用意ください。ソースの生テキストは再配布されません。
ソースからビルド
mvn package
java -jar target/minirag-0.1.0-SNAPSHOT.jar
Java 21 が必要です。API キーは、作業ディレクトリにある .env ファイルに設定できます(Git の追跡対象外)。
中国語での説明
単一プロセスで動作するセルフホスト可能な RAG ナレッジベースです。SQLite ストレージとハイブリッド検索(ベクトル + BM25、RRF で統合、オプションで LLM による再ランキング)を備え、クリック可能な引用番号付きの回答を生成します。ウェブデモ、REST API、MCP サーバー(SSE)を内蔵し、メモリ使用量は約 250MB。1GB の小規模サーバーで動作します。オンラインデモ(アクセスコードは作者にお問い合わせください)。
ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。