Ejemplos de mensajes
Ejemplos de solicitudes y respuestas para la API de Messages
Consulta la referencia de la API para obtener documentación completa sobre los parámetros disponibles.
Solicitud y respuesta básicas
{
"id": "msg_01XFDUDYJgAACzvnptvVoYEL",
"type": "message",
"role": "assistant",
"content": [
{
"type": "text",
"text": "¡Hola!"
}
],
"model": "claude-3-5-sonnet-20240620",
"stop_reason": "end_turn",
"stop_sequence": null,
"usage": {
"input_tokens": 12,
"output_tokens": 6
}
}
Múltiples turnos de conversación
La API de Messages no tiene estado, lo que significa que siempre envías el historial completo de la conversación a la API. Puedes usar este patrón para construir una conversación a lo largo del tiempo. Los turnos de conversación anteriores no necesariamente tienen que originarse de Claude; puedes usar mensajes sintéticos de assistant
.
#!/bin/sh
curl https://api.anthropic.com/v1/messages \
--header "x-api-key: $ANTHROPIC_API_KEY" \
--header "anthropic-version: 2023-06-01" \
--header "content-type: application/json" \
--data \
'{
"model": "claude-3-5-sonnet-20240620",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "Hola, Claude"},
{"role": "assistant", "content": "¡Hola!"},
{"role": "user", "content": "¿Puedes describirme los LLM?"}
]
}'
import anthropic
message = anthropic.Anthropic().messages.create(
model="claude-3-5-sonnet-20240620",
max_tokens=1024,
messages=[
{"role": "user", "content": "Hola, Claude"},
{"role": "assistant", "content": "¡Hola!"},
{"role": "user", "content": "¿Puedes describirme los LLM?"}
],
)
print(message)
import Anthropic from '@anthropic-ai/sdk';
const anthropic = new Anthropic();
await anthropic.messages.create({
model: 'claude-3-5-sonnet-20240620',
max_tokens: 1024,
messages: [
{"role": "user", "content": "Hola, Claude"},
{"role": "assistant", "content": "¡Hola!"},
{"role": "user", "content": "¿Puedes describirme los LLM?"}
]
});
{
"id": "msg_018gCsTGsXkYJVqYPxTgDHBU",
"type": "message",
"role": "assistant",
"content": [
{
"type": "text",
"text": "Claro, estaré encantado de proporcionar..."
}
],
"stop_reason": "end_turn",
"stop_sequence": null,
"usage": {
"input_tokens": 30,
"output_tokens": 309
}
}
Poniendo palabras en la boca de Claude
Puedes precompletar parte de la respuesta de Claude en la última posición de la lista de mensajes de entrada. Esto se puede usar para dar forma a la respuesta de Claude. El ejemplo a continuación usa "max_tokens": 1
para obtener una sola respuesta de opción múltiple de Claude.
{
"id": "msg_01Q8Faay6S7QPTvEUUQARt7h",
"type": "message",
"role": "assistant",
"content": [
{
"type": "text",
"text": "C"
}
],
"model": "claude-3-5-sonnet-20240620",
"stop_reason": "max_tokens",
"stop_sequence": null,
"usage": {
"input_tokens": 42,
"output_tokens": 1
}
}
Visión
Claude puede leer tanto texto como imágenes en las solicitudes. Actualmente, admitimos el tipo de fuente base64
para imágenes y los tipos de medios image/jpeg
, image/png
, image/gif
e image/webp
. Consulta nuestra guía de visión para obtener más detalles.
{
"id": "msg_01EcyWo6m4hyW8KHs2y2pei5",
"type": "message",
"role": "assistant",
"content": [
{
"type": "text",
"text": "Esta imagen muestra una hormiga, específicamente una vista en primer plano de una hormiga. La hormiga se muestra en detalle, con su cabeza, antenas y patas claramente visibles. La imagen se enfoca en capturar los detalles intrincados y las características de la hormiga, probablemente tomada con una lente macro para obtener una perspectiva de primer plano extremo."
}
],
"model": "claude-3-5-sonnet-20240620",
"stop_reason": "end_turn",
"stop_sequence": null,
"usage": {
"input_tokens": 1551,
"output_tokens": 71
}
}
Uso de herramientas y modo JSON
Consulta nuestra guía para ver ejemplos de cómo usar herramientas con la API de Messages.