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 Sintassi di esempio:
|
| 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 |
| 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 |
| 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
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
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
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 |