ExecuteToolScope Classe
Fornisce l'ambito di traccia OpenTelemetry per le operazioni di esecuzione degli strumenti di intelligenza artificiale.
Costruttore
ExecuteToolScope()
Parametri
| Nome | Descrizione |
|---|---|
|
request
Necessario
|
|
|
details
Necessario
|
|
|
agent_details
Necessario
|
|
|
user_details
|
Valore predefinito: None
|
|
span_details
|
Valore predefinito: None
|
Metodi
| __init__ |
Inizializzare l'ambito di esecuzione dello strumento. |
| __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_response |
Registrare il risultato della chiamata dello strumento per il rilevamento dei dati di telemetria. In base alla specifica ITEM, il risultato dovrebbe essere un oggetto . Se viene specificata una stringa, viene registrata as-is (fallback di stringhe JSON). Se viene specificato un elemento dict, viene serializzato in JSON. |
| 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 |
Crea e avvia un nuovo ambito per la traccia di esecuzione degli strumenti. |
__init__
Inizializzare l'ambito di esecuzione dello strumento.
__init__(request: Request, details: ToolCallDetails, agent_details: AgentDetails, user_details: UserDetails | None = None, span_details: SpanDetails | None = None)
Parametri
| Nome | Descrizione |
|---|---|
|
request
Necessario
|
Dettagli della richiesta per l'esecuzione dello strumento |
|
details
Necessario
|
Dettagli della chiamata allo strumento |
|
agent_details
Necessario
|
Dettagli dell'agente che effettua la chiamata |
|
user_details
|
Dettagli facoltativi dell'utente umano 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_response
Registrare il risultato della chiamata dello strumento per il rilevamento dei dati di telemetria.
In base alla specifica ITEM, il risultato dovrebbe essere un oggetto . Se viene specificata una stringa, viene registrata as-is (fallback di stringhe JSON). Se viene specificato un elemento dict, viene serializzato in JSON.
record_response(result: dict[str, object] | str) -> None
Parametri
| Nome | Descrizione |
|---|---|
|
result
Necessario
|
Risultato della chiamata dello strumento come stringa strutturata o JSON |
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
start
Crea e avvia un nuovo ambito per la traccia di esecuzione degli strumenti.
static start(request: Request, details: ToolCallDetails, agent_details: AgentDetails, user_details: UserDetails | None = None, span_details: SpanDetails | None = None) -> ExecuteToolScope
Parametri
| Nome | Descrizione |
|---|---|
|
request
Necessario
|
Dettagli della richiesta per l'esecuzione dello strumento |
|
details
Necessario
|
Dettagli della chiamata allo strumento |
|
agent_details
Necessario
|
Dettagli dell'agente che effettua la chiamata |
|
user_details
|
Dettagli facoltativi dell'utente umano Valore predefinito: None
|
|
span_details
|
Configurazione dell'intervallo facoltativo (contesto padre, intervallo, tipo) Valore predefinito: None
|
Valori restituiti
| Tipo | Descrizione |
|---|---|
|
Nuova istanza di ExecuteToolScope |