Tencentはhy-memory==2.0.1を公開した。チャット、作業、コーディングのセッションから文脈を保存し、取り出すためのPython SDKだ。コードは公開されているが、付属するMemHubアプリはまだソースコードの段階で、公開リリース用の配布物を待っている。共有メモリ層を検討する開発者は今すぐSDKを使えるものの、モデルと埋め込み用のエンドポイントを用意し、各エージェントがどのセッション記録を読めるかを決める必要がある。
プロジェクトの変更履歴では、Hy Memory 2.0.1の日付は2026年10月16日となっている。PyPIにはパッケージのアップロードが10月15日と記録され、関連するモデルの論文も同日に投稿された。これらは別々の公開記録であり、デスクトップ製品が出荷された証拠ではない。
大きな変化
- 何が変わったか:公開されたSDKは、
add()とsearch()を通じて、チャット、作業、コーディングの記憶経路を個別に提供する。組み込むアプリケーションが使える、情報源やワークスペースのフィルターもある。 - 仕組み:チャットは会話を記憶の層に整理する。作業はツールの実行トレースからセッションに関する事実を1件抽出し、妥当な場合には再利用できる経験も抽出する。コーディングはコード変更のバージョンチェーンを追加する。呼び出し側が元の資料、識別情報、ストレージ設定、モデルサービスを提供する。
- なぜ重要か:エージェントのホストは、新しいセッションごとに履歴全体を渡す代わりに、過去の会話やタスク上の判断の簡潔な記録を取り出せる。その記録が正確で、アクセスが認められ、有用かどうかは、ホストが何を送り、どの記憶をプロンプトに戻すことを許すかに引き続き左右される。
組み込む前にワークフローを選ぶ
SDKのREADMEには、sceneの3つの値が説明されている。chatはプレーンテキストまたはメッセージ配列を受け取り、profile、normal、proactiveという記憶検索チャネルを返す。liteモードでは、LLMによる抽出をせず、生のテキストを埋め込み検索用に保存する。proでは抽出と整合処理が加わり、ultraではevolve()を通じて、さらに進化処理を実行できる。
一方、workingでは、入力にツール呼び出しのトレースを含める必要がある。1つのセッションからタスク、取り組み方、結果に関する事実を1件と、エンジンの価値基準を満たす再利用可能な経験を0件以上生成する。codingは同じ2層を使い、変更したコードのバージョン進化チェーンを加える。READMEによると、MEMORY_CODING_CHAIN_REPO_ROOTが設定されていればローカルのGit差分を使え、またはツールトレース内の決定論的な置換操作を使える。liteでは、SDKは作業とコーディングの区別を無視して、生の記憶を保存する。
これらの出力構造は、異なる問いに対応する。会話から分かる好みはchat、ツールの結果を伴う完了済みタスクはworking、以前のリビジョンが重要になる可能性のあるコード変更はcodingに振り分ける。これは文書に記載された振り分けの区別であり、BIG CHANGEによる性能テストではない。
文書に沿ったSDKの利用手順
以下の手順は、リポジトリのクイックスタートとMemHubのSDK設定ガイドに基づく。BIG CHANGEはパッケージを実行しておらず、モデルの呼び出しも行っていない。
Python 3.9以降を使い、バージョンを固定したSDKをインストールする。
pip install hy-memory==2.0.1ChromaDBとKuzuは中核の依存パッケージに含まれる。Qdrant、FAISS、Neo4j、MySQLキャッシュ、ローカルの再ランキングモデルには、それぞれ別の追加依存パッケージがある。MemHubのソース開発環境は異なり、Node.js 24、pnpm 11、Python 3.12、uvが必要だ。
クライアントを初期化する前に、LLMと埋め込みのエンドポイントを両方設定する。READMEには、MEMORY_LLM_API_KEY、MEMORY_LLM_BASE_URL、MEMORY_LLM_MODELと、対応するMEMORY_EMBEDDER_*変数、さらにMEMORY_EMBEDDING_DIMSが列挙されている。デフォルトでのOPENAI_API_KEYの使用も説明されている。自分で使うエンドポイントのURL、モデル名、キー、適合する埋め込み次元を指定する。これらはOpenAI互換のインターフェースであり、Tencentの別モデルHy-Memory-30Bを使う必要があるわけではない。保存するトレースに認証情報を含めないようにする。
以下のチャット例では、文書に記載されたMemoryConfig.from_env()、HyMemoryClient、add()、search()のAPIを使う。呼び出し元のアプリケーションは、authorized_messagesをプレーンテキストまたはOpenAI形式のメッセージとして提供し、安定した、権限の確認されたuser_idと、queryを指定する必要がある。特定の結果が得られると主張せず、戻り値を表示する例だ。
from hy_memory import HyMemoryClient, MemoryConfig
def write_and_recall(authorized_messages, user_id, query):
config = MemoryConfig.from_env() # Caller supplies LLM and embedding settings.
client = HyMemoryClient(config=config, mode="pro")
try:
client.add(authorized_messages, user_id=user_id)
return client.search(query, user_ids=[user_id], limit=10)
finally:
client.close()作業またはコーディングでは、ツール呼び出しか、role="tool"のエントリーを含むメッセージトレースを渡し、sceneを明示的に設定する。workspace_idを設定してプロジェクト資料を分離する。branchにはこの設定が必要だ。呼び出し元アプリケーションの境界が重要な場合、書き込み時にはsourceを、検索時にはinclude_sourcesまたはexclude_sourcesを設定する。チャット検索は記憶チャネルを返し、作業・コーディング検索はfactsとexperiencesを返す。コーディングではさらにchain_blockが返る。記録をエージェントのホストに渡す前に内容を確認する。list_memories、get、update、deleteで、記録単位の管理ができる。
統合が成功していれば、許可された入力から保存した記録と、意図した記憶検索の問いに答える範囲を絞った検索結果があるはずだ。READMEは戻り値のフィールドを文書化しているが、抽出や検索が成功したと主張できる実行は観察していない。作業・コーディング検索が空の場合、まず書き込みにツールの結果が含まれ、proまたはultraを使っていたかを確認する。そのうえで、同じuser_id、workspace_id、branchと情報源フィルターを使っているか確認する。埋め込みモデルや次元を変える場合、MemHubの設定ガイドは、既存のコレクションを違うベクトル幅でそのまま再利用することはできないと警告している。
MemHubとモデルは別々に選ぶ
MemHubはSDKを基盤とする、開発計画上のデスクトップ・CLI製品だ。そのREADMEは、管理されたローカルランタイム、情報源コネクター、ホストとの統合を説明している。変更履歴は提供状況をより具体的に示している。ソースバージョン1.0.0、ビルド4はあるが、npmへの公開とGitHubのリリース配布物はまだ準備中だ。インストールガイドはLinuxとmacOSをリリース対象とし、Windowsは非対応とする。npmによるインストール手順は、それらの配布物の公開が前提となっている。現時点では、予定されたインストール経路と捉えるべきだ。
ローカル保存だからといって、処理の全段階がローカルにとどまるわけでもない。MemHubのプライバシー文書は、会話の情報源を読む許可、許可された資料を選択したサードパーティーのモデルサービスに送る許可、エージェントのホストが記憶を取り出す許可を分けている。元の証拠資料はローカルのデータディレクトリに保存され、外部モデルサービスを選んだ場合は、選択したタスクに必要な許可済みの内容がそのサービスに送られるという。SDKを直接組み込む開発者は、情報源への同意、モデルへのアクセス、ホストによる記憶検索の制御を自分で実装しなければならない。MemHubの統合ガイドは、製品のブリッジがSDKを呼び出すだけでなく、こうしたガバナンス手順を加えると説明する。
Tencentは、Hy-Memory-30B-A3Bも公開した。記憶の書き込み用に訓練されたモデルで、技術報告書は10月15日に投稿された。報告書は、固定のベンチマーク部分標本で比較対象システムより優位だと主張している。これは提供元が報告したモデル評価であり、このSDKやMemHubが配備済みエージェントの回答を改善するという独立した証拠ではない。SDKは他の互換モデルサービスも利用できる。
リポジトリの現在のライセンスファイルとプロジェクトのメタデータはApache-2.0と記載する。変更履歴によると、これは2.0.1のアップロード後に採用されたもので、アップロード時の変更できないPyPIメタデータは今もMITとなっている。パッケージは無料でダウンロードできるが、選んだモデルや埋め込みサービスはリクエストに料金を課す場合がある。リリース文書に共通の運用価格は示されていない。したがって実務上の判断は、どの記憶経路と権限の境界を組み込むかであり、提供元の料金と検索品質は開発者自身の環境で測定する必要がある。
情報源と参考資料
- Hy-Memoryリポジトリとクイックスタート — 現在のSDKシナリオ、API例、モード、ストレージの選択肢、情報源フィルター。
- リリース変更履歴とPyPI 2.0.1 — SDKの異なる公開日、パッケージ要件、MemHubの状態、ライセンスメタデータの食い違い。
- MemHub README、SDK統合ガイド、プライバシー文書 — ソース段階の製品構成、設定、権限の境界。
- MemHubインストールガイド — 想定プラットフォームと、配布物の公開を前提とする経路。
- Hy-Memory-30B-A3B報告書 — プレプリントと著者が報告するモデル評価。実際の運用環境でこの統合を検証したものではない。



