myneace/Gaussian_Clef_RAG
Probabilistic retrieval-augmented generation on statistical manifolds with sub-100ms Cloudflare Clef decision routing, Woodbury-accelerated geometric kernels, and universal corpus generation. Every chunk of knowledge is a Gaussian distribution, not a flat vector. Retrieval is information geometry, accelerated to production speed.
Manifold — Gaussian-Clef RAG
概要
検索拡張生成(RAG)のためのPythonライブラリ(3.10+)— AIが質問に答える前にドキュメントコレクションから関連パッセージを検索する技術。違いは、各テキストチャンクを高次元空間の単一ポイント(標準的なアプローチ)として表現する代わりに、各チャンクをガウス分布— 中心(平均的な意味)と広がり(不確実性)を持つ「雲」— として表現することです。検索は2つの雲がどれだけ重なるかの問題になります。
基本使用にはAPIキー不要で100%ローカル実行。追加機能のためのオプションのクラウド統合があります。
コアアイデア
各テキストチャンクは確率分布𝒩(μ, Σ)にマッピングされます:
- μ(平均) — 意味的意味。ローカルのSentenceTransformerまたはGemini埋め込みから取得
- Σ(共分散) — 方向的不確実性。対角プラス低ランク分解(デフォルトランク8)としてモデル化
検索は、クエリの分布が各ドキュメントの分布にどれだけの確率質量を置くかをスコアリングします — **期待尤度カーネル(ELK)**と呼ばれるメトリック。
なぜ速いのか
2つの高次元分布を比較するには通常、大きな行列の逆行列が必要です(O(d³)操作)。このプロジェクトはWoodbury行列恒等式とSylvester行列式定理を使用して、それをO(d·r²)(r=8)に削減します — 150msの操作を3ms未満に変えます。他の最適化と組み合わせて、このプロジェクトはエンドツーエンド検索100ms未満を主張しています。
主要コンポーネント
| コンポーネント | 機能 | 主張される影響 |
|---|---|---|
| Woodbury ELK加速 | 高速カーネル評価の数学的トリック | 150ms → <3ms |
| Cloudflare Clef決定ルーティング | CloudflareのAIモデルを使用して曖昧なクエリを検出し、明確化質問を行う | 1,500ms → <40ms |
| デュアルストア取り込み | 各チャンクを2回インデックス:密ベクトルストア + SQLite全文検索(FTS5) | サブ2ms候補検索 |
| 分類ブランチ剪定 | 階層クラスタリングが再ランキング前に無関係なブランチをスキップ | 候補の60–80%を剪定 |
| Clef 4質問パッセージゲート | 関連性、証拠、矛盾の並列フィルター | 約30候補 → 上位5–8に剪定 |
| ユニバーサル取り込みエンジン | 生テキスト、Markdown、JSON/JSONL、CSV、ファイル、ディレクトリを受け入れる | ゼロ前処理ボイラープレート |
| 柔軟なコーパス生成器 | 乱雑なテキスト(HTML、OCRスキャン、チャットトランスクリプト)をキャッシュ付きの構造化コーパスにクリーンアップ | 即時クリーンコーパス作成 |
使用方法
from gaussian_rag import GaussianRAG
rag = GaussianRAG.create()
rag.add_texts(["Passage 1", "Passage 2", "Passage 3"])
results = rag.search("your question", top_k=3)
answer = rag.query("your question") # オプションのLLM生成回答
またサポート:
- 取り込み:
add_markdown()、add_records()(JSON/JSONL)、add_file()、add_directory()、add_raw_text()(汚れたテキスト自動クリーンアップ) - 永続化:
rag.save("path")とGaussianRAG.load("path") - CLI:
python -m gaussian_rag.main ingest/query、およびコーパス生成スクリプト(data/generate_corpus.py) - 評価:
python test_48_laws_e2e.pyは『権力の48の法則』で完全なパイプラインを検証;pytestはレイテンシベンチマークを含むテストスイートを実行
オプションの統合
- Cloudflare Workers AI — Clef決定ルーティングとパッセージゲーティングを有効化(
CLOUDFLARE_ACCOUNT_IDとCLOUDFLARE_API_TOKENを設定) - OpenAI / Gemini / Mistral — LLM回答生成用(それぞれのAPIキーを設定)
設定はconfig/config.yamlにあります(埋め込みバックエンド、次元、低ランクサイズ、検索メトリック、チャンクパラメータ)。
追加機能
- 3Dダッシュボード:FastAPIバックエンド(ポート8001)+ Viteフロントエンド(ポート5173)。インタラクティブなガウス楕円体、Server-Sent Eventsによるライブのステージ別レイテンシテレメトリ、Clef決定トレースを表示
- ドキュメント:
docs/にアーキテクチャ、設計決定、理論、使用法をカバーする広範なドキュメント
ライセンス
GNU Affero General Public License v3.0(AGPL-3.0)。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト