LLMに「記憶」を。エージェントの長期メモリーを実現するOSSフレームワーク4選
AIエージェントやLLMを活用する際、最大の壁の一つが「記憶(メモリー)」です。LLMは設計上、一度に扱えるトークン量に限界があり、セッションを跨いだ文脈の維持には工夫が必要です。
本記事では、RAG(検索拡張生成)を超え、グラフベースの知識管理やセッション永続化を実現する注目のオープンソースプロジェクト4選を紹介します。これらを活用することで、より賢く、文脈を理解するエージェント構築が可能になります。
1. Graphiti:時間軸を持つナレッジグラフ
Graphitiは「オープンソースの時間的(Temporal)ナレッジグラフ・フレームワーク」です。
- 特徴: 情報が時間の経過とともに再評価され、文脈が維持されます。データはグラフ構造で保存されるのが核心です。
- 対応LLM: Anthropic, Azure OpenAI, Google Gemini, Groq, Ollama(ローカル)など。
- データ連携: GitHub, Gmail, OneDrive, Notionなどから収集可能。
- 注意点: グラフDB(Neo4j, Amazon Neptune等)が必要。PostgreSQL (pgvector) は非対応です。
2. Hindsight:直感的な3つのAPI
Hindsightは、クラウドとローカルの両方で提供され、4つのメモリータイプと検索戦略を使い分けます。
- 主要API:
retain: 事実や会話内容の保存recall: 保存内容の検索reflect: データを活用したエージェントループの実行
- 強み: VS Codeの「Continue」拡張機能との統合が強力。
@hindsightと入力するだけで、長期メモリーをコンテキストに注入できます。
3. Mem0:チームで共有できる「企業メモリー」
Mem0は、複数のエージェントやチーム間でデータを共有する「企業メモリー」という独自の概念を持ちます。
- データ管理: ベクター、グラフ、SQLデータベースを使い分け、古いデータは上書きせず「非アクティブ化」して保存します。
- 環境: Python環境とベクターDB(pgvectorを適用したPostgreSQLなど)が必要です。
- 対応: LangChain, LiteLLM, LM Studio, Ollamaなどのセルフホスティング環境も幅広くサポート。
4. Supermemory:マルチモーダル対応と簡単導入
Supermemoryは、テキストだけでなくPDF、Office文書、動画、画像など多様なソースからコンテキストグラフを構築します。
- 強み: データの抽出機能が非常に強力です。
- 運用: オープンソース版は「単一のバイナリ」で構成されており、外部DBの構築なしで簡単にデプロイ・テストが可能です。
まとめ:各フレームワークの比較
| プロジェクト | 中心となる技術 | 主な強み | 推奨DB |
|---|---|---|---|
| Graphiti | 時間的ナレッジグラフ | 時間経過による文脈の再評価 | Neo4j, Neptune |
| Hindsight | 3層API (Retain/Recall/Reflect) | VS Code等の開発ツール連携 | クラウド/ローカル |
| Mem0 | ハイブリッド・ストレージ | チーム間共有(企業メモリー) | PostgreSQL (pgvector) |
| Supermemory | コンテキストグラフ | 多様なファイル形式からの抽出 | 内蔵(単一バイナリ) |
プロジェクトの要件に合わせて、これらのツールを選択することで、LLMエージェントの可能性は大きく広がります。まずはSupermemoryでクイックに試し、複雑な文脈が必要ならGraphitiやMem0を検討するのが良いでしょう。

