InvokeAgentScope Classe

Fornisce l'ambito di traccia OpenTelemetry per le operazioni di chiamata dell'agente di intelligenza artificiale.

Costruttore

InvokeAgentScope()

Parametri

Nome Descrizione
request
Necessario
scope_details
Necessario
agent_details
Necessario
caller_details
Valore predefinito: None
span_details
Valore predefinito: None

Metodi

__init__

Inizializzare l'ambito di chiamata dell'agente.

__new__
dispose

Eliminare l'ambito e finalizzare la raccolta dei dati di telemetria.

get_context

Ottenere il contesto OpenTelemetry per l'intervallo di questo ambito.

Questo metodo restituisce un oggetto Context contenente l'intervallo di questo ambito, che può essere usato per propagare il contesto di traccia alle operazioni figlio o ai servizi downstream.

inject_context_to_headers

Inserire il contesto di traccia dell'intervallo nelle intestazioni HTTP W3C.

Restituisce un dizionario di intestazioni contenenti traceparent e facoltativamente tracestate che possono essere inoltrate ai servizi downstream o archiviati per una propagazione del contesto successiva.

Sintassi di esempio:


   scope = OpenTelemetryScope(...)
   headers = scope.inject_context_to_headers()
   # Add headers to outgoing HTTP request
   requests.get("https://downstream-service/api", headers=headers)
record_attributes

Registrare più coppie chiave/valore dell'attributo per il rilevamento dei dati di telemetria.

Questo metodo consente di impostare più attributi personalizzati sull'intervallo contemporaneamente.

record_cancellation

Annullamento dell'attività di record.

record_error

Registrare un errore nell'intervallo.

record_input_messages

Registrare i messaggi di input per il rilevamento dei dati di telemetria.

Accetta stringhe semplici (di cui viene eseguito il wrapping automatico come OPERATOR ChatMessage con il ruolo user) o un wrapper con controllo delle InputMessages versioni.

record_output_messages

Registrare i messaggi di output per il rilevamento dei dati di telemetria.

Accetta stringhe semplici (con wrapping automatico come OutputMessage MULTIDIMENSIONAL con ruolo assistant) o un wrapper con controllo delle OutputMessages versioni.

record_response

Registrare le informazioni sulla risposta per il rilevamento dei dati di telemetria.

set_end_time

Impostare un'ora di fine personalizzata per l'ambito.

Se impostato, dispose() passerà questo valore a span.end() invece di usare l'ora corrente. Ciò è utile quando l'ora di fine effettiva dell'operazione è nota prima dell'eliminazione dell'ambito.

set_tag_maybe

Impostare un tag sull'intervallo se il valore non è Nessuno.

start

Creare e avviare un nuovo ambito per la traccia delle chiamate dell'agente.

__init__

Inizializzare l'ambito di chiamata dell'agente.

__init__(request: Request, scope_details: InvokeAgentScopeDetails, agent_details: AgentDetails, caller_details: CallerDetails | None = None, span_details: SpanDetails | None = None)

Parametri

Nome Descrizione
request
Necessario

Dettagli della richiesta per la chiamata

scope_details
Necessario

Configurazione a livello di ambito (endpoint)

agent_details
Necessario

Dettagli dell'agente richiamato

caller_details

Dettagli dei chiamanti compositi facoltativi (utente umano e/o agente chiamante per scenari A2A)

Valore predefinito: None
span_details

Configurazione dell'intervallo facoltativo (contesto padre, intervallo, tipo)

Valore predefinito: None

__new__

__new__(**kwargs)

dispose

Eliminare l'ambito e finalizzare la raccolta dei dati di telemetria.

dispose() -> None

Valori restituiti

Tipo Descrizione

get_context

Ottenere il contesto OpenTelemetry per l'intervallo di questo ambito.

Questo metodo restituisce un oggetto Context contenente l'intervallo di questo ambito, che può essere usato per propagare il contesto di traccia alle operazioni figlio o ai servizi downstream.

get_context() -> Context | None

Valori restituiti

Tipo Descrizione

Contesto contenente l'intervallo di questo ambito oppure Nessuno se la telemetria è disabilitata o non esiste alcun intervallo.

inject_context_to_headers

Inserire il contesto di traccia dell'intervallo nelle intestazioni HTTP W3C.

Restituisce un dizionario di intestazioni contenenti traceparent e facoltativamente tracestate che possono essere inoltrate ai servizi downstream o archiviati per una propagazione del contesto successiva.

Sintassi di esempio:


   scope = OpenTelemetryScope(...)
   headers = scope.inject_context_to_headers()
   # Add headers to outgoing HTTP request
   requests.get("https://downstream-service/api", headers=headers)
inject_context_to_headers() -> dict[str, str]

Valori restituiti

Tipo Descrizione

Dizionario contenente intestazioni di contesto di traccia W3C. Restituisce un dizionario vuoto se i dati di telemetria sono disabilitati o non esistono intervalli.

record_attributes

Registrare più coppie chiave/valore dell'attributo per il rilevamento dei dati di telemetria.

Questo metodo consente di impostare più attributi personalizzati sull'intervallo contemporaneamente.

record_attributes(attributes: dict[str, Any] | list[tuple[str, Any]]) -> None

Parametri

Nome Descrizione
attributes
Necessario

Dizionario o elenco di tuple contenenti coppie chiave-valore dell'attributo. Le chiavi none o vuote verranno ignorate.

Valori restituiti

Tipo Descrizione

record_cancellation

Annullamento dell'attività di record.

record_cancellation() -> None

Valori restituiti

Tipo Descrizione

record_error

Registrare un errore nell'intervallo.

record_error(exception: Exception) -> None

Parametri

Nome Descrizione
exception
Necessario

Eccezione che si è verificata

Valori restituiti

Tipo Descrizione

record_input_messages

Registrare i messaggi di input per il rilevamento dei dati di telemetria.

Accetta stringhe semplici (di cui viene eseguito il wrapping automatico come OPERATOR ChatMessage con il ruolo user) o un wrapper con controllo delle InputMessages versioni.

record_input_messages(messages: str | list[str] | InputMessages) -> None

Parametri

Nome Descrizione
messages
Necessario

Elenco di stringhe di messaggi di input o wrapper InputMessages

Valori restituiti

Tipo Descrizione

record_output_messages

Registrare i messaggi di output per il rilevamento dei dati di telemetria.

Accetta stringhe semplici (con wrapping automatico come OutputMessage MULTIDIMENSIONAL con ruolo assistant) o un wrapper con controllo delle OutputMessages versioni.

record_output_messages(messages: str | list[str] | OutputMessages) -> None

Parametri

Nome Descrizione
messages
Necessario

Elenco di stringhe di messaggio di output o wrapper OutputMessages

Valori restituiti

Tipo Descrizione

record_response

Registrare le informazioni sulla risposta per il rilevamento dei dati di telemetria.

record_response(response: str) -> None

Parametri

Nome Descrizione
response
Necessario
str

Stringa di risposta da registrare

Valori restituiti

Tipo Descrizione

set_end_time

Impostare un'ora di fine personalizzata per l'ambito.

Se impostato, dispose() passerà questo valore a span.end() invece di usare l'ora corrente. Ciò è utile quando l'ora di fine effettiva dell'operazione è nota prima dell'eliminazione dell'ambito.

set_end_time(end_time: datetime) -> None

Parametri

Nome Descrizione
end_time
Necessario

Ora di fine come oggetto datetime.

Valori restituiti

Tipo Descrizione

set_tag_maybe

Impostare un tag sull'intervallo se il valore non è Nessuno.

set_tag_maybe(name: str, value: Any) -> None

Parametri

Nome Descrizione
name
Necessario
str

Nome del tag

value
Necessario
Any

Valore da impostare (verrà ignorato se None)

Valori restituiti

Tipo Descrizione

start

Creare e avviare un nuovo ambito per la traccia delle chiamate dell'agente.

static start(request: Request, scope_details: InvokeAgentScopeDetails, agent_details: AgentDetails, caller_details: CallerDetails | None = None, span_details: SpanDetails | None = None) -> InvokeAgentScope

Parametri

Nome Descrizione
request
Necessario

Dettagli della richiesta per la chiamata

scope_details
Necessario

Configurazione a livello di ambito (endpoint)

agent_details
Necessario

Dettagli dell'agente richiamato

caller_details

Dettagli dei chiamanti compositi facoltativi (utente umano e/o agente chiamante per scenari A2A)

Valore predefinito: None
span_details

Configurazione dell'intervallo facoltativo (contesto padre, intervallo, tipo)

Valore predefinito: None

Valori restituiti

Tipo Descrizione

Nuova istanza di InvokeAgentScope