Skip to main content

Desbordamiento y Compresión de la Ventana de Contexto

Patrones de ingeniería para prevenir fallos fatales al alcanzar el límite de contexto: Resúmenes Deslizantes (Rolling Summaries), Compresión de Estados y Desalojo Selectivo de Historia Obsoleta.

1. Visión general del concepto y problema sistémico

En proyectos de ingeniería prolongados, un agente puede trabajar durante horas: leer archivos, ejecutar pruebas, obtener registros, corregir errores. Tarde o temprano, incluso una ventana de 200,000 tokens se llena:

  • Enfoque ingenuo: simplemente truncar los primeros mensajes. Pero junto con ellos desaparece la instrucción inicial del usuario, y el agente "olvida" repentinamente qué tarea está resolviendo.
  • Otro enfoque ingenuo: detener el trabajo y notificar un error, obligando al usuario a repetir manualmente todo desde el principio.

Compresión de la Ventana de Contexto es una técnica de compresión continua de la historia del diálogo en tiempo real, que permite al agente llevar a cabo sesiones de trabajo interminables sin caer en errores de desbordamiento y sin perder los objetivos iniciales.

2. Taxonomía arquitectónica y modelo mental

┌─────────────────────────────────────────────────────────────┐
│                 CONTEXT COMPACTION LIFECYCLE                │
├─────────────────────────────────────────────────────────────┤
│ 1. MONITOREO DEL BUFFER (Total Tokens: 165k / Límite 200k)  │
│    • Umbral de activación: 80% de llenado de la ventana      │
├─────────────────────────────────────────────────────────────┤
│                          │                                  │
│                          ▼ Activar Trabajador de Compresión │
├─────────────────────────────────────────────────────────────┤
│ 2. PARTICIONAMIENTO Y RESUMIDO DESLIZANTE                   │
│    ┌─────────────────────────────────────────────────────┐  │
│    │ [FIJADO] Prompt del Sistema y Reglas Básicas      │  │
│    │ (Inmutables)                                      │  │
│    ├─────────────────────────────────────────────────────┤  │
│    │ [CORTADO] Giros Antiguos 1–30 ➔ Destilados en     │  │
│    │          Estado Ejecutivo: "Autenticación configurada,│  │
│    │          DB migrada"                               │  │
│    ├─────────────────────────────────────────────────────┤  │
│    │ [MANTENIDO CRUDO] Giros Nuevos 31–40 (Detalles     │  │
│    │ exactos para desarrollo)                           │  │
│    └─────────────────────────────────────────────────────┘  │
├─────────────────────────────────────────────────────────────┤
│ 3. REENSAMBLE DEL CONTEXTO: Nuevo Tamaño = 45k tokens      │
└─────────────────────────────────────────────────────────────┘

3. Pipeline técnico y mecánica interna

01. Sesión Infinita de Vibe Coding en IDE Agente

El desarrollador trabaja en Cursor o Claude Code durante la sexta hora consecutiva. El sistema comprime silenciosamente los registros antiguos del terminal en un bloque de markdown ordenado <previous_session_summary> cada 40 mensajes, manteniendo la sesión rápida, económica y receptiva.

02. Almacenamiento de Artefactos de Decisiones (Architectural Decision Records)

Durante la compresión, el agente almacena por separado las hipótesis rechazadas: "Intentamos usar la biblioteca X, pero no es compatible con Windows". Esto garantiza que después de 100 mensajes, el agente no intente instalar la biblioteca X nuevamente.

4. Errores comunes, trampas y seguridad

  • Pérdida de Detalles Finos (Information Loss): El modelo de resumido puede decidir que un número de puerto específico o el nombre de un campo raro no son importantes y eliminarlos del resumen. Los parámetros importantes deben mantenerse en campos JSON State dedicados, no en texto libre.
  • Deriva del Objetivo durante Compresiones Múltiples: Si la sesión dura semanas y el resumen se comprime por décima vez, se produce el efecto del teléfono descompuesto. La solicitud inicial del usuario (User Intent) siempre debe permanecer inalterada en la raíz del prompt.

5. Conclusión Estratégica para el Ingeniero del 2026

La compresión del contexto es clave para crear sistemas autónomos de larga duración (Long-Running Agents). La habilidad para diseñar algoritmos de rotación y resumido de memoria permite crear agentes que pueden trabajar en un proyecto durante semanas sin perder el enfoque.

/ Preguntas frecuentesSchema.org FAQPage

FAQ: Desbordamiento y Compresión de la Ventana de Contexto

El proveedor de API devuelve un error 400 (`context_length_exceeded`) y detiene completamente el procesamiento. Si la aplicación no tiene lógica de compresión, la sesión del usuario se rompe permanentemente, obligándolo a reiniciar el chat desde cero.
/ Enlaces internos
Todos los términos