Inicio → Ayuda
context_length_exceeded: qué cuenta realmente para el límite
La entrada más la salida solicitada tienen que caber juntas en la ventana. Todo tu historial de mensajes cuenta en cada llamada, y max_tokens se reserva por adelantado, así que una petición puede fallar por la reserva aunque el prompt por sí solo cupiera.
Lo que ves
This model's maximum context length is N tokens, however you requested M tokenscontext_length_exceededinvalid_request_error: prompt is too longThe call worked yesterday and fails today with the same code
Por qué ocurre
Las APIs de chat no tienen estado. Cada turno reenvía todo el historial, así que una conversación que lleva una hora no envía un mensaje, los envía todos. Por eso el código que funcionaba por la mañana empieza a fallar por la tarde sin que nada haya cambiado.
max_tokens es una reserva, no un tope de lo que recibes. Pedir 8.000 tokens de salida quita 8.000 del presupuesto antes siquiera de medir el prompt.
Los prompts de sistema, las definiciones de herramientas y los ejemplos few-shot suelen ser invisibles en el diff, pero están muy presentes en el recuento. Un esquema de herramientas grande puede ocupar miles de tokens en cada llamada.
Cómo solucionarlo
- Baja max_tokens a lo que realmente necesitasEs el arreglo más rápido y el que la gente se salta. Si las respuestas ocupan dos párrafos, reservar 8.000 tokens no aporta nada y te quita espacio.
- Recorta el historial, no el mensaje actualConserva el prompt de sistema, los últimos turnos y un breve resumen de lo anterior. Eliminar los turnos más antiguos recupera mucho más que acortar lo que preguntas ahora.
- Cuenta las definiciones de herramientasSerializa tu esquema de herramientas y mídelo. Quitar las herramientas que no usas a menudo libera más espacio que cualquier cosa que hagas con la conversación.
Las ventanas de contexto varían según el modelo, y la página de cada modelo en APICLAN indica la ventana junto al precio. Recortar el historial también reduce directamente la factura, ya que los tokens de entrada se cobran en cada turno.
Relacionado
Revisado por última vez el 2026-10-01. Escrito a partir de problemas diagnosticados en una pasarela
compatible con OpenAI en producción, no recopilado de otras webs.