AI Deck

MemWeave ─ AIエージェントの記憶をMarkdownファイルで持ち、SQLiteでハイブリッド検索するゼロインフラのPythonライブラリ

MemWeaveは、AIエージェントに「人間が読める記憶」を持たせるためのオープンソースのPythonライブラリ。記憶はベクターデータベースではなく、手元のMarkdownファイルとして保存される。つまりエディタで開いて中身を確認でき、grepで検索でき、git diffで「エージェントが何を覚えたか」を差分として追える。検索はSQLite上で完結し、キーワード検索(BM25)とベクトル検索を組み合わせたハイブリッド方式。外部のベクターDBを立てる必要もクラウド課金も発生しない。開発者はドイツ在住のSachin Sharma氏で、2026年4月3日にv0.1.0が公開され、2026年8月時点の最新版はv0.2.1(2026年5月公開)。ライセンスはMIT。

主な特徴

  • 記憶がそのままMarkdownファイル: 記憶はmemory/ディレクトリ配下の.mdファイルとして保存される。サブディレクトリはそのままエージェントごとの名前空間になり、共有・分離を自由に設計できる。ブラックボックス化しがちなエージェントの記憶を、テキストファイルとしてレビュー・修正・バージョン管理できるのが最大の特徴
  • SQLiteだけで動くハイブリッド検索: FTS5によるBM25キーワード検索とsqlite-vecによるベクトル類似検索を並行して実行し、スコアを重み付けして統合する(既定の重みはベクトル側が0.7、BM25側が0.3で、設定で変更できる)。専用のベクターDBサーバーは不要で、インデックスはSQLiteファイル1つに収まる
  • テンポラル減衰とMMR再ランキング: ファイルの日付をもとに古い記憶のスコアを指数関数的に減衰させ(既定の半減期は30日)、日付なしのファイルは「エバーグリーン」として減衰対象外になる。さらにMMR再ランキングで似た内容の重複を抑え、多様性のある検索結果を返す
  • 検索時にLLMを呼ばない設計: 埋め込みはコンテンツのハッシュでキャッシュされ、検索処理そのものはLLM呼び出しゼロ。埋め込みAPIが使えない環境ではキーワード検索へフォールバックするため、完全オフラインでも動作する
  • 埋め込みモデルを選べる: LiteLLM経由でOpenAI、Gemini、Mistral、Cohere、Voyage AIのほか、Ollamaを使ったローカルモデルにも対応。APIキーなしのキーワード専用モードも用意されている
  • CLIとPython APIの両方: memweave index / search / files / statsといったコマンドライン操作と、await mem.search(...)のような非同期Python APIの双方から扱える。ファイル監視による自動再インデックスにも対応
  • ベンチマークでの実証: 長期記憶の評価ベンチマークLongMemEval-Sにおいて、Recall@5で98.00%、Recall@10で99.11%という結果が公開されている(ローカルのall-MiniLM-L6-v2モデルを使用)

料金

プラン料金主な内容
オープンソース(MIT)$0ライブラリ・CLIの全機能。pip install memweaveで導入

MemWeave自体は無料で、サーバー費用もかからない。ただし埋め込みにOpenAIやGeminiなどのクラウドモデルを使う場合は、そのAPI利用料が別途発生する。Ollamaでローカルモデルを使えばこの費用もゼロにできる。

料金は2026年8月時点の情報です。最新の情報は公式リポジトリをご確認ください。

メリット・デメリット

メリット

  • 記憶がプレーンなMarkdownなので、中身を目で確認でき、手で直せて、gitで履歴を追える
  • ベクターDBの構築・運用が不要。SQLiteファイル1つで完結するため、個人開発や小規模プロジェクトでも導入コストが低い
  • キーワード検索と意味検索を併用するため、固有名詞にも曖昧な言い回しにも対応しやすい
  • テンポラル減衰により「古い情報が新しい情報を押しのける」問題を構造的に抑えられる
  • 完全オフライン運用が可能で、機密性の高いデータを外部に送らずに済む
  • MITライセンスで商用利用にも制約が少ない

⚠️ デメリット

  • Python 3.12以上が必要で、動作環境の前提はやや新しめ
  • 完成したSaaSではなくライブラリなので、UIも管理画面もなく、組み込みには実装作業が必要
  • v0.2.1と開発初期のバージョンであり、APIや設定項目が今後変わる可能性がある
  • 個人開発のプロジェクトのため、エンタープライズ向けのサポート体制やSLAは期待できない
  • 大規模・高頻度の書き込みを伴う用途では、SQLiteとファイルベースという構成が制約になりうる

類似サービスとの比較

比較項目MemWeaveMem0ZepLetta
記憶の保存形式Markdownファイル + SQLite独自ストア(ベクター/グラフ)時系列ナレッジグラフエージェント状態のDB管理
人間が直接読めるか読める・手で編集できる基本的にAPI経由基本的にAPI経由基本的にAPI経由
インフラ要件不要(SQLite 1ファイル)セルフホストまたはクラウドセルフホストまたはクラウドセルフホストまたはクラウド
提供形態Pythonライブラリ + CLIライブラリ + マネージドサービスマネージドサービス中心エージェント基盤
主な守備範囲記憶の保存と検索に特化記憶レイヤー全般会話履歴と関係性の追跡ステートフルなエージェント構築

MemWeaveの立ち位置は「記憶の保存と検索」に絞られており、エージェント基盤そのものを提供するLettaとは役割が異なる。Mem0やZepと比べたときの差別化点は、記憶が人間の可読なファイルとして残ることと、追加のインフラを一切必要としないことにある。

こんな人におすすめ

  • AIエージェントに長期記憶を持たせたいが、ベクターDBの運用は避けたい個人開発者
  • エージェントが「何を覚えたか」を人間が確認・修正できる状態にしておきたい人
  • 機密データを外部サービスに送らず、ローカル完結で記憶機能を実装したいチーム
  • 既存のMarkdownメモやドキュメント資産を、そのままエージェントの知識源にしたい人
  • 記憶の内容をgitで管理し、変更履歴をレビュー対象にしたい開発チーム

まとめ

MemWeaveは、「エージェントの記憶を不透明なベクター空間ではなく、読めるファイルとして持つ」という発想のライブラリである。SQLiteだけでBM25とベクトル検索のハイブリッドを実現し、テンポラル減衰とMMRで実用的な精度を確保しながら、インフラ費用をゼロに保つ。まだバージョン0.2系の若いプロジェクトであり、本番システムに組み込む際はAPIの変更に追随する余裕を見込んでおきたい。一方で、個人開発や社内ツールで「まず記憶を持たせてみる」段階には、導入の軽さと中身の見通しやすさが大きな利点になる。

関連リンク

← ブログ