ハイブリッド検索とRRFにより、純粋なベクトル検索を超えるAIメモリシステムが向上します。

ローカルファーストでセルフホスト型のセットアップとして、PostgreSQLとpgvectorを使用したAIアシスタント向けのオープンソースメモリシステムが開発されました。このシステムは、AIアシスタントがセッションを超えて記憶する情報を保存し、検索可能にします。
なぜ純粋なベクトル検索では不十分だったのか
開発者は当初、純粋なベクトル検索から始めました:クエリを埋め込み、コサイン類似度を使用し、上位k件の結果を返します。これは曖昧な質問には機能しましたが、完全一致の検索では一貫して失敗しました。例えば、「RRF merging」を検索すると、文字通り「RRF merging」と記載されている文書ではなく、数か月前の「ランクリストの結合」に関するチャンクが返されてしまいました。
ハイブリッド検索ソリューション
解決策には、2つ目の検索手段の追加が含まれました:PostgreSQLのtsvectorとGINインデックスを使用した全文検索です。このキーワードマッチングは、ベクトル検索が見逃すものを捕捉します。しかし、これにより統合が必要な2つのランクリストが作成されました。
相互順位融合(RRF)
2つのランクリストを統合するには、相互順位融合が答えであることが証明されました。式は単純です:スコア = 1 / (k + 順位)、ここでk=60(標準値)。両方のリストに出現する結果は、両方のスコアが加算されます。このアプローチでは、コサイン類似度とts_rankの間の重み調整やスコア正規化は必要ありません—順位のみを使用します。
クエリ拡張技術
検索前に、システムはクエリを埋め込みモデルのWordPieceトークナイザーで実行し、主要な用語(技術的またはドメイン用語である可能性が高いマルチサブワードトークン)を抽出します。これにより最大3つのクエリバリエーションが生成され、すべてを埋め込み、並行して検索します。これにより、1つの表現では見逃される可能性のある結果を捕捉します。
技術スタック
- PostgreSQL 16 + pgvector(ベクトル用HNSWインデックス、全文検索用GINインデックス)
- 埋め込み用all-MiniLM-L6-v2(384次元、CPUで実行)
- 非同期psycopg 3を使用したPython
- 3つの取り込みアダプター:マークダウン、プレーンテキスト、Claude会話JSON
システム全体はローカルで実行され、埋め込み用のAPI呼び出しやクラウド依存性はありません。コードは最近出荷され、開発者は完全なアプローチについて詳細なブログ記事を書いています。
📖 Read the full source: r/LocalLLaMA
👀 See Also

Claude Code v2.1.90は、CLAUDE_CODE_NO_FLICKERフラグによるマウスサポートを追加しました。
Anthropicは、チャットインターフェース内でマウスサポートを可能にする新機能を備えたClaude Code v2.1.90をリリースしました。ユーザーは、claudeを実行する前に環境変数CLAUDE_CODE_NO_FLICKER=1を設定することで有効化できます。

200以上のアプリデザイン仕様書(Markdown形式) – ClaudeやCursorにドラッグして正確なUIクローンを作成
200以上の人気アプリを、正確な16進数カラーコード、タイプスケール、スペーシング、全画面状態、ナビゲーショングラフを含む構造化マークダウンデザイン仕様として厳選したライブラリ。Claude、Cursor、または任意のAIエージェントにドロップするだけで、色やスペーシングを推測することなく、SwiftUI、Jetpack Compose、ExpoのUIクローンを生成できます。

Claude Codeが開発者の3週間見積もりに対し6時間でSaaSオンボーディングフローを再構築、活性化率を13ポイント向上
SaaS創業者がClaude Codeを使い、サインアップからダッシュボードチュートリアルまでのオンボーディングフロー全体を6時間で再構築。当初の開発者見積もりは3週間・4,500ドルだった。アクティベーション率が35%から48%に向上。

OpenMindは、OpenClawインストールに視覚的なマインドマップインターフェースを追加します。
OpenMindは、OpenClawインストールをインタラクティブでライブ編集可能なマインドマップに変換するオープンソースツールです。リアルタイムのメモリ可視化、ホットスワップ可能なロジック、全ノードにわたる全文検索機能を備えています。