Microsoftは年次カンファレンスIgniteにてFoundry Agent Serviceのメモリ機能、Agent serviceにネイティブ統合されたフルマネージド長期メモリストア、のパブリックプレビュー版を発表した。
メモリ機能を利用することで開発者は、チャットサマリ、ユーザー設定、重要なコンテキストを、セッション、デバイス、ワークフローに跨って保存、取得、管理できる。Foundryブログ投稿の著者は書いている:
私たちのメモリ機能は会話履歴からユーザープロファイル情報とチャット要約の両方を、システム的に抽出する。
Foundryポータルで開発者はメモリ機能を有効化でき、メモリストアはエージェント向けに自動的に作成および設定される。さらに開発者はSDKやAPIを利用してこの機能を操作できる。
ドキュメントの中で、同社はメモリ機能がマネージドメモリストア内のアイテムとして保存され、3つのフェーズで動作すると説明している:
-
抽出フェーズ、システムがユーザーとのやり取りから、嗜好(例:「乳製品アレルギー」)や最近のアクティビティなどの重要情報を抽出する。
-
統合フェーズ、抽出されたメモリは冗長性を避けるために統合される。新たなアレルギー情報などの矛盾する情報は正確性を確保するために解決される。
-
取得フェーズ、エージェントがハイブリッド検索技術を使用して関連メモリを迅速に検索し、開始時にコアユーザー情報を取得することで、自然で十分な情報に基づいた会話を実現する。
(出典: Microsoft ドキュメント)
メモリ機能における重要パラメータがパーティション分割の方法を制御するscopeだ。メモリストア内の各scopeは独立したメモリアイテムのコレクションを保持する。そのため開発者は、ユーザーのEntra IDやカスタムUUID(保存および取得用)などの一意な識別子を使用して、メモリストアをパーティション分割できる。
パブリックプレビューとして本サービスには特定の運用上の制約がある。現時点では各スコープに最大1万件の個別メモリアイテムを保存でき、システムのスループット上限は1分あたり1,000リクエストである。
メモリ管理をアプリケーションロジックからサービスランタイムへ移行することで、Foundryは抽出および取得に関わる複雑な「plumbing」を自動的に処理する。これは、検索エンジンのように動作することが多い従来のRetrieval-Augmented Generation(RAG)から、永続的な状態レイヤーへのシフトを示している。
MicrosoftのAI Research担当ディレクター Vivan Amim氏が、LinkedIn投稿で述べている:
メモリ機能はエージェント型システムでの「状態レイヤー」になりつつあります。Foundryはそれをデモ機能からエンタープライズ向け基本要素へと変えています。
この変化は、長期的なコンテキストがカスタム実装からコアインフラストラクチャ要件へ移行しつつあることを示唆している。パブリックプレビュー期間中、メモリ機能は無料;ユーザーは基盤となるチャットおよび埋め込みモデルの利用分のみ課金される。