Introducción
Claude Sonnet 4.5 es un modelo de chat de Anthropic disponible aquí como un endpoint compatible con OpenAI en /v1/chat/completions. Lee hasta 198.000 tokens y responde con hasta 64.000: unos tres tokens de entrada por cada uno de salida, que es la forma de una escena o un capítulo, con una ficha de personaje y una transcripción de entrada y varios miles de palabras de prosa de vuelta.
La solicitud acepta temperature (de 0 a 1, 1 por defecto) y top_p; este endpoint no tiene ajuste de esfuerzo de razonamiento. El contenido de los mensajes es texto e imágenes, caben hasta 128 esquemas de tools en una llamada y con stream: true llega la primera frase mientras el resto todavía se está escribiendo.
Funciones y aspectos destacados
Una ventana a la medida de un arco
198.000 tokens guardan la ficha del personaje, las reglas del mundo y una transcripción larga sin tener que resumir cada pocos turnos. Lo que no puede desviarse —voz, temperamento, canon— va en el mensaje de sistema, y el mensaje de usuario lleva la escena.
64.000 tokens de respuesta
El tope de respuesta es de 64.000 tokens, así que un capítulo nunca se corta a mitad de párrafo por falta de espacio. max_tokens viene en 4.096 por defecto, unos cientos de palabras, así que súbelo cuando quieras la escena escrita completa.
Streaming para ir por turnos
El roleplay es ir por turnos, y alguien está mirando el cursor. Con stream: true la respuesta llega en fragmentos de Server-Sent Events, de modo que la primera frase ya está en pantalla mientras el resto se sigue generando.
Parámetros de la solicitud
| Parámetro | Obligatorio | Descripción |
|---|---|---|
messages | Sí | Turnos de conversación ordenados. El contenido es un string o un array de partes text e |
max_tokens | No | Limita la respuesta a 64.000. El valor por defecto de 4.096 son unos cientos de palabras: súbelo si quieres una escena escrita entera. |
stop | No | Hasta 4 secuencias, como cadena o como arreglo. La respuesta termina en cuanto el modelo escribe una de ellas, y el texto que coincide no se devuelve. mínimo 1 caracteres · mínimo 1 elementos · máximo 4 elementos |
temperature | No | De 0 a 1, 1 por defecto. Déjalo cerca de 0 siempre que la respuesta la lea código. |
top_k | No | De 1 a 500. Solo se muestrea entre los k tokens siguientes más probables: 1 vuelve las respuestas casi repetibles y valores mayores aflojan la elección. |
top_p | No | De 0,01 a 1. Ajusta este o temperature, nunca los dos en la misma comparación. |
tools | No | Hasta 128 definiciones de funciones por solicitud. máximo 128 elementos |
parallel_tool_calls | No | true o false, true por defecto: el modelo puede pedir varias llamadas a herramientas en un mismo turno. Valor predeterminado: |
tool_choice | No | auto, none, required, o un objeto que nombre una función. |
Precios
Entrada $2.70 / Salida $13.50 por 1 millón de tokens
Casos de uso
Una sesión de roleplay de larga duración
La ficha del personaje y las reglas del mundo se quedan en el mensaje de sistema mientras la transcripción crece en el array messages. 198.000 tokens equivalen a las escenas de un arco completo, así que la voz se sostiene sin tener que recomponerla con un resumen.
Un capítulo de ficción interactiva
La ficción ramificada es leer y luego escribir: unos miles de tokens de estado e historia de entrada, una escena de prosa de salida. Tres a uno es justo esa forma, y el tope de 64.000 tokens deja espacio para que el capítulo termine.
Un elenco de PNJ en un mismo hilo
Dale a cada personaje una sección del mensaje de sistema y deja que el mensaje de usuario diga quién está en escena. Como todos los PNJ se describen en la misma solicitud, se mantienen coherentes entre sí y no solo consigo mismos.
Guía de prompts y consejos prácticos
Pon al personaje en el mensaje de sistema
Ficha del personaje, voz y reglas del mundo van en el mensaje de sistema; la escena va en el mensaje de usuario. Cuando más adelante recortes por extensión, recortas la transcripción y el personaje queda tal cual lo escribiste.
Ajusta temperature a la tarea
Mantén temperature cerca de 1 para diálogos que deben sentirse vivos y bájala para una pasada de continuidad o un resumen de lo ocurrido. top_p acota aún más la elección de palabras cuando una escena tiene que sostener un registro estrecho.
Salida estructurada y límites firmes
Aquí no hay response_format: define una tool cuyos parámetros sean el esquema JSON que quieres, apunta tool_choice a ella y valida los argumentos que vuelven. Un max_tokens mayor que 64.000 no pasa la validación y las partes de video y audio se rechazan.
Inicio rápido de la API
curl --fail-with-body -sN https://api.spicyapi.ai/v1/chat/completions \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"model": "anthropic/claude-sonnet-4.5/chat",
"messages": [
{
"role": "user",
"content": "Summarise the following release notes into three bullet points."
}
],
"stream": true
}' \
| jq --unbuffered -Rrj 'select(startswith("data: ")) | .[6:] | select(. != "[DONE]") | fromjson | if .error then "\n[error] \(.error.message)\n" else (.choices[0].delta.content? // empty) end'
Consulta la referencia de la API para autenticación, el esquema completo, sondeo y gestión de errores.














