このプロジェクトについて

Oneironは、メモリファーストのAIアプリケーション向けに設計された検索エンジンです。ベクトル、テキスト、グラフデータベースを別々のサービスとして扱う従来のスタックとは異なり、OneironはRustライブラリとしてプロセス内で実行され、C FFIバインディングを提供します。このアーキテクチャにより、ネットワークホップや一貫性の問題が排除され、モバイルデバイス(iOS、Android)、デスクトップ、Node.js、または`oneiron-server`を介したスタンドアロンデーモンへの展開に適しています。 エンジンは、ACIDトランザクションを備えた単一のLMDB環境を活用して、アトミックなマルチデータベース書き込みを実現します。5つの異なる検索信号をサポートしています: - **ベクトル**: セマンティック類似性のためのSIMD加速付きHNSW(フラットNSW)。 - **テキスト**: 精確なキーワードマッチングのためのBM25逆インデックス。 - **グラフ**: 関係性のあるエンティティ発見のための型付きエッジ上のパーソナライズドPageRank。 - **時間**: イベントベースのクエリのための二重時間範囲インデックス。 - **音響**: 音声/ASR入力からのファジーマッチングのためのコードベースのポスティングリスト。 これらの信号は、信号ごとのブースト付きの相互ランク融合を使用して組み合わせることができます。システムは、エンティティブロブをMessagePack形式で保存し、LLM対応の構造にコンテキストをパックします。OneironはApache 2.0ライセンスの下で配布され、Rustライブラリインターフェースとサーバーサイド展開用のローカルデーモンを提供します。