Claude Opus 5.5
Llama a Claude Opus 5.5 con la API oficial de Anthropic Messages o los formatos de OpenAI Chat Completions y Responses: razonamiento adaptativo, ventana de contexto de 1M tokens y hasta 128K tokens de salida.
Claude Opus 5.5 es el modelo de Anthropic para codificación agéntica prolongada y trabajo del conocimiento. Envía la solicitud oficial de Anthropic Messages a SeedRouter: cambia la URL base y la clave API, mantén el cuerpo. El mismo modelo también responde a los formatos OpenAI Chat Completions y Responses.
ID de modelo
| ID de modelo | Ventana de contexto | Salida máxima | Razonamiento | Nivel de esfuerzo predeterminado |
|---|---|---|---|---|
claude-opus-5-5 | 1M tokens | 128K tokens | Adaptativo, siempre activado | medium |
Consulta la página del modelo para ver los precios actuales.
Ejemplo rápido
curl https://api.seedrouter.ai/v1/messages \
-H "x-api-key: $SEEDROUTER_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-opus-5-5",
"max_tokens": 1024,
"messages": [{"role": "user", "content": "Summarize the trade-offs of event sourcing in three bullet points."}]
}'Endpoints
| Formato | Método y ruta | Autenticación |
|---|---|---|
| Anthropic Messages | POST https://api.seedrouter.ai/v1/messages | x-api-key: <key> o Authorization: Bearer <key>, más anthropic-version |
| OpenAI Chat Completions | POST https://api.seedrouter.ai/v1/chat/completions | Authorization: Bearer <key> |
| OpenAI Responses | POST https://api.seedrouter.ai/v1/responses | Authorization: Bearer <key> |
El endpoint Messages reenvía el cuerpo de tu solicitud tal cual, incluidos campos opcionales, y devuelve la respuesta oficial. Un encabezado anthropic-beta también se reenvía. Mantén la clave API en código del lado del servidor.
Parámetros
| Nombre | Tipo | Obligatorio | Predeterminado | Notas |
|---|---|---|---|---|
model | string | Sí | — | claude-opus-5-5. |
max_tokens | integer | Sí | — | 0–128000. Incluye los tokens utilizados en razonamiento. 0 solo precalienta la caché de prompts. |
messages | object[] | Sí | — | Turnos alternos de user y assistant; content es una cadena o un array de bloques de contenido. El último turno debe ser user. Excepción: para continuar una respuesta pause_turn, reenvía su contenido tal cual como último mensaje assistant. |
system | string o object[] | No | — | Prompt del sistema. |
thinking | object | No | {"type": "adaptive"} | El razonamiento es adaptativo y siempre está activado. display: omitted (predeterminado) o summarized. |
output_config.effort | enum | No | medium | low, medium, high, xhigh, max. Controla cuánto piensa el modelo. |
output_config.format | object | No | — | Un esquema JSON para salida estructurada. |
stop_sequences | string[] | No | — | Se detiene cuando se genera una de estas cadenas. |
stream | boolean | No | false | Transmite la respuesta como eventos enviados por el servidor. |
temperature | number | No | — | Solo se acepta 1 (el valor predeterminado), por compatibilidad con versiones anteriores; cualquier otro valor devuelve un error 400. Déjalo fuera. |
top_p | number | No | — | Solo se aceptan valores de 0.99 a 1, por compatibilidad con versiones anteriores; cualquier otro valor devuelve un error 400. Déjalo fuera. |
top_k | integer | No | — | No aceptado: cualquier valor devuelve un error 400. Déjalo fuera. |
tools | object[] | No | — | Definiciones de herramientas. |
tool_choice | object | No | — | auto o none; forzar una herramienta (any o tool) no es compatible con este modelo. |
metadata.user_id | string | No | — | Un id opaco para tu usuario final, hasta 512 caracteres. |
cache_control | object | No | — | Punto de ruptura de caché de prompts de nivel superior. |
container, context_management, mcp_servers, diagnostics, service_tier, inference_geo, speed | — | No | — | Reenviados tal cual. |
Razonamiento y nivel de razonamiento
Claude Opus 5.5 siempre usa razonamiento adaptativo: el modelo decide cuánto pensar, y output_config.effort lo dirige. Un esfuerzo mayor generalmente significa más tokens de salida, una espera más larga y un costo más alto. Con thinking.display configurado como summarized, la respuesta incluye bloques de thinking que puedes mostrar; con omitted, se omiten. Los tokens de razonamiento se facturan como tokens de salida.
Entradas multimedia
Las imágenes y los PDF van en content de un turno del usuario como bloques image y document, con una fuente url o, como en la API oficial, una fuente base64:
{"role": "user", "content": [
{"type": "image", "source": {"type": "url", "url": "https://example.com/chart.png"}},
{"type": "text", "text": "What does this chart show?"}
]}Reemplaza la URL de ejemplo con un archivo accesible públicamente del que dispongas.
Dimensiones de facturación
Consulta las tarifas actuales en la página del modelo. Una solicitud se factura por los tokens que utiliza:
- tokens de entrada,
- tokens de salida, incluido razonamiento,
- lecturas de caché de prompts, y
- escrituras de caché de prompts, con tarifas separadas de 5 minutos y 1 hora.
El cargo se toma del usage informado con la respuesta terminada. Una solicitud que falla no se factura. Los registros de uso de tu cuenta muestran el cargo exacto para cada solicitud.
Salida
Una solicitud sin streaming devuelve el objeto de mensaje oficial:
{
"id": "msg_...",
"type": "message",
"role": "assistant",
"model": "claude-opus-5-5",
"content": [{"type": "text", "text": "..."}],
"stop_reason": "end_turn",
"usage": {"input_tokens": 18, "output_tokens": 4, "cache_read_input_tokens": 0, "cache_creation_input_tokens": 0}
}Con "stream": true la respuesta es un stream de eventos oficiales: message_start, content_block_start, content_block_delta, content_block_stop, message_delta y message_stop. El message_delta final contiene el recuento de tokens de salida.
Formatos compatibles con OpenAI
El mismo modelo responde a los formatos OpenAI, por lo que el código OpenAI existente solo necesita una nueva URL base e ID de modelo:
from openai import OpenAI
client = OpenAI(api_key="YOUR_SEEDROUTER_KEY", base_url="https://api.seedrouter.ai/v1")
chat = client.chat.completions.create(
model="claude-opus-5-5",
messages=[{"role": "user", "content": "Hello"}],
)
response = client.responses.create(model="claude-opus-5-5", input="Hello")Estas solicitudes se convierten al formato Messages, por lo que un campo sin contraparte en Messages no tiene efecto. Sus respuestas llevan los campos oficiales de OpenAI y pueden incluir algunos campos de uso adicionales; lee usage.total_tokens y los campos oficiales.
Errores
Los errores en /v1/messages usan la forma de Anthropic, {"type": "error", "error": {"type": "...", "message": "..."}}; los otros formatos usan {"error": {"code": ..., "message": "..."}}. El code es un código del catálogo de errores común. Las solicitudes fallidas no se facturan.
Consejos
- Comienza con el nivel de razonamiento predeterminado y auméntalo solo para tareas que necesiten más razonamiento; los cambios de esfuerzo afectan tanto a la calidad como al costo.
- Establece
max_tokenslo suficientemente alto para el razonamiento y la respuesta: es un presupuesto para ambos. - Coloca el contexto largo reutilizado primero y márcalo con
cache_controlpara que solicitudes posteriores lo lean desde la caché a una tarifa más baja.
