Claude Agent SDK
Questa pagina spiega come strumentare un agente SDK di Claude Agent
Argomenti
Strumenta il tuo agente
Puoi strumentare un agente SDK di Claude Agent con la libreria di OpenInferencestrumentazione (). openinference-instrumentation-claude-agent-sdk Questa libreria emette dati di telemetria con il nome dell'ambito, letto da Amazon openinference.instrumentation.claude_agent_sdk Bedrock Evaluations. AgentCore
Quando il tuo agente utilizza AWS Distro for OpenTelemetry (ADOT), ad esempio su Amazon Bedrock AgentCore Runtime, non è necessario aggiungere codice di strumentazione esplicito. È sufficiente aggiungere la libreria di strumentazione alle dipendenze del progetto. ADOT la rileva all'avvio e la attiva automaticamente.
Aggiungi la libreria di strumentazione alle tue dipendenze.
Nota
Usa la versione 0.1.3 o successiva. Questa è la prima versione testata con il servizio di valutazione.
requirements.txt:
openinference-instrumentation-claude-agent-sdk>=0.1.3
pyproject.toml:
[project] dependencies = [ "openinference-instrumentation-claude-agent-sdk>=0.1.3", ]
Nota
La strumentazione è un passo verso l'impostazione dell'osservabilità. Per esportare la telemetria per la valutazione, completa la configurazione completa in Imposta l'osservabilità.
Come vengono identificati gli intervalli
Claude Agent SDK utilizza questa OpenInference convenzione, quindi AgentCore Evaluations classifica gli intervalli utilizzando l'attributo. openinference.span.kind
| Tipo di intervallo | Attributo identificativo |
|---|---|
|
Invoca l'agente |
|
|
Strumento di esecuzione |
|
L'SDK di Claude Agent emette solo AGENT e si TOOL estende; non emette intervalli di inferenza () separati. LLM I metadati del modello (nome del modello, utilizzo del token) e la risposta dell'agente vengono trasferiti all'intervallo stesso. AGENT
Come vengono estratti i campi di valutazione
L'SDK di Claude Agent produce input e output di agenti in testo semplice e puliti, quindi il prompt dell'utente e la risposta dell'agente non richiedono un'analisi speciale. I risultati dello strumento, tuttavia, arrivano sotto forma di blocchi di contenuto Anthropic nel modulo. [{"type": "text", "text": "…"}] AgentCore Evaluations rimuove questi blocchi e ne concatena il testo.
La posizione di questo contenuto dipende dal modo in cui è stata raccolta la telemetria. L'attributo identificativo (openinference.span.kind) è compreso nell'intervallo in entrambi i casi. Per ulteriori informazioni, consulta Spans, record di eventi e segnali di telemetria.
Dai registri degli eventi
Quando la telemetria viene suddivisa, AgentCore Evaluations legge il contenuto del record dell'evento correlato a ciascun intervallo:
-
Richiesta dell'utente e risposta dell'agente: dal record degli eventi di Invoke Agent Span, in and.
body.inputbody.output -
Chiamata allo strumento: il nome dello strumento dall'
tool.nameattributo e l'ID della chiamata allo strumento dall'intervallotool.iddi esecuzione dello strumento. Gli argomenti e i risultati dello strumento provengono dal record degli eventi di quell'intervallo, inbody.inputand.body.outputAgentCore Evaluations elimina i blocchi di contenuto di Anthropic nel risultato dello strumento.
Per esempi, vedete Example spans with event records.
Dagli attributi span
Quando la telemetria non viene suddivisa, lo stesso contenuto rimane nell'intervallo degli attributi:
-
Richiesta dell'utente e risposta dell'agente: da
input.valueeoutput.valuesull'intervallo dell'agente Invoke. -
Chiamata allo strumento: il nome dello strumento da
tool.name, l'ID della chiamata allo strumento datool.id, gli argomenti dainput.valuee il risultato daoutput.valuenell'intervallo dello strumento di esecuzione. AgentCore Evaluations elimina i blocchi di contenuto di Anthropic nel risultato dello strumento.
Per esempi, vedete Example spans without event records.
L'esempio si estende ai record degli eventi
Quando la telemetria viene suddivisa, l'intervallo contiene gli attributi identificativi e il contenuto risiede in un record di eventi correlato. I seguenti esempi sono tratti da un agente di pianificazione dei viaggi di Claude Agent SDK distribuito su Amazon Bedrock Runtime. AgentCore
Nota
Questi esempi non sono intervalli completi. Mostrano dati rappresentativi derivanti da un'interazione con un agente reale, con alcuni campi omessi e valori lunghi troncati per motivi di leggibilità.
Esempio
L'esempio si estende senza record di eventi
Quando la telemetria non viene suddivisa, lo stesso contenuto rimane negli attributi span e non viene prodotto alcun record di eventi separato. I seguenti esempi sono tratti da un agente di pianificazione dei viaggi di Claude Agent SDK.
Nota
Questi esempi non sono esempi completi. Mostrano dati rappresentativi derivanti da un'interazione con un agente reale, con alcuni campi omessi e valori lunghi troncati per motivi di leggibilità.