LLMに「記憶」を。エージェントの長期メモリーを実現するOSSフレームワーク4選
syP
syP
2026-07-09
LLMのトークン制限を克服し、セッションを跨いだ文脈維持を可能にする長期メモリー。本記事では、時間的ナレッジグラフのGraphiti、直感的なAPIのHindsight、チーム共有に適したMem0、マルチモーダル対応のSupermemoryという4つのOSSフレームワークを紹介します。各ツールの特徴や対応DB、強みを比較し、プロジェクトの要件に応じた最適な選択肢を提案します。

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を検討するのが良いでしょう。