mem0は、AIエージェントやチャットボットに長期記憶を持たせるためのメモリ層です。ユーザーの好みや過去のやり取りを保存し、必要な時に検索して会話やタスクに反映させます。Pythonライブラリ、TypeScript SDK、CLI、セルフホスト用サーバー、クラウドプラットフォームの4通りの使い方が用意されています。
中核はmem0/配下のMemoryクラスで、LLM・埋め込みモデル・ベクトルストアを組み合わせて記憶の追加と検索を行います。READMEによると2026年4月の新アルゴリズムでは、抽出を1回のLLM呼び出しに絞ったADDオンリー方式に変更し、UPDATEやDELETEで上書きしない設計になりました。抽出時にはエンティティを取り出して埋め込み、記憶同士をリンクさせることで検索精度を上げています。検索では意味検索・BM25キーワード検索・エンティティ一致の3種類を並列に計算して統合し、さらに日付を考慮した時間認識ランキングで「現在の状態」「過去の出来事」「今後の予定」を区別します。CLI(cli/node、cli/python)はこのロジックを直接持たず、PlatformBackendクラスがapi.mem0.aiへHTTPリクエストを送るだけの薄いラッパーです。mem0 init --agentで発行したAPIキーをAuthorizationヘッダーに載せ、add・search・update・deleteなどのエンドポイントを叩く構造がplatform.tsのコードから確認できます。
- STEP 01
npm install -g @mem0/cli またはpip install mem0-cliでCLIを導入すると、mem0コマンドが使えるようになります。
- STEP 02
mem0 init --agent --agent-caller <名前>を実行すると、メールアドレスなしで数秒のうちにAPIキーが発行されます。
- STEP 03
mem0 add "I am using mem0"を実行すると、その一文がAPI経由でクラウド側に送られ、LLMが事実として抽出・保存します。
- STEP 04
mem0 search "am I using mem0"を実行すると、意味検索とBM25とエンティティ照合を組み合わせた結果が返ってきます。
- STEP 05
セルフホストを選ぶ場合はdocker compose upでサーバーを立てる想定ですが、この構成ファイル自体はファイルツリーからは確認できませんでした。
- STEP 06
ライブラリ用途でpip install mem0aiを使う場合は、別途LLMと埋め込みモデルのAPIキーを自分で用意して設定する必要があります。
手元にはユーザーID・エージェントIDに紐づく検索可能な記憶ストアが残ります。CLI経由ならmem0.ai管理のクラウド上に、ライブラリ経由なら自分で選んだベクトルストアに記憶が蓄積されます。追加した文章はそのまま保存されるのではなく、LLMが抽出した事実・エンティティ・タイムスタンプ付きレコードとして残り、後から自然文検索で呼び出せる状態になります。
READMEに載っているLoCoMo92.5点などのベンチマークは、クラウド版が持つ独自最適化込みの数値であり、OSS版では「方向性は近いが同一ではない」と明記されています。
エージェント向け無登録サインアップもAPIキー発行自体はmem0.aiのサーバーに依存しており、完全にローカル完結する仕組みではありません。
ライブラリ利用時はmem0ai本体とは別にLLM・埋め込みプロバイダーのAPIキーが必要で、料金や外部依存が発生します。
セルフホスト版のdocker-compose定義やサーバー本体のソースはファイルツリー抜粋には含まれておらず、実際の構成は確認できませんでした。
社内チャットボットやコーディングエージェントに「前回の会話を覚えている」機能を足したいチームには合う選択肢です。CLIのコード(platform.ts・agent-detect.ts)を見る限り、認証・エラー処理・エージェント判定まで作り込まれており、papan設計だけのプロトタイプではないと判断できます。一方でクラウド版のベンチマーク数値とOSS版の実際の性能には差があると自ら明記している点は誠実ですが、導入前提として外部APIキーとネットワーク接続が必須である点は踏まえておくべきです。ソースコードとREADMEの記述が整合しているため、インストールせずともこの判断の信頼性は高いと考えます。