Invita y gana

Cómo funcionan las recompensas

Comparte tu enlace. Cuando un amigo se registre con él y recargue saldo, recibirás la recompensa indicada por sus recargas posteriores.

Context Length Exceeded: reduce la solicitud y verifica el resultado

Mide cada componente del contexto, elimina duplicados e historial irrelevante, reserva espacio de salida y verifica que los datos obligatorios permanezcan.

Índice

Context Length Exceeded: reduce la solicitud y verifica el resultado

No arregles Context length exceeded borrando al azar la mitad del prompt. Primero calcula el presupuesto total, identifica el modelo y mide cada componente de la solicitud. Después elimina duplicados mecánicos, historial irrelevante y resultados de herramientas pesados. Al reenviar, comprueba tanto que el error desapareció como que se conservaron los datos obligatorios y la respuesta completa.

Qué ocupa la ventana de contexto

El contexto es la memoria de trabajo de una solicitud completa, no solo el último prompt del usuario. De forma simplificada:

system instructions
+ conversation history
+ current message
+ images and documents
+ tool definitions
+ tool results
+ output / thinking budget
= total context usage

La documentación de Anthropic sobre ventanas de contexto incluye expresamente el prompt del sistema, todos los mensajes, imágenes, documentos, definiciones y resultados de herramientas, y la respuesta generada. El prompt caching cambia el coste de los tokens reutilizados, pero no los quita de la ventana.

No fijes en el código un «límite universal»: la ventana de contexto y el comportamiento ante un desbordamiento dependen del modelo y de la API seleccionados. Consulta la ficha actual del modelo el día de la configuración.

Encuentra el componente más pesado

ComponenteQué medirReducción segura
Instrucciones del sistemaReglas repetidas y ejemplos largosUnir duplicados y conservar las restricciones obligatorias
HistorialTokens por mensaje y ramas antiguasQuitar ramas irrelevantes o sustituirlas por un resumen verificable
Archivos y fragmentos RAGTamaño de cada documento, duplicados y fragmentos poco relevantesBajar top_k, deduplicar y enviar solo las secciones necesarias
Definiciones de herramientasHerramientas sin uso y descripciones extensasEnviar únicamente las herramientas de la etapa actual
Resultados de herramientasJSON completos, logs, HTML, base64 y respuestas repetidasConservar campos, enlaces e identificadores necesarios; guardar lo grande fuera del prompt
Presupuesto de salidamax_tokens y presupuesto de razonamientoReservar una cantidad realista o dividir un resultado grande en etapas

Claude dispone de una API de recuento de tokens que considera mensajes y herramientas antes del envío. Con otro proveedor, usa su contador si existe. Un tokenizer local sirve de aviso temprano, pero su estimación no garantiza el cálculo del servidor de otro modelo.

Abre la documentación API actual de BetterToken, ejecuta una solicitud de prueba corta y búscala en Dashboard. Compara tokens de entrada, salida y caché antes y después de reducir el contexto: menos tokens de entrada confirman que la corrección llegó a la llamada real. Dashboard no muestra el prompt completo ni sustituye el recuento previo.

Reduce el tamaño sin perder significado

1. Elimina duplicados mecánicos

Busca reglas de sistema repetidas, el mismo archivo en varios mensajes, fragmentos RAG duplicados, esquemas pegados más de una vez y logs completos repetidos. Es la fase más segura porque reduce volumen sin cambiar la tarea.

2. Quita el historial irrelevante

Separa los hechos duraderos del desarrollo temporal de la conversación. Conserva objetivos, decisiones aceptadas, restricciones obligatorias y preguntas abiertas. Los razonamientos antiguos, alternativas descartadas y resultados de herramientas ya procesados pueden eliminarse o condensarse en un resumen estructurado.

Un mal resumen dice «hablamos de la integración». Uno útil registra el endpoint elegido, la versión del esquema, las restricciones aceptadas, los hechos confirmados y el siguiente paso.

3. Compacta archivos, RAG y resultados de herramientas

Envía las secciones pertinentes en lugar del documento completo. En un resultado de herramienta, conserva los campos que requiere la siguiente etapa y no toda la respuesta HTTP o el log. No elimines fuentes ni datos obligatorios solo para que la solicitud quepa: divide el trabajo en etapas verificables.

4. Deja espacio para la respuesta

Entrada y salida comparten el mismo presupuesto. Si la solicitud llena casi toda la ventana, el modelo puede no tener espacio para una respuesta completa. Reduce entrada opcional, define un presupuesto de salida realista o divide el resultado. No recortes hechos críticos antes de los duplicados mecánicos.

5. Cambia de modelo solo después de medir

Un modelo con más contexto puede ser adecuado para un documento que no se pueda dividir de forma segura. Pasar a una ventana mayor sin quitar duplicados solo pospone el siguiente error y puede reducir la densidad de información.

Comprobación mínima antes de enviar

components = count_by_section(request)
estimated_input = sum(components)
reserved_output = requested_output_budget

if estimated_input + reserved_output approaches current_model_window:
    remove exact duplicates
    drop irrelevant history
    compact tool results and retrieved chunks
    count again

send only after required facts and constraints remain present

approaches no se sustituye deliberadamente por un porcentaje fijo. El margen necesario depende de la precisión del contador, del modelo, del razonamiento y del comportamiento de esa API.

Cómo verificar la corrección

Compara la nueva solicitud con esta lista:

  1. La API ya no devuelve context length exceeded ni prompt is too long.
  2. La respuesta termina normalmente y no queda cortada por el presupuesto de salida.
  3. La respuesta contiene todos los hechos obligatorios, restricciones y el formato solicitado.
  4. Las citas o enlaces siguen correspondiendo a las fuentes proporcionadas.
  5. Las llamadas a herramientas usan los argumentos correctos y no se perdió ningún resultado importante al compactar.
  6. El nuevo uso de entrada es realmente menor que el original.

Si el error desaparece pero el modelo olvida una restricción clave, la corrección falló. Restaura el bloque obligatorio y libera espacio quitando historial menos relevante o un resultado de herramienta pesado. Si se corta la respuesta, revisa aparte el presupuesto de salida: es otra parte de la misma ventana total.

Resumen

La secuencia de trabajo es: identificar el modelo → contar componentes → eliminar duplicados exactos → extraer historial irrelevante → compactar archivos y resultados de herramientas → dejar espacio para la respuesta → reenviar → verificar la calidad. Así corriges la causa sin convertir el contexto en un conjunto de datos truncado al azar.

Fuentes

¿Quieres optimizar tu flujo de trabajo con LLM?

Conecta modelos mediante una API, gestiona claves y controla el gasto en IA.

Empezar gratis