BasePlugin의 전체 인터페이스를 구현합니다. ADK의 PluginManager는
모든 callback을 호출하므로 callback이 no-op인 경우에도 모두 포함되어 있습니다.
ADK는 undefined가 아닌 반환값을 모두 단락 처리로 간주하므로, 모든 callback은
자체 오류를 내부적으로 처리하고 undefined를 반환합니다.
정의 위치: src/integrations/googleAdk.ts:589
구현 항목
BasePlugin
생성자
생성자
new WeaveAdkPlugin(): WeaveAdkPlugin
반환값
WeaveAdkPlugin
속성
name
정의 위치: src/integrations/googleAdk.ts:590readonlyname:"weave"=WEAVE_ADK_PLUGIN_NAME
구현 대상
AdkBasePlugin.name
메서드
afterAgentCallback()
afterAgentCallback(에이전트의 기본 로직이 완료된 후 실행되는 callback입니다. 이 callback을 사용하여 반환되기 전에 에이전트의 최종 결과를 검사하거나 로깅 또는 수정할 수 있습니다. 정의 위치: src/integrations/googleAdk.ts:779params):Promise<undefined>
매개변수
params
agent
BaseAgent
방금 실행된 에이전트입니다.
callbackContext
Context
에이전트 호출의 컨텍스트입니다.
반환값
Promise<undefined>
선택 사항인 Content 객체입니다. 값을 반환하면 에이전트의
원래 결과가 해당 값으로 대체됩니다. undefined를 반환하면
수정되지 않은 원래 결과가 사용됩니다.
구현 대상
AdkBasePlugin.afterAgentCallback
afterContextCompaction()
afterContextCompaction(컨텍스트 압축 후 실행되는 callback입니다. 이 callback을 통해 압축된 컨텍스트를 검사할 수 있습니다. 정의 위치: src/integrations/googleAdk.ts:997_params):Promise<undefined>
매개변수
_params
unknown
반환값
Promise<undefined>
구현 대상
AdkBasePlugin.afterContextCompaction
afterModelCallback()
afterModelCallback(모델의 응답을 받은 후 실행되는 callback입니다. 모델 응답을 로깅하고 토큰 사용량에 대한 메트릭을 수집하거나 원시params):Promise<undefined>
LlmResponse를 후처리하기에 적합한 위치입니다.
정의 위치: src/integrations/googleAdk.ts:841
매개변수
params
callbackContext
Context
현재 에이전트 호출의 컨텍스트입니다.
llmResponse
LlmResponse
모델에서 받은 응답 객체입니다.
반환값
Promise<undefined>
선택적 값입니다. undefined가 아닌 값을 반환하면
프레임워크가 응답을 수정하거나 대체할 수 있습니다. undefined를 반환하면
원래 응답이 사용됩니다.
구현 대상
AdkBasePlugin.afterModelCallback
afterRunCallback()
afterRunCallback(ADK 러너의 run이 완료된 후 실행되는 callback입니다. ADK 라이프사이클의 마지막 callback으로, 정리, 최종 로깅 또는 보고 작업에 적합합니다. 정의 위치: src/integrations/googleAdk.ts:713params):Promise<undefined>
매개변수
params
invocationContext
InvocationContext
전체 호출의 컨텍스트입니다.
반환값
Promise<undefined>
undefined
구현 대상
AdkBasePlugin.afterRunCallback
afterToolCallback()
afterToolCallback(도구가 호출된 후 실행되는 callback입니다. 이 callback을 사용하면 도구가 반환한 결과를 검사, 로깅 또는 수정할 수 있습니다. 정의 위치: src/integrations/googleAdk.ts:965params):Promise<undefined>
매개변수
params
result
Record<string, unknown> | null
도구 호출에서 반환되는 딕셔너리입니다.
도구
BaseTool
방금 실행한 도구 인스턴스입니다.
toolArgs
Record<string, unknown>
도구에 전달된 원본 인수입니다.
toolContext
Context
도구 실행과 관련된 컨텍스트입니다.
반환값
Promise<undefined>
선택적 딕셔너리입니다. 딕셔너리를 반환하면
도구의 원래 결과를 대체합니다. 이를 통해
도구 출력을 후처리하거나 변경할 수 있습니다. undefined를 반환하면
수정되지 않은 원래 결과가 사용됩니다.
구현 대상
AdkBasePlugin.afterToolCallback
beforeAgentCallback()
beforeAgentCallback(에이전트의 기본 로직이 호출되기 전에 실행되는 callback입니다. 이 callback은 로깅, 설정 또는 값을 반환하여 에이전트의 실행을 조기에 종료하는 데 사용할 수 있습니다. 정의 위치: src/integrations/googleAdk.ts:765params):Promise<undefined>
매개변수
params
에이전트
BaseAgent
실행될 에이전트입니다.
callbackContext
Context
에이전트 호출의 컨텍스트입니다.
반환값
Promise<undefined>
선택적 Content 객체입니다. 값이 반환되면 에이전트의 callback과 실행을
건너뛰고 해당 값을 직접 반환합니다. undefined를 반환하면 에이전트가 정상적으로 진행됩니다.
구현 대상
AdkBasePlugin.beforeAgentCallback
beforeContextCompaction()
beforeContextCompaction(컨텍스트 압축 전에 실행되는 callback입니다. 이 callback을 통해 압축 전에 컨텍스트를 검사하거나 수정할 수 있습니다. 정의 위치: src/integrations/googleAdk.ts:993_params):Promise<undefined>
매개변수
_params
unknown
반환값
Promise<undefined>
구현 대상
AdkBasePlugin.beforeContextCompaction
beforeModelCallback()
beforeModelCallback(모델에 요청을 보내기 전에 실행되는 callback입니다.params):Promise<undefined>
LlmRequest
객체를 검사, 로깅하거나 수정할 수 있습니다. 캐시된
LlmResponse를 반환하여 캐싱을 구현할 수도 있으며, 이 경우 실제 모델 Call이 생략됩니다.
정의 위치: src/integrations/googleAdk.ts:804
매개변수
params
callbackContext
Context
현재 에이전트 호출의 컨텍스트입니다.
llmRequest
LlmRequest
모델에 전송할 준비가 된 요청 객체입니다.
반환값
Promise<undefined>
선택적 값입니다. undefined가 아닌 값을 반환하면
조기 종료가 트리거되고 응답이 즉시 반환됩니다. undefined를 반환하면 LLM 요청이 정상적으로 진행됩니다.
구현 대상
AdkBasePlugin.beforeModelCallback
beforeRunCallback()
beforeRunCallback(ADK 러너가 실행되기 전에 호출되는 callback입니다. 라이프사이클에서 가장 먼저 호출되는 callback으로, 전역 설정 또는 초기화 작업에 적합합니다. 정의 위치: src/integrations/googleAdk.ts:621params):Promise<undefined>
매개변수
params
invocationContext
InvocationContext
세션 정보, 루트 에이전트 등을 포함하는 전체 호출의 컨텍스트입니다.
반환값
Promise<undefined>
ADK에 반환할 수 있는 선택적 Event입니다. 값을 반환하면
러너 실행이 중지되고 해당 이벤트와 함께 러너가 종료됩니다.
정상적으로 계속하려면 undefined를 반환합니다.
구현 대상
AdkBasePlugin.beforeRunCallback
beforeToolCallback()
beforeToolCallback(도구가 호출되기 전에 실행되는 callback입니다. 이 callback은 도구 사용을 로깅하거나 입력을 검증하거나, 도구에 전달되기 전에 인수를 수정하는 데 유용합니다. 정의 위치: src/integrations/googleAdk.ts:918params):Promise<undefined>
매개변수
params
도구
BaseTool
실행 직전의 도구 인스턴스입니다.
toolArgs
Record<string, unknown>
도구를 호출하는 데 사용할 인수 딕셔너리입니다.
toolContext
Context
도구 실행에 관련된 컨텍스트입니다.
반환값
Promise<undefined>
선택적 딕셔너리입니다. 딕셔너리를 반환하면
도구 실행이 중지되고 이 응답이 즉시 반환됩니다. undefined를 반환하면
수정되지 않은 원래 인수가 사용됩니다.
구현 대상
AdkBasePlugin.beforeToolCallback
beforeToolSelection()
beforeToolSelection(도구를 선택하기 전에 실행되는 callback입니다. 이 callback을 사용하면 선택 전에 사용 가능한 도구를 검사, 로깅 또는 수정할 수 있습니다. 정의 위치: src/integrations/googleAdk.ts:914_params):Promise<undefined>
매개변수
_params
unknown
반환값
Promise<undefined>
선택적 값입니다. undefined가 아닌 반환값은
프레임워크에서 사용 가능한 도구를 수정하거나 대체하는 데 사용할 수 있습니다. undefined를 반환하면 원래 도구를 사용할 수 있습니다.
구현 대상
AdkBasePlugin.beforeToolSelection
finishInterruptedInvocation()
finishInterruptedInvocation(invocationId):void
afterRunCallback에 도달하지 못한 run을 완료 처리합니다. ADK는 이벤트 루프가 정상적으로 모두 처리된 후에만
afterRunCallback을 호출하므로, 소비자가 runAsync에서
일찍 빠져나오거나 run이 중단되면 호출
(및 해당 span들)이 열린 상태로 남습니다. 자동 instrument 러너 래퍼는 이를
finally에서 호출해 중단된 것으로 닫습니다. 멱등적이므로 run이
이미 완료된 경우에는 아무 작업도 하지 않습니다(일반적으로 전체를 끝까지 소비한 경우).
정의 위치: src/integrations/googleAdk.ts:732
매개변수
invocationId
string
반환값
void
onEventCallback()
onEventCallback(러너에서 이벤트가 반환된 후 실행되는 callback입니다. 기본 에이전트 앱에서 이벤트를 처리하기 전에 이벤트를 수정하기에 적합한 위치입니다. 정의 위치: src/integrations/googleAdk.ts:693params):Promise<undefined>
매개변수
params
event
Event
러너가 발생시키는 이벤트입니다.
invocationContext
InvocationContext
전체 호출의 컨텍스트입니다.
반환값
Promise<undefined>
선택적 값입니다. undefined가 아닌 반환값은
프레임워크에서 응답을 수정하거나 대체하는 데 사용할 수 있습니다. 대체 응답을 생성할 때는 수정하지 않는
이벤트 액션 등의 필드를 보존하기 위해 params.event를 복사하세요. undefined를 반환하면
원래 응답이 사용됩니다.
구현 대상
AdkBasePlugin.onEventCallback
onModelErrorCallback()
onModelErrorCallback(모델 Call 중 오류가 발생했을 때 실행되는 callback입니다. 이 callback을 통해 모델 오류를 적절히 처리하고, 대체 응답이나 복구 메커니즘을 제공할 수 있습니다. 정의 위치: src/integrations/googleAdk.ts:884params):Promise<undefined>
매개변수
params
callbackContext
Context
현재 에이전트 호출의 컨텍스트입니다.
error
Error
모델 실행 중 발생한 예외입니다.
llmRequest
LlmRequest
오류 발생 시 모델에 전송된 요청입니다.
반환값
Promise<undefined>
선택적 LlmResponse입니다. LlmResponse가 반환되면 오류를 전파하는 대신
해당 응답이 사용됩니다. undefined를 반환하면 원래 오류가 발생합니다.
구현 대상
AdkBasePlugin.onModelErrorCallback
onToolErrorCallback()
onToolErrorCallback(도구 Call 중 오류가 발생하면 실행되는 callback입니다. tool: BaseTool; toolArgs: Record<string, unknown>; toolContext: Context; result: Record<string, unknown>; }): Promise<Record<string, unknown> | undefined> { return; } /** 도구 Call 중 오류가 발생하면 실행되는 callback입니다. 이 callback을 사용하여 도구 오류를 정상적으로 처리하고, 필요에 따라 대체 응답이나 복구 메커니즘을 제공할 수 있습니다. 정의 위치: src/integrations/googleAdk.ts:977params):Promise<undefined>
매개변수
params
error
Error
도구 실행 중 발생한 예외입니다.
도구
BaseTool
오류가 발생한 도구 인스턴스입니다.
toolArgs
Record<string, unknown>
도구에 전달된 인수입니다.
toolContext
Context
도구 실행과 관련된 컨텍스트입니다.
반환값
Promise<undefined>
선택적 딕셔너리입니다. 딕셔너리를 반환하면 오류를 전파하는 대신
도구 응답으로 사용됩니다. undefined를 반환하면 원래 오류가 발생합니다.
구현 대상
AdkBasePlugin.onToolErrorCallback
onUserMessageCallback()
onUserMessageCallback(사용자 메시지를 수신한 후 호출이 시작되기 전에 실행되는 callback입니다. 이 callback은 러너가 호출을 시작하기 전에 사용자 메시지를 로깅하고 수정하는 데 도움이 됩니다. 정의 위치: src/integrations/googleAdk.ts:614_params):Promise<undefined>
매개변수
_params
invocationContext
InvocationContext
userMessage
Content
반환값
Promise<undefined>
ADK에 반환할 수 있는 선택적 Content입니다. 사용자 메시지를 대체하는 값을
반환합니다. 정상적으로 계속 진행하려면 undefined를 반환합니다.
구현 대상
AdkBasePlugin.onUserMessageCallback