Claude Agent SDK
En esta página, se explica cómo instrumentar un agente del SDK de Claude
Temas
Instrumente a su agente
Puede instrumentar un agente del SDK de Claude Agent con la biblioteca de OpenInferenceinstrumentación (openinference-instrumentation-claude-agent-sdk). Esta biblioteca emite telemetría con el nombre del ámbito, openinference.instrumentation.claude_agent_sdk que se lee en Amazon Bedrock AgentCore Evaluations.
Cuando su agente utiliza la AWS Distro for OpenTelemetry (ADOT), como en Amazon Bedrock AgentCore Runtime, no necesita añadir código de instrumentación explícito. Basta con añadir la biblioteca de instrumentación a las dependencias de su proyecto. ADOT la descubre al inicio y la activa automáticamente.
Añada la biblioteca de instrumentación a sus dependencias.
nota
Utilice la versión 0.1.3 o posterior. Esta es la primera versión probada con el servicio de evaluación.
requirements.txt:
openinference-instrumentation-claude-agent-sdk>=0.1.3
pyproject.toml:
[project] dependencies = [ "openinference-instrumentation-claude-agent-sdk>=0.1.3", ]
nota
La instrumentación es un paso para configurar la observabilidad. Para exportar la telemetría para su evaluación, complete la configuración completa en Configurar la observabilidad.
Cómo se identifican los intervalos
El SDK de Claude Agent está equipado con la OpenInference convención, por lo que AgentCore Evaluations clasifica los intervalos mediante el atributo. openinference.span.kind
| Tipo de tramo | Atributo identificativo |
|---|---|
|
Invoca al agente |
|
|
Ejecute la herramienta |
|
El SDK de Claude Agent solo emite AGENT y TOOL abarca; no emite intervalos de inferencia () LLM separados. Los metadatos del modelo (nombre del modelo, uso del token) y la respuesta del agente se incluyen en el propio intervalo. AGENT
Cómo se extraen los campos de evaluación
El SDK de Claude Agent produce entradas y salidas de agentes limpias y en texto plano, por lo que el mensaje del usuario y la respuesta del agente no requieren un análisis especial. Sin embargo, los resultados de las herramientas se presentan en forma de bloques de contenido antrópico en el formulario. [{"type": "text", "text": "…"}] AgentCore Las evaluaciones desenvuelven estos bloques y concatenan su texto.
La ubicación de este contenido depende de cómo se recopiló la telemetría. El atributo de identificación (openinference.span.kind) está en el intervalo en ambos casos. Para obtener más información, consulte Intervalos, registros de eventos y señales de telemetría.
De los registros de eventos
Cuando se divide la telemetría, AgentCore Evaluations lee el contenido del registro de eventos correlacionado con cada intervalo:
-
Mensaje del usuario y respuesta del agente: del registro de eventos del intervalo de agentes invocado, en y.
body.inputbody.output -
Llamada a la herramienta: el nombre de la herramienta que aparece en el
tool.nameatributo y el identificador de llamada a la herramienta que aparecetool.iden el intervalo de herramientas de ejecución. Los argumentos y el resultado de la herramienta provienen del registro de eventos de ese intervalo, enbody.inputybody.output. AgentCore Las evaluaciones muestran los bloques de contenido antrópico del resultado de la herramienta.
Para ver ejemplos, consulte Ejemplos de intervalos con registros de eventos.
De los atributos de span
Cuando la telemetría no está dividida, el mismo contenido permanece en el intervalo que los atributos:
-
Mensaje del usuario y respuesta del agente: desde
input.valueyoutput.valueen el intervalo de invocación del agente. -
Llamada a la herramienta: el nombre de la herramienta de origen
tool.name, el identificador detool.idla llamada a la herramienta de origeninput.value, los argumentos y el resultado deoutput.valuela misma en el intervalo de la herramienta de ejecución. AgentCore Las evaluaciones muestran los bloques de contenido antrópico del resultado de la herramienta.
Para ver ejemplos, consulte Ejemplos de intervalos sin registros de eventos.
Un ejemplo de tramos con registros de eventos
Cuando se divide la telemetría, el intervalo contiene los atributos de identificación y el contenido reside en un registro de eventos correlacionado. Los siguientes ejemplos provienen de un agente de planificación de viajes del SDK de Claude Agent implementado en Amazon Bedrock AgentCore Runtime.
nota
Estos ejemplos no son períodos completos. Muestran datos representativos de una interacción real entre agentes, omitiendo algunos campos y truncando los valores largos para facilitar la lectura.
ejemplo
Ejemplos de intervalos sin registros de eventos
Cuando la telemetría no está dividida, el mismo contenido permanece en los atributos del tramo y no se genera ningún registro de eventos independiente. Los siguientes ejemplos son de un agente de planificación de viajes del SDK de Claude Agent.
nota
Estos ejemplos no son tramos completos. Muestran datos representativos de una interacción real entre agentes, omitiendo algunos campos y truncando los valores largos para facilitar la lectura.