memUは24/7プロアクティブエージェント向けに構築されたメモリフレームワークです。 長時間稼働向けに設計されており、エージェントを常時オンラインに保つためのLLMトークンコストを大幅に削減し、本番システムで常時稼働・進化し続けるエージェントを実用的にします。 memUはユーザーの意図を継続的にキャプチャして理解します。コマンドがなくても、エージェントはあなたが何をしようとしているかを判断し、自ら行動します。
- Download-and-use and simple to get started.
- Builds long-term memory to understand user intent and act proactively.
- Cuts LLM token cost with smaller context.
Try now: memU bot
memUはメモリをファイルシステムのように扱います—構造化され、階層的で、即座にアクセス可能。
| ファイルシステム | memU メモリ |
|---|---|
| 📁 フォルダ | 🏷️ カテゴリ(自動整理されたトピック) |
| 📄 ファイル | 🧠 メモリアイテム(抽出された事実、好み、スキル) |
| 🔗 シンボリックリンク | 🔄 クロスリファレンス(関連メモリのリンク) |
| 📂 マウントポイント | 📥 リソース(会話、ドキュメント、画像) |
なぜ重要か:
- ディレクトリを閲覧するようにメモリをナビゲート—広いカテゴリから具体的な事実にドリルダウン
- 新しい知識を即座にマウント—会話やドキュメントがクエリ可能なメモリに
- すべてをクロスリンク—メモリが相互参照し、接続されたナレッジグラフを構築
- 永続的でポータブル—ファイルのようにメモリをエクスポート、バックアップ、転送
memory/
├── preferences/
│ ├── communication_style.md
│ └── topic_interests.md
├── relationships/
│ ├── contacts/
│ └── interaction_history/
├── knowledge/
│ ├── domain_expertise/
│ └── learned_skills/
└── context/
├── recent_conversations/
└── pending_tasks/
ファイルシステムが生のバイトを整理されたデータに変換するように、memUは生のインタラクションを構造化された、検索可能な、プロアクティブなインテリジェンスに変換します。
memUが役立つまたは興味深いと思われた場合は、GitHub Star ⭐️をいただけると大変嬉しいです。
| 機能 | 説明 |
|---|---|
| 🤖 24/7プロアクティブエージェント | バックグラウンドで継続的に動作する常時稼働メモリエージェント—眠らない、忘れない |
| 🎯 ユーザー意図キャプチャ | セッション間でユーザーの目標、好み、コンテキストを自動的に理解して記憶 |
| 💰 コスト効率 | インサイトをキャッシュし、冗長なLLM呼び出しを避けることで長時間稼働のトークンコストを削減 |
cd examples/proactive
python proactive.py
┌──────────────────────────────────────────────────────────────────────────────────────────────────┐
│ USER QUERY │
└──────────────────────────────────────────────────────────────────────────────────────────────────┘
│ │
▼ ▼
┌────────────────────────────────────────┐ ┌────────────────────────────────────────────────┐
│ 🤖 MAIN AGENT │ │ 🧠 MEMU BOT │
│ │ │ │
│ Handle user queries & execute tasks │ ◄───► │ Monitor, memorize & proactive intelligence │
├────────────────────────────────────────┤ ├────────────────────────────────────────────────┤
│ │ │ │
│ ┌──────────────────────────────────┐ │ │ ┌──────────────────────────────────────────┐ │
│ │ 1. RECEIVE USER INPUT │ │ │ │ 1. MONITOR INPUT/OUTPUT │ │
│ │ Parse query, understand │ │ ───► │ │ Observe agent interactions │ │
│ │ context and intent │ │ │ │ Track conversation flow │ │
│ └──────────────────────────────────┘ │ │ └──────────────────────────────────────────┘ │
│ │ │ │ │ │
│ ▼ │ │ ▼ │
│ ┌──────────────────────────────────┐ │ │ ┌──────────────────────────────────────────┐ │
│ │ 2. PLAN & EXECUTE │ │ │ │ 2. MEMORIZE & EXTRACT │ │
│ │ Break down tasks │ │ ◄─── │ │ Store insights, facts, preferences │ │
│ │ Call tools, retrieve data │ │ inject │ │ Extract skills & knowledge │ │
│ │ Generate responses │ │ memory │ │ Update user profile │ │
│ └──────────────────────────────────┘ │ │ └──────────────────────────────────────────┘ │
│ │ │ │ │ │
│ ▼ │ │ ▼ │
│ ┌──────────────────────────────────┐ │ │ ┌──────────────────────────────────────────┐ │
│ │ 3. RESPOND TO USER │ │ │ │ 3. PREDICT USER INTENT │ │
│ │ Deliver answer/result │ │ ───► │ │ Anticipate next steps │ │
│ │ Continue conversation │ │ │ │ Identify upcoming needs │ │
│ └──────────────────────────────────┘ │ │ └──────────────────────────────────────────┘ │
│ │ │ │ │ │
│ ▼ │ │ ▼ │
│ ┌──────────────────────────────────┐ │ │ ┌──────────────────────────────────────────┐ │
│ │ 4. LOOP │ │ │ │ 4. RUN PROACTIVE TASKS │ │
│ │ Wait for next user input │ │ ◄─── │ │ Pre-fetch relevant context │ │
│ │ or proactive suggestions │ │ suggest│ │ Prepare recommendations │ │
│ └──────────────────────────────────┘ │ │ │ Update todolist autonomously │ │
│ │ │ └──────────────────────────────────────────┘ │
└────────────────────────────────────────┘ └────────────────────────────────────────────────┘
│ │
└───────────────────────────┬───────────────────────────────┘
▼
┌──────────────────────────────┐
│ CONTINUOUS SYNC LOOP │
│ Agent ◄──► MemU Bot ◄──► DB │
└──────────────────────────────┘
エージェントが興味を監視し、関連コンテンツをプロアクティブに表示
# ユーザーがAIトピックを研究している
MemUが追跡: 閲覧履歴、保存した記事、検索クエリ
# 新しいコンテンツが到着したとき:
エージェント: "検索システムに関する最近の研究と一致する
RAG最適化に関する3つの新しい論文を見つけました。
以前引用した著者(チェン博士)が昨日発表しました。"
# プロアクティブな行動:
- 閲覧パターンからトピックの好みを学習
- 著者/ソースの信頼性の好みを追跡
- エンゲージメント履歴に基づいてノイズをフィルタリング
- 最適な注意を引くタイミングでレコメンドエージェントがコミュニケーションパターンを学習し、日常的な通信を処理
# MemUが時間をかけてメールパターンを観察:
- 一般的なシナリオ用の応答テンプレート
- 優先連絡先と緊急キーワード
- スケジュールの好みと空き状況
- 文体とトーンのバリエーション
# プロアクティブなメールアシスタンス:
エージェント: "12件の新着メールがあります。3件の定型リクエストへの
返信を下書きし、優先連絡先からの2件の緊急事項に
フラグを付けました。ジョンが言及した競合に基づいて
明日のミーティングを再スケジュールしますか?"
# 自律的なアクション:
✓ コンテキストを考慮した返信を下書き
✓ 受信トレイを分類して優先順位付け
✓ スケジュールの競合を検出
✓ 長いスレッドの主要な決定を要約エージェントが市場コンテキストとユーザーの投資行動を追跡
# MemUがトレーディングの好みを学習:
- 過去の決定からのリスク許容度
- 好みのセクターと資産クラス
- 市場イベントへの反応パターン
- ポートフォリオリバランスのトリガー
# プロアクティブなアラート:
エージェント: "NVDAが時間外取引で5%下落しました。過去の行動から、
通常3%以上のテック株の下落時に購入しています。
現在の配分では、70/30の株式-債券目標を維持しながら
$2,000の追加エクスポージャーが可能です。"
# 継続的な監視:
- ユーザー定義のしきい値に関連する価格アラートを追跡
- ニュースイベントとポートフォリオへの影響を相関
- 実行された推奨と無視された推奨から学習
- タックスロスハーベスティングの機会を予測...
MemUの3層システムは、リアクティブクエリとプロアクティブコンテキストロードの両方を可能にします:
| レイヤー | リアクティブ使用 | プロアクティブ使用 |
|---|---|---|
| リソース | 元データへの直接アクセス | 新パターンのバックグラウンド監視 |
| アイテム | ターゲットを絞った事実検索 | 進行中のインタラクションからのリアルタイム抽出 |
| カテゴリ | サマリーレベルの概要 | 予測のための自動コンテキスト組み立て |
プロアクティブな利点:
- 自動分類:新しいメモリがトピックに自己組織化
- パターン検出:システムが繰り返し現れるテーマを特定
- コンテキスト予測:次に必要な情報を予測
プロアクティブメモリを即座に体験:
👉 memu.so - 7×24継続学習を備えたホストサービス
カスタムプロアクティブワークフローを含むエンタープライズデプロイメントについては、info@nevamind.ai にお問い合わせください
| ベースURL | https://api.memu.so |
|---|---|
| 認証 | Authorization: Bearer YOUR_API_KEY |
| メソッド | エンドポイント | 説明 |
|---|---|---|
POST |
/api/v3/memory/memorize |
継続学習タスクを登録 |
GET |
/api/v3/memory/memorize/status/{task_id} |
リアルタイム処理ステータスを確認 |
POST |
/api/v3/memory/categories |
自動生成されたカテゴリを一覧表示 |
POST |
/api/v3/memory/retrieve |
メモリをクエリ(プロアクティブコンテキストロードをサポート) |
pip install -e .要件:Python 3.13+ と OpenAI APIキー
継続学習をテスト(インメモリ):
export OPENAI_API_KEY=your_api_key
cd tests
python test_inmemory.py永続ストレージでテスト(PostgreSQL):
# pgvectorを含むPostgreSQLを起動
docker run -d \
--name memu-postgres \
-e POSTGRES_USER=postgres \
-e POSTGRES_PASSWORD=postgres \
-e POSTGRES_DB=memu \
-p 5432:5432 \
pgvector/pgvector:pg16
# 継続学習テストを実行
export OPENAI_API_KEY=your_api_key
cd tests
python test_postgres.py両方の例はプロアクティブメモリワークフローを示しています:
- 継続的な取り込み:複数のファイルを順次処理
- 自動抽出:即座のメモリ作成
- プロアクティブ検索:コンテキストに応じたメモリ表示
実装の詳細については tests/test_inmemory.py と tests/test_postgres.py を参照してください。
MemUはOpenAI以外のカスタムLLMと埋め込みプロバイダーをサポートしています。llm_profilesで設定:
from memu import MemUService
service = MemUService(
llm_profiles={
# LLM操作のデフォルトプロファイル
"default": {
"base_url": "https://dashscope.aliyuncs.com/compatible-mode/v1",
"api_key": "your_api_key",
"chat_model": "qwen3-max",
"client_backend": "sdk" # "sdk" または "http"
},
# 埋め込み用の別プロファイル
"embedding": {
"base_url": "https://api.voyageai.com/v1",
"api_key": "your_voyage_api_key",
"embed_model": "voyage-3.5-lite"
}
},
# ... その他の設定
)MemUはOpenRouterをモデルプロバイダーとしてサポートし、単一のAPIを通じて複数のLLMプロバイダーにアクセスできます。
from memu import MemoryService
service = MemoryService(
llm_profiles={
"default": {
"provider": "openrouter",
"client_backend": "httpx",
"base_url": "https://openrouter.ai",
"api_key": "your_openrouter_api_key",
"chat_model": "anthropic/claude-3.5-sonnet", # 任意のOpenRouterモデル
"embed_model": "openai/text-embedding-3-small", # 埋め込みモデル
},
},
database_config={
"metadata_store": {"provider": "inmemory"},
},
)| 変数 | 説明 |
|---|---|
OPENROUTER_API_KEY |
openrouter.ai/keys からのOpenRouter APIキー |
| 機能 | ステータス | 注記 |
|---|---|---|
| チャット補完 | サポート済み | 任意のOpenRouterチャットモデルで動作 |
| 埋め込み | サポート済み | OpenRouter経由でOpenAI埋め込みモデルを使用 |
| ビジョン | サポート済み | ビジョン対応モデルを使用(例:openai/gpt-4o) |
export OPENROUTER_API_KEY=your_api_key
# フルワークフローテスト(メモリ化 + 検索)
python tests/test_openrouter.py
# 埋め込み固有のテスト
python tests/test_openrouter_embedding.py
# ビジョン固有のテスト
python tests/test_openrouter_vision.py完全な動作例については examples/example_4_openrouter_memory.py を参照してください。
入力をリアルタイムで処理し、メモリを即座に更新:
result = await service.memorize(
resource_url="path/to/file.json", # ファイルパスまたはURL
modality="conversation", # conversation | document | image | video | audio
user={"user_id": "123"} # オプション:ユーザーにスコープ
)
# 抽出されたメモリを即座に返す:
{
"resource": {...}, # 保存されたリソースメタデータ
"items": [...], # 抽出されたメモリアイテム(即座に利用可能)
"categories": [...] # 自動更新されたカテゴリ構造
}プロアクティブ機能:
- 遅延ゼロの処理—メモリが即座に利用可能
- 手動タグ付けなしの自動分類
- パターン検出のための既存メモリとの相互参照
MemUはプロアクティブコンテキストロードとリアクティブクエリの両方をサポート:
埋め込みを使用した高速なプロアクティブコンテキスト組み立て:
- ✅ インスタントコンテキスト:サブ秒のメモリ表示
- ✅ バックグラウンド監視:LLMコストなしで継続的に実行可能
- ✅ 類似度スコアリング:最も関連性の高いメモリを自動的に特定
複雑なコンテキストのための深い予測的推論:
- ✅ 意図予測:LLMがユーザーが尋ねる前にニーズを推測
- ✅ クエリ進化:コンテキストの発展に応じて検索を自動的に改善
- ✅ 早期終了:十分なコンテキストが収集されたら停止
| 側面 | RAG(高速コンテキスト) | LLM(深い推論) |
|---|---|---|
| 速度 | ⚡ ミリ秒 | 🐢 秒 |
| コスト | 💰 埋め込みのみ | 💰💰 LLM推論 |
| プロアクティブ使用 | 継続的な監視 | トリガーされたコンテキストロード |
| 最適な用途 | リアルタイムの提案 | 複雑な予測 |
# コンテキスト履歴を含むプロアクティブ検索
result = await service.retrieve(
queries=[
{"role": "user", "content": {"text": "彼らの好みは何ですか?"}},
{"role": "user", "content": {"text": "仕事の習慣について教えて"}}
],
where={"user_id": "123"}, # オプション:スコープフィルター
method="rag" # または "llm" でより深い推論
)
# コンテキストに応じた結果を返す:
{
"categories": [...], # 関連トピック領域(自動優先順位付け)
"items": [...], # 具体的なメモリファクト
"resources": [...], # 追跡可能な元ソース
"next_step_query": "..." # 予測されたフォローアップコンテキスト
}プロアクティブフィルタリング:whereを使用して継続的な監視のスコープを設定:
where={"user_id": "123"}- ユーザー固有のコンテキストwhere={"agent_id__in": ["1", "2"]}- マルチエージェント調整whereを省略してグローバルコンテキスト認識
📚 完全なAPIドキュメントについては、SERVICE_API.md を参照 - プロアクティブワークフローパターン、パイプライン設定、リアルタイム更新処理を含む。
明示的なメモリコマンドなしで、すべてのインタラクションから継続的に学習:
export OPENAI_API_KEY=your_api_key
python examples/example_1_conversation_memory.pyプロアクティブな動作:
- カジュアルな言及から好みを自動的に抽出
- インタラクションパターンから関係モデルを構築
- 将来の会話で関連コンテキストを表示
- 学習した好みに基づいてコミュニケーションスタイルを適応
最適な用途: パーソナルAIアシスタント、記憶するカスタマーサポート、ソーシャルチャットボット
実行ログから学習し、最適化をプロアクティブに提案:
export OPENAI_API_KEY=your_api_key
python examples/example_2_skill_extraction.pyプロアクティブな動作:
- エージェントのアクションと結果を継続的に監視
- 成功と失敗のパターンを特定
- 経験からスキルガイドを自動生成
- 類似の将来のタスクに対する戦略をプロアクティブに提案
最適な用途: DevOps自動化、エージェントの自己改善、ナレッジキャプチャ
包括的なコンテキストのために異なる入力タイプ全体でメモリを統合:
export OPENAI_API_KEY=your_api_key
python examples/example_3_multimodal_memory.pyプロアクティブな動作:
- テキスト、画像、ドキュメントを自動的に相互参照
- モダリティ全体で統一された理解を構築
- 関連トピックについて議論する際に視覚的コンテキストを表示
- 複数のソースを組み合わせて情報ニーズを予測
最適な用途: ドキュメントシステム、学習プラットフォーム、研究アシスタント
MemUは、すべての推論タスクでLocomoベンチマークで92.09%の平均精度を達成し、信頼性の高いプロアクティブメモリ操作を実証しています。
詳細な実験データを見る:memU-experiment
| リポジトリ | 説明 | プロアクティブ機能 |
|---|---|---|
| memU | コアプロアクティブメモリエンジン | 7×24学習パイプライン、自動分類 |
| memU-server | 継続同期を備えたバックエンド | リアルタイムメモリ更新、webhookトリガー |
| memU-ui | ビジュアルメモリダッシュボード | ライブメモリ進化モニタリング |
クイックリンク:
コミュニティからのコントリビュートを歓迎します!バグの修正、機能の追加、ドキュメントの改善など、あなたの助けに感謝します。
MemUへのコントリビュートを開始するには、開発環境をセットアップする必要があります:
- Python 3.13+
- uv(Pythonパッケージマネージャー)
- Git
# 1. リポジトリをフォークしてクローン
git clone https://github.com/YOUR_USERNAME/memU.git
cd memU
# 2. 開発依存関係をインストール
make installmake install コマンドは:
uvを使用して仮想環境を作成- すべてのプロジェクト依存関係をインストール
- コード品質チェックのためのpre-commitフックをセットアップ
コントリビュートを提出する前に、コードがすべての品質チェックに合格していることを確認してください:
make checkmake check コマンドは:
- ロックファイル検証:
pyproject.tomlの一貫性を確認 - Pre-commitフック:Ruffでコードをリント、Blackでフォーマット
- 型チェック:静的型分析のための
mypyを実行 - 依存関係分析:
deptryで古い依存関係を検索
詳細なコントリビューションガイドライン、コード標準、開発プラクティスについては、CONTRIBUTING.md を参照してください。
クイックヒント:
- 各機能またはバグ修正用に新しいブランチを作成
- 明確なコミットメッセージを書く
- 新機能にテストを追加
- 必要に応じてドキュメントを更新
- プッシュ前に
make checkを実行
- GitHub Issues:バグを報告 & 機能をリクエスト
- Discord:コミュニティに参加
- X (Twitter):@memU_ai をフォロー
- お問い合わせ:info@nevamind.ai
⭐ GitHubでスターを付けて、新しいリリースの通知を受け取りましょう!





