ホームへ戻る

代理框架

Google ADK Go 2.3、コンテキスト圧縮をサービス層に導入し、A2Aとツール確認の境界を厳格化

新版では、呼び出し完了後または単一の呼び出しの実行途中にエージェント履歴を圧縮し、その記録をセッションイベントへ書き込める。クロスエージェント転送と人間によるツール確認の信頼境界も修正されており、アップグレードする場合は長時間タスクの再開セマンティクスを再テストすべきだ。

Asoundd · CC BY-SA 4.0 · Image source
zh-Hant

Googleは8月31日、Agent Development Kit for Go 2.3.0をリリースした。主な変更点は新たなエージェント抽象化の追加ではなく、長時間セッション向けのコンテキスト圧縮をすべてのサービスエントリーポイントに統合したことだ。ランタイムは、1回の呼び出しが完了した後に古いイベントを要約できるほか、未完了の呼び出しがしきい値を超えた場合には実行途中でも圧縮できる。要約はセッションイベントとして保存され、後続の再要約時には永続的な事実としてマークされた内容が保持される。

この設計により、REST、A2A、その他の起動インターフェースで同じ圧縮セマンティクスを共有でき、特定のフロントエンドだけがコンテキスト長を制御できる状況を避けられる。長時間稼働するcoding agentや複数ツールを使うワークフローでは、履歴全体を再送信する際のtoken数とレイテンシを削減し、モデルのコンテキストウィンドウを超過するリスクを抑えられる。ただし、要約そのものは依然として非可逆な変換だ。ファイルのバージョン、未履行のコミットメント、ツール呼び出しID、否定条件などが保持されなければ、エージェントが再開時に誤ったアクションを取る可能性がある。ADKの現行ドキュメントでは、tokenしきい値、イベント保持数、スライディングウィンドウという2種類の戦略が説明されているが、対応バージョン表にはまだGoが記載されていない。デプロイ担当者は2.3.0のAPIとテスト結果を基準にすべきだ。

セキュリティ関連の修正も注目に値する。新版では、エージェント以外のイベントからツール確認を復元することを拒否し、相互に矛盾する確認リクエストもブロックする。A2Aリモートエージェントは、ピアから提供された`transferToAgent`メタデータを使って制御フローを任意に変更できなくなった。Agent Cardの取得元もHTTP(S) URLまたはローカルパスに制限された。エンジニアリングチームはアップグレード後、既存の一時停止/再開トレースを再生し、圧縮前後でツールの結果、人間による承認、分岐状態が一致することを検証すべきだ。また、要約呼び出しによる追加コストと情報損失率も監視する必要がある。

出典

  1. ADK Go v2.3.0 release notes
  2. Context compression documentation
  3. ADK Go context-compaction roadmap discussion