mnemosyne-oss/mnemosyne
Zero-cloud AI memory that works everywhere. SQLite-backed. One pure-Python dependency.
Mnemosyne – エージェント向けローカルファースト AI メモリ
概要
Mnemosyne は、LLM を搭載したあらゆるエージェントが使用できる、オープンソースで SQLite バックエンドのメモリレイヤーです。事実、埋め込み、時間的トリプルをローカルに保存し、以下の方法でアクセスできます:
- MCP サーバー(JSON-over-STDIO / SSE / HTTP プロトコル)は、既存の多くのエージェント(Claude Code、Cursor、Codex、OpenWebUI など)と連携します。
- Python SDK(
remember、recall)、または - Hermes プラグイン(Hermes エージェントフレームワーク用)。
これらはすべて単一の pip install mnemosyne-memory で実行でき、外部ベクトル DB やクラウドサービスは不要です。唯一の依存関係は SQLite データベースファイルです。
コアコンセプト
| コンポーネント | 役割 |
|---|---|
| 作業記憶 | LLM 呼び出しの前に自動的に注入されるホットコンテキスト。TTL 後にアイテムは期限切れになります。 |
| エピソード記憶 | SQLite-vec + FTS5 を使用したハイブリッドベクトルキーワード検索による長期保存。 |
| TripleStore | バージョン管理付きの時間的知識グラフ(主語-述語-目的語)。 |
| BEAM(二層エピソード連想記憶) | 3 つのレイヤーを組み合わせ、結果を 50% ベクトル類似度 + 30% FTS5 ランク + 20% 重要度でスコアリングする全体アーキテクチャ。 |
ベクトルは**バイナリ(MIB)**です。384 次元の浮動小数点埋め込みは 48 バイトに圧縮され、32 倍のサイズ削減を実現し、SQLite 内で直接ハミング距離検索が可能になります。
使用方法
CLI(クイックスタート)
pip install mnemosyne-memory # コア
pip install "mnemosyne-memory[all]" # フル機能セット
# MCP サーバーを起動(デフォルトは stdio)
mnemosyne mcp
# 事実を保存および取得
mnemosyne store "User prefers dark mode"
mnemosyne recall "preferences"
Python SDK(任意のエージェントに埋め込む)
from mnemosyne import remember, recall
remember("User prefers dark mode", importance=0.9)
results = recall("dark mode", top_k=3)
スコープ、有効期限、エンティティ抽出を設定したり、LLM に事実を抽出させることもできます(extract=True)。
統合例
| プラットフォーム | 統合方法 |
|---|---|
| Cursor、Claude Code、Codex、Windsurf | プラットフォームの *.json 設定に MCP エントリを追加します。 |
| OpenWebUI | 1 行のブリッジファイルを data/tools/ に配置します。 |
| OpenClaw | mnemosyne-memory[openclaw] をインストールし、設定でプロバイダーを参照します。 |
| Hermes Agent | mnemosyne-hermes をインストールします。プラグインがメモリプロバイダーを自動的に登録します。 |
| 任意の Python エージェント | import mnemosyne して SDK を呼び出します。 |
完全な統合ガイドは docs/integrations/ にあります。
ベンチマーク(報告による)
- BEAM エンドツーエンド QA(100K 項目):65.2%(v3.0.0、2026 年 5 月)– 他のオープンソースメモリシステムと同等。
- BEAM 純粋なリコール:Recall@10 は 100K から 10M 項目まで約 20% を維持し、レイテンシは 10M で 35 ミリ秒に低下、ストレージはサブリニアに増加(10M エントリで 7.2 MB)。
- LongMemEval:以前は 98.9% のリコールを主張していましたが、再現可能な再実行を待って撤回されました。
重要なポイントは、コーパスが成長してもリコール品質は一定であり、システムはエピソード圧縮を使用してストレージを最小限に保つことです。
セキュリティとプライバシーモデル
- ローカルファースト:デフォルトでは、データはマシンから外部に出ません。
- オプションの同期:デバイス間の双方向デルタ同期。クライアント側暗号化(AES-128-CBC または XSalsa20-Poly1305)付き。サーバーはメタデータのみを認識します。
- テレメトリなし:リモート埋め込み API を有効にしない限り、分析やクラウド呼び出しはありません。
- 設定可能な TLS:リモート同期または埋め込みエンドポイント用。
設定のハイライト
| 変数 | デフォルト | 制御内容 |
|---|---|---|
MNEMOSYNE_DATA_DIR |
~/.hermes/mnemosyne/data |
SQLite ファイルの場所 |
MNEMOSYNE_VEC_TYPE |
int8 |
ベクトル圧縮形式(float32、int8、bit) |
MNEMOSYNE_EMBEDDING_API_URL |
OpenRouter エンドポイント | リモート埋め込みサービス(ローカル埋め込みを実行しない場合) |
MNEMOSYNE_EMBEDDING_MODEL |
BAAI/bge-small-en-v1.5 |
使用する埋め込みモデル |
MNEMOSYNE_WM_MAX_ITEMS |
10000 |
ホット作業記憶キャッシュのサイズ |
環境変数で重み付け(MNEMOSYNE_VEC_WEIGHT、FTS_WEIGHT、IMPORTANCE_WEIGHT)と最近性減衰を調整できます。
誰が使うべきか?
- カスタム LLM エージェントを構築する開発者:別のベクトル DB を実行せずに、永続的で検索可能なメモリが必要な場合。
- オンプレミスまたはエッジデバイスに展開するチーム(Raspberry Pi、低 RAM VPS):スタック全体が数百 MB に収まるため。
- プライバシーを重視するユーザー:デバイス間の暗号化同期が必要な場合。
現在の状況
Mnemosyne は実際に積極的にメンテナンスされているオープンソースプロジェクト(MIT ライセンス)であり、Mem0、Letta、Honcho などと同じ問題領域を対象としていますが、以下の点で差別化されています:
- 純 Python で単一の SQLite ファイル、
- 組み込み MCP サーバーにより、既存の多くのエージェントにプラグアンドプレイで対応、
- クライアント側暗号化同期をコア機能として提供。
上記の詳細はすべて、リポジトリの README から直接取得しています。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト