Persistent AI Memoryは、VS CodeのAIアシスタント、言語モデル(LLM)、Copilotに永続的なローカルメモリストレージを提供するために設計されたオープンソースプロジェクトです。SQLiteデータベースを介してダイアログ、メモリ、ツールの起動記録を保存し、セマンティック検索とリアルタイムのファイル監視をサポートします。このシステムはクロスプラットフォームで動作し、Windows、macOS、Linuxと互換性があります。ユーザーはAIとのインタラクションデータを簡単に保存・検索できるため、開発者、研究者、ローカライズされたAI記憶が必要なシナリオに適している。このプロジェクトはMITライセンスの下でライセンスされており、自由な使用と改変が認められている。
機能一覧
- 永続ストレージ:SQLiteデータベースを使用して、AIの会話、記憶、ツール呼び出しの記録を保持する。
- セマンティック検索:LM Studioのエンベッディング技術により、記憶や対話のセマンティック検索がサポートされます。
- リアルタイム監視:ウォッチドッグを使って会話ファイルを監視し、ChatGPTのようなエクスポートされた会話を自動的にキャプチャします。
- ツール起動ログ:AIの自己反省をサポートするために、モデルコンテキストプロトコル(MCP)ツールの使用状況を記録する。
- クロスプラットフォーム対応:Windows、macOS、Linuxと互換性があり、様々な開発環境に適応。
- 簡単なインストール: ワンクリック・スクリプト、pipによるインストール、その他多くの方法による迅速なデプロイを提供します。
- VS Codeとの統合:VS CodeでCopilotとシームレスに連携し、開発効率を向上させます。
- システム・ヘルス・チェック:データベースとシステムのステータスを表示するインターフェイスを提供し、安定した運用を保証します。
ヘルプの使用
設置プロセス
Persistent AI Memoryは、ユーザーのニーズに合わせて様々なインストール方法を提供しています。以下はその詳細な手順である:
ワンクリックインストール(推奨)
- Linux/macOS以下のコマンドを実行する:
curl -sSL https://raw.githubusercontent.com/savantskie/persistent-ai-memory/main/install.sh | bash
このスクリプトは、依存関係を自動的にダウンロードして設定するので、すぐに使い始めるのに理想的だ。
- ウィンドウズバッチファイルをダウンロードして実行する:
curl -sSL https://raw.githubusercontent.com/savantskie/persistent-ai-memory/main/install.bat -o install.bat && install.bat
スクリプトは自動的に環境をセットアップし、インストール後に使用できるようになります。
- 手動インストール::
- クローン倉庫
git clone https://github.com/savantskie/persistent-ai-memory.git cd persistent-ai-memory
- 依存関係をインストールします:
pip install -r requirements.txt pip install -e .
- オプションの開発依存関係:
pip install -e ".[dev]"
- クローン倉庫
- pipによる直接インストール::
pip install git+https://github.com/savantskie/persistent-ai-memory.git
既存のプロジェクトに直接統合したいユーザーに最適。
インストール後、システムのデフォルトはSQLiteデータベースで、ストレージパスはcustom_memory.db
(カスタマイズ可能)。カスタム組み込みサービスを使用するには、次のように設定します。embedding_service_url
例えば、こうだ:
memory = PersistentAIMemorySystem(db_path="custom_memory.db", embedding_service_url="http://localhost:1234/v1/embeddings")
主な機能
- ストアドメモリー::
- 利用する
store_memory
AIが学習した知識を保持する機能。例import asyncio from ai_memory_core import PersistentAIMemorySystem async def main(): memory = PersistentAIMemorySystem() await memory.store_memory("今天学习了Python异步编程") asyncio.run(main())
- メモリーはSQLiteデータベースに保存され、オプションでメタデータを追加できる。
- 利用する
- セマンティックサーチ::
- とおす
search_memories
関連する記憶を調べる機能:results = await memory.search_memories("Python编程") print(f"找到 {len(results)} 条相关记忆")
- このシステムは、LM Studioのエンベッディング・テクノロジーを使用して、意味的に関連した結果を返します。
- とおす
- 対話の保存と検索::
- ダイアログを保存する:
await memory.store_conversation("user", "什么是异步编程?") await memory.store_conversation("assistant", "异步编程允许...")
- 対話履歴の取得
history = await memory.get_conversation_history(limit=100)
- 特定のダイアログの検索をサポート:
conversations = await memory.search_conversations("异步编程", limit=10)
- ダイアログを保存する:
- ダイアログファイルのリアルタイムモニタリング::
- ChatGPTエクスポートされたダイアログファイルを監視します:
memory.start_conversation_monitoring("/path/to/conversation/files")
- システムは自動的にファイルの変更をキャプチャし、データベースに保存する。
- ChatGPTエクスポートされたダイアログファイルを監視します:
- ツール通話ログ::
- MCPツールコールを記録する:
await memory.log_tool_call("tool_name", {"arg": "value"}, "result", metadata={"key": "value"})
- ツールの使用履歴を表示します:
tool_history = await memory.get_tool_call_history(tool_name="tool_name", limit=100)
- AIは
reflect_on_tool_usage
道具の使用パターンを分析するために自己反省を行う。
- MCPツールコールを記録する:
- システムのヘルスチェック::
- システムの状態を確認する:
status = await memory.get_system_health() print(status)
- データベース接続状態およびシステム操作情報を返します。
- システムの状態を確認する:
注目の機能操作
- VSコードの統合プロジェクトをCopilot for VS Codeに統合するには、PythonエクステンションとCopilotプラグインがインストールされていることを確認します。プロジェクトを実行すると、Copilotはローカル・メモリ・データベースに直接アクセスできるようになり、コード補完のコンテキスト精度が向上します。
- クロスプラットフォームの互換性Windowsユーザーは、シェルスクリプトを実行するためにGit Bashをインストールする必要があるかもしれません。
- セマンティック検索の最適化LM Studio のエンベッディングサービスでは、検索結果がより正確になります。例えば、"Python" で検索すると、完全一致だけでなく、Python に関連するすべてのメモリが返されます。
ほら
- LM Studio Embedded Services にアクセスするための安定したネットワーク接続の確保(デフォルト)
http://localhost:1234/v1/embeddings
). - SQLiteデータベースファイルを定期的にバックアップし、データの損失を防ぐ。
- VS Codeを使用する場合は、Python環境がプロジェクトの依存関係と互換性があることを確認することをお勧めします。
アプリケーションシナリオ
- AIアシスタントをデバッグする開発者たち
開発者は、Persistent AI Memoryを使用して、AIアシスタントの対話データを保存し、対話パターンを分析し、モデルのパフォーマンスを最適化できます。例えば、チャットボットをデバッグする際に、過去の会話を取得して応答ロジックを改善する。 - 言語モデルを分析する研究者たち
研究者は、セマンティック検索とツールの起動ログを使用して、特定のタスクにおける言語モデルの動作を分析し、実験データを生成することができる。例えば、プログラミングタスクにおけるAIによるツールの使用頻度を調べることができる。 - 個人の知識管理
ユーザーは学習ノートやひらめきを記憶として保存し、意味検索によって素早く取り出すことができる。例えば、学生はコースノートを保存し、関連するコンテンツを見つけるために「機械学習」を検索することができます。 - VSコードの効率化
プログラマーは、コード関連の知識をシステムに保存し、Copilotと組み合わせることで、コード補完のコンテキスト精度を向上させることができます。たとえば、プロジェクトの API ドキュメントを保存して、関連する関数の説明にすばやくアクセスできます。
品質保証
- データ・プライバシーをどのように確保するのか?
データはローカルのSQLiteデータベースに保存されるため、インターネットへのアップロードが不要になり、プライバシーが保護される。ユーザーはデータベース・パスをカスタマイズして、データ・アクセスをさらに制御することができます。 - 対応するAIモデルは?
クロード、GPT、ラマなどのMCPプロトコルをサポートする機種と互換性があり、VSコード経由でコパイロットと統合することもできる。 - インストールに失敗したら?
Pythonのバージョン(3.8以上推奨)とpipの依存関係が完全であることを確認してください。GitHub リポジトリの issue ページを参照するか、手動でインストールしてみてください。 - セマンティック検索の精度は?
より高い精度を実現するために、LM Studio のエンベッディングモデルに依存。ユーザーはエンベッディングサービスの URL を調整することで、よりロバストなモデルを使用することができます。