BasePlugin. Le PluginManager d’ADK
invoque chaque callback ; ils sont donc tous présents, même lorsqu’un callback n’effectue aucune opération.
ADK considère toute valeur de retour autre que undefined comme un court-circuit ; chaque callback
capture donc ses propres erreurs et renvoie undefined.
Implémente
BasePlugin
Constructeur
new WeaveAdkPlugin(): WeaveAdkPlugin
Renvoie
WeaveAdkPlugin
Propriétés
nom
readonlynom:"weave"=WEAVE_ADK_PLUGIN_NAME
Implémentation de
AdkBasePlugin.name
Méthodes
afterAgentCallback()
afterAgentCallback(Callback exécuté après l’exécution de la logique principale d’un agent. Ce callback peut être utilisé pour inspecter, journaliser ou modifier le résultat final de l’agent avant qu’il ne soit renvoyé.params):Promise<undefined>
Paramètres
object
requis
Renvoie
Promise<undefined>
Un objet Content facultatif. Si une valeur est renvoyée, elle
remplace le résultat d’origine de l’agent. Renvoyer undefined conserve le
résultat d’origine, sans modification.
Implémentation de
AdkBasePlugin.afterAgentCallback
afterContextCompaction()
afterContextCompaction(Callback exécuté après le compactage du contexte. Ce callback permet d’inspecter le contexte après son compactage._params) :Promise<undefined>
Paramètres
unknown
requis
Renvoie
Promise<undefined>
Implémentation de
AdkBasePlugin.afterContextCompaction
afterModelCallback()
afterModelCallback(Callback exécuté après réception d’une réponse du modèle. C’est l’emplacement idéal pour journaliser les réponses du modèle, collecter des métriques sur l’utilisation des jetons ou effectuer un post-traitement sur leparams):Promise<undefined>
LlmResponse brut.
Paramètres
object
requis
Renvoie
Promise<undefined>
Valeur facultative. Une valeur de retour autre que undefined peut être utilisée par le
framework pour modifier ou remplacer la réponse. Renvoyer undefined
permet d’utiliser la réponse d’origine.
Implémentation de
AdkBasePlugin.afterModelCallback
afterRunCallback()
afterRunCallback(Callback exécuté une fois qu’une exécution du runner ADK est terminée. Il s’agit du callback final du cycle de vie ADK, adapté au nettoyage, à la journalisation finale ou aux tâches de génération de rapports.params) :Promise<undefined>
Paramètres
object
requis
Renvoie
Promise<undefined>
indéfini
Implémentation de
AdkBasePlugin.afterRunCallback
afterToolCallback()
afterToolCallback(Callback exécuté après l’appel d’un outil. Ce callback permet d’inspecter, de journaliser ou de modifier le résultat renvoyé par un outil.params):Promise<undefined>
Paramètres
object
requis
Renvoie
Promise<undefined>
Un dictionnaire facultatif. Si un dictionnaire est renvoyé, il
remplace le résultat original de l’outil. Cela permet de
post-traiter ou de modifier les sorties de l’outil. Renvoyer undefined conserve
le résultat original, non modifié.
Implémentation de
AdkBasePlugin.afterToolCallback
beforeAgentCallback()
beforeAgentCallback(Callback exécuté avant la logique principale d’un agent. Ce callback peut être utilisé pour la journalisation, la configuration ou pour interrompre prématurément l’exécution de l’agent en renvoyant une valeur.params):Promise<undefined>
Paramètres
object
requis
Renvoie
Promise<undefined>
Un objet Content facultatif. Si une valeur est renvoyée, elle
contourne les callbacks de l’agent et son exécution, et est renvoyée directement.
Renvoyer undefined permet à l’agent de poursuivre normalement.
Implémentation de
AdkBasePlugin.beforeAgentCallback
beforeContextCompaction()
beforeContextCompaction(Callback exécuté avant le compactage du contexte. Ce callback permet d’inspecter ou de modifier le contexte avant qu’il ne soit compacté._params) :Promise<undefined>
Paramètres
unknown
requis
Renvoie
Promise<undefined>
Implémentation de
AdkBasePlugin.beforeContextCompaction
beforeModelCallback()
beforeModelCallback(Callback exécuté avant l’envoi d’une requête au modèle. Permet d’inspecter, de journaliser ou de modifier l’objetparams) :Promise<undefined>
LlmRequest.
Peut également servir à implémenter la mise en cache en renvoyant une
LlmResponse mise en cache, ce qui évite l’appel de modèle réel.
Paramètres
object
requis
Renvoie
Promise<undefined>
Une valeur facultative. Une valeur différente de undefined
déclenche une sortie anticipée et renvoie immédiatement la réponse. Renvoyer
undefined permet à la requête LLM de se poursuivre normalement.
Implémentation de
AdkBasePlugin.beforeModelCallback
beforeRunCallback()
beforeRunCallback(Callback exécuté avant l’exécution du runner ADK. Il s’agit du premier callback appelé dans le cycle de vie, idéal pour les tâches globales de configuration ou d’initialisation.params):Promise<undefined>
Paramètres
object
requis
Renvoie
Promise<undefined>
Un Event facultatif à renvoyer à l’ADK. Renvoyez une valeur
pour interrompre l’exécution du runner et le terminer avec cet événement.
Renvoyez undefined pour poursuivre normalement.
Implémentation de
AdkBasePlugin.beforeRunCallback
beforeToolCallback()
beforeToolCallback(Callback exécuté avant l’appel d’un outil. Ce callback est utile pour journaliser l’utilisation des outils, valider les entrées ou modifier les arguments avant qu’ils ne soient transmis à l’outil.params) :Promise<undefined>
Paramètres
object
requis
Renvoie
Promise<undefined>
Un dictionnaire facultatif. Si un dictionnaire est renvoyé, l’exécution de l’outil est interrompue et cette réponse est renvoyée immédiatement. Renvoyer undefined utilise les arguments d’origine non modifiés.
Implémentation de
AdkBasePlugin.beforeToolCallback
beforeToolSelection()
beforeToolSelection(Callback exécuté avant la sélection d’un outil. Ce callback permet d’inspecter, de journaliser ou de modifier les outils disponibles avant leur sélection._params) :Promise<undefined>
Paramètres
unknown
requis
Renvoie
Promise<undefined>
Valeur facultative. Le framework peut utiliser une valeur de retour autre que
undefined pour modifier ou remplacer les outils disponibles. Renvoyer
undefined permet d’utiliser les outils d’origine.
Implémentation de
AdkBasePlugin.beforeToolSelection
finishInterruptedInvocation()
finishInterruptedInvocation(Finalise un run qui n’a jamais atteintinvocationId):void
afterRunCallback. ADK n’appelle
afterRunCallback qu’une fois la boucle d’événements vidée normalement. Par conséquent, un consommateur qui
quitte runAsync prématurément — ou un run annulé — laisse l’invocation
(et ses spans) ouverte. Le wrapper de runner d’auto-instrumentation appelle ceci depuis un
bloc finally pour les fermer en tant qu’interrompus. Idempotent : aucune opération si le run
est déjà terminé (le cas courant, lorsqu’il a été entièrement consommé).
Paramètres
string
requis
Renvoie
void
onEventCallback()
onEventCallback(Callback exécuté après qu’un événement a été émis par le runner. C’est l’emplacement idéal pour modifier l’événement avant qu’il ne soit géré par l’application d’agent sous-jacente.params):Promise<undefined>
Paramètres
object
requis
Renvoie
Promise<undefined>
Valeur facultative. Une valeur de retour autre que undefined peut être utilisée par le
framework pour modifier ou remplacer la réponse. Renvoyer undefined
permet d’utiliser la réponse d’origine.
Implémentation de
AdkBasePlugin.onEventCallback
onModelErrorCallback()
onModelErrorCallback(Callback exécuté lorsqu’un appel de modèle rencontre une erreur. Ce callback permet de gérer les erreurs de modèle de manière appropriée, en fournissant éventuellement des réponses alternatives ou des mécanismes de récupération.params):Promise<undefined>
Paramètres
object
requis
Renvoie
Promise<undefined>
Une LlmResponse facultative. Si une LlmResponse est renvoyée, elle est
utilisée au lieu de propager l’erreur. Renvoyer undefined permet
de lever l’erreur d’origine.
Implémentation de
AdkBasePlugin.onModelErrorCallback
onToolErrorCallback()
onToolErrorCallback(Callback exécuté lorsqu’un appel d’outil rencontre une erreur. tool: BaseTool; toolArgs: Record<string, unknown>; toolContext: Context; result: Record<string, unknown>; }): Promise<Record<string, unknown> | undefined> { return; } /** Callback exécuté lorsqu’un appel d’outil rencontre une erreur. Ce callback permet de gérer les erreurs d’outil avec élégance, en fournissant éventuellement des réponses alternatives ou des mécanismes de récupération.params) :Promise<undefined>
Paramètres
object
requis
Renvoie
Promise<undefined>
Un dictionnaire facultatif. Si un dictionnaire est renvoyé, il est
utilisé comme réponse de l’outil au lieu de propager l’erreur. Renvoyer
undefined permet de lever l’erreur d’origine.
Implémentation de
AdkBasePlugin.onToolErrorCallback
onUserMessageCallback()
onUserMessageCallback(Callback exécuté lorsqu’un message utilisateur est reçu avant le début d’une invocation. Ce callback permet de journaliser et de modifier le message utilisateur avant que le runner ne démarre l’invocation._params):Promise<undefined>
Paramètres
object
requis
Renvoie
Promise<undefined>
Un Content facultatif à renvoyer à l’ADK. Renvoyez une
valeur pour remplacer le message de l’utilisateur. Renvoyez undefined pour poursuivre
normalement.
Implémentation de
AdkBasePlugin.onUserMessageCallback