BasePlugin の完全なサーフェスを実装しています。ADK の PluginManager はすべてのコールバックを呼び出すため、no-op のコールバックであっても、すべて定義されています。ADK は undefined 以外の戻り値をショートサーキットとして扱うため、各コールバックは自身のエラーを捕捉して undefined を返します。
実装
BasePlugin
コンストラクター
new WeaveAdkPlugin(): WeaveAdkPlugin
戻り値
WeaveAdkPlugin
プロパティ
名
readonly名:"weave"=WEAVE_ADK_PLUGIN_NAME
実装元
AdkBasePlugin.name
メソッド
afterAgentCallback()
afterAgentCallback(エージェントの主要なロジックの完了後に実行されるコールバックです。 このコールバックを使用して、返される前にエージェントの最終結果を検査、ログする、または変更できます。params):Promise<undefined>
パラメーター
object
必須
戻り値
Promise<undefined>
任意の Content オブジェクトです。値を返した場合、
エージェントの元の結果が置き換えられます。undefined を返した場合は、
変更されていない元の結果が使用されます。
実装元
AdkBasePlugin.afterAgentCallback
afterContextCompaction()
afterContextCompaction(コンテキストの圧縮後に実行されるコールバックです。 このコールバックにより、圧縮後のコンテキストを 確認できます。_params):Promise<undefined>
パラメーター
unknown
必須
戻り値
Promise<undefined>
実装元
AdkBasePlugin.afterContextCompaction
afterModelCallback()
afterModelCallback(モデルから応答を受信した後に実行されるコールバック。 ここは、モデルの応答をログし、トークン使用量に関するメトリクスを収集し、 生のparams):Promise<undefined>
LlmResponse を後処理するのに最適な場所です。
パラメーター
object
必須
戻り値
Promise<undefined>
任意の値です。undefined 以外の値を返すと、
フレームワークが応答を変更または置き換える場合があります。undefined を返すと、
元の応答が使用されます。
実装元
AdkBasePlugin.afterModelCallback
afterRunCallback()
afterRunCallback(ADK ランナーの run の完了後に実行されるコールバックです。 ADK ライフサイクルにおける最後のコールバックであり、クリーンアップ、 最終的にログすること、またはレポート作成に適しています。params):Promise<undefined>
パラメーター
object
必須
戻り値
Promise<undefined>
undefined
実装元
AdkBasePlugin.afterRunCallback
afterToolCallback()
afterToolCallback(ツールの呼び出し後に実行されるコールバックです。 このコールバックを使用すると、ツールから返された結果を検査、ログ、または変更できます。params):Promise<undefined>
パラメーター
object
必須
戻り値
Promise<undefined>
省略可能な辞書です。辞書を返した場合、
ツールの元の結果は置き換えられます。これにより、
ツールの出力を後処理または変更できます。undefined を返した場合は、
変更されていない元の結果が使用されます。
実装元
AdkBasePlugin.afterToolCallback
beforeAgentCallback()
beforeAgentCallback(エージェントの主要ロジックが呼び出される前に実行されるコールバックです。 このコールバックは、ログすることやセットアップ、または値を返してエージェントの 実行を中断するために使用できます。params):Promise<undefined>
パラメーター
object
必須
戻り値
Promise<undefined>
省略可能なContentオブジェクト。値を返すと、
エージェントのコールバックと実行をスキップして、その値が直接返されます。
undefinedを返すと、エージェントは通常どおり処理を続行します。
実装元
AdkBasePlugin.beforeAgentCallback
beforeContextCompaction()
beforeContextCompaction(コンテキストの圧縮前に実行されるコールバックです。 このコールバックを使用すると、コンテキストが圧縮される前に 検査または変更できます。_params):Promise<undefined>
パラメーター
unknown
必須
戻り値
Promise<undefined>
実装元
AdkBasePlugin.beforeContextCompaction
beforeModelCallback()
beforeModelCallback(モデルにリクエストが送信される前に実行されるコールバックです。params):Promise<undefined>
LlmRequestオブジェクトを検査、ログ、または変更できます。
また、キャッシュされたLlmResponseを返すことでキャッシュを実装でき、その場合は実際のモデルの Callをスキップします。
パラメーター
object
必須
戻り値
Promise<undefined>
任意の値です。undefined 以外の値を返すと、
処理が早期終了し、応答が直ちに返されます。undefined を返すと、LLM リクエストは通常どおり続行されます。
実装元
AdkBasePlugin.beforeModelCallback
beforeRunCallback()
beforeRunCallback(ADK ランナーの実行前に呼び出されるコールバックです。 ライフサイクルで最初に呼び出されるコールバックであり、グローバルな セットアップや初期化タスクに適しています。params):Promise<undefined>
パラメーター
object
必須
戻り値
Promise<undefined>
ADK に返す任意の Event。値を返すと、
ランナーの実行が停止され、そのイベントでランナーが終了します。
通常どおり続行するには undefined を返します。
実装元
AdkBasePlugin.beforeRunCallback
beforeToolCallback()
beforeToolCallback(ツールが呼び出される前に実行されるコールバックです。 このコールバックは、ツールの使用状況をログすること、入力の検証、またはツールに渡す前の引数の変更に役立ちます。params):Promise<undefined>
パラメーター
object
必須
戻り値
Promise<undefined>
任意の辞書です。辞書が返された場合、
ツール実行を停止し、この応答を直ちに返します。
undefined を返すと、元の未変更の引数が使用されます。
実装元
AdkBasePlugin.beforeToolCallback
beforeToolSelection()
beforeToolSelection(ツールが選択される前に実行されるコールバックです。 このコールバックを使用すると、選択前に利用可能なツールを検査、ログ記録、または変更できます。_params):Promise<undefined>
パラメーター
unknown
必須
戻り値
Promise<undefined>
任意の値です。undefined 以外の値を返すと、
フレームワークが使用可能なツールを変更または置き換えることがあります。undefined を返すと、
元のツールが使用されます。
実装元
AdkBasePlugin.beforeToolSelection
finishInterruptedInvocation()
finishInterruptedInvocation(invocationId):void
afterRunCallback に到達しなかった run を終了処理します。ADK はイベント ループが通常どおりドレインされた場合にのみ
afterRunCallback をディスパッチするため、runAsync を途中で抜けたコンシューマーや、
中止された run では、その invocation (および関連するスパン) が開いたまま残ります。
自動インストルメントされたランナー ラッパーは、これらを中断として閉じるために finally からこれを呼び出します。
べき等であり、run がすでに終了している場合 (一般的な、完全に消費されたケース) には何もしません。
パラメーター
string
必須
戻り値
void
onEventCallback()
onEventCallback(ランナーからイベントが生成された後に実行されるコールバックです。 基盤となるエージェントアプリでイベントが処理される前に、 イベントに変更を加えるのに最適な場所です。params):Promise<undefined>
パラメーター
object
必須
戻り値
Promise<undefined>
任意の値です。undefined 以外の値を返すと、
フレームワークが応答を変更または置き換える場合があります。undefined を返すと、
元の応答が使用されます。
実装元
AdkBasePlugin.onEventCallback
onModelErrorCallback()
onModelErrorCallback(モデルの Callでエラーが発生したときに実行されるコールバックです。 このコールバックでは、モデルエラーを適切に処理し、 代替の応答や復旧手段を提供できます。params):Promise<undefined>
パラメーター
object
必須
戻り値
Promise<undefined>
省略可能な LlmResponse。LlmResponse が返された場合、エラーを伝播する代わりに
それが使用されます。undefined を返すと、元のエラーが送出されます。
実装元
AdkBasePlugin.onModelErrorCallback
onToolErrorCallback()
onToolErrorCallback(ツール Call でエラーが発生したときに実行されるコールバック。 tool: BaseTool; toolArgs: Record<string, unknown>; toolContext: Context; result: Record<string, unknown>; }): Promise<Record<string, unknown> | undefined> { return; } /** ツール Call でエラーが発生したときに実行されるコールバック。 このコールバックを使用すると、ツールのエラーを適切に処理し、 代替の応答や復旧メカニズムを提供できます。params):Promise<undefined>
パラメーター
object
必須
戻り値
Promise<undefined>
省略可能な辞書です。辞書を返した場合、エラーを伝播せずに
ツールの応答として使用されます。undefined を返すと、元のエラーが送出されます。
実装元
AdkBasePlugin.onToolErrorCallback
onUserMessageCallback()
onUserMessageCallback(ユーザーメッセージを受信したときに、invocation が開始される前に実行されるコールバックです。 このコールバックを使用すると、ランナーが invocation を開始する前にユーザーメッセージをログしたり変更したりできます。_params):Promise<undefined>
パラメーター
object
必須
戻り値
Promise<undefined>
ADK に返す省略可能な Content。値を返すとユーザーメッセージが置き換えられ、undefined を返すと通常どおり処理が続行されます。
実装元
AdkBasePlugin.onUserMessageCallback