Explicación de la rotación del contexto: por qué las entradas largas debilitan la precisión de los LLM.
Aprende cómo los embeddings de posición rotativos y softmax hacen que la precisión disminuya en medio de prompts largos, y qué hábitos mantienen efectivo el contexto.
Si se proporciona un prompt largo a cualquiera de los modelos de vanguardia probados en 2025, la calidad de las respuestas disminuye, incluso cuando el tema del que se pregunta está justo en el texto. El estudio de Chroma de 2025, realizado con 18 de estos modelos, reveló que la precisión en los hechos ocultos en la parte central del input bajaba en más de un 30%. La razón tiene poco que ver con algún concepto vago como el “límite de atención”. Se debe a la forma en que los transformadores codifican la posición de cada token.
La gente denomina a esto “corrupción del contexto”, y es algo distinto a alcanzar el límite de contexto. Un experimento realizado en Stanford en 2023 muestra por qué. Se le dan a un modelo 20 documentos recuperados, unos 4,000 tokens, lo cual no es nada comparado con los límites actuales. Si el hecho relevante está en la primera posición, el modelo lo identifica correctamente entre un 70% y un 75% de las veces. Si ese mismo hecho se coloca en el medio, la precisión disminuye al 55% y al 60%. La información sigue estando allí y sigue siendo correcta; simplemente el modelo le da menos importancia.
De dónde proviene la decadencia
La mayoría de los transformadores actuales utilizan Rotary Position Embeddings (RoPE) para marcar el orden de los tokens. RoPE presenta un deterioro a largo plazo conocido: cuanto más separados estén dos tokens, menor es el límite máximo sobre cuánto se puede prestar atención al otro (en teoría), independientemente de su significado real. Softmax empeora la situación, ya que dirige la atención hacia los tokens que ya tienen puntuaciones altas, lo cual favorece el inicio y el final del contexto y genera la curva en forma de U que los investigadores denominan “perdidos en el medio”.
Puedes observar la forma de este deterioro con un pequeño script. Está construido únicamente a partir de la estructura de frecuencias de RoPE, no de los pesos de ningún modelo real, por lo que debe considerarse como una ilustración. La única biblioteca que necesita es numpy:
import numpy as np
Y aquí está la función que mide cómo disminuye el límite de similitud a medida que aumenta la distancia:
def rope_similarity_decay(distances, dim=64, base=10000):
freqs = 1.0 / (base ** (np.arange(0, dim, 2) / dim))
decays = []
for d in distances:
bound = np.mean(np.cos(freqs * d))
decays.append(bound)
return np.array(decays)
Si lo pruebas con distancias entre tokens cada vez mayores, obtienes lo siguiente:
Token distance | Relative similarity bound
1 | 0.9662
10 | 0.6579
50 | 0.4898
100 | 0.5586
500 | 0.2006
1000 | 0.2789
5000 | -0.1309
10000 | 0.0494
50000 | -0.0898
Los tokens que están separados por 1 a 10 posiciones mantienen un valor cercano a 1.0. Con unas pocas miles de tokens de separación, ese valor cae hacia cero e incluso baja por debajo en algunos puntos; por lo tanto, la relación entre tokens muy separados ya no indica de manera fiable que “estos dos están relacionados”. Observa también que no se trata de una disminución gradual: existe un descenso con verdaderas oscilaciones en su interior. Nada de esto sirve como prueba para un modelo específico, pero sí explica por qué el problema es estructural y no simplemente desaparece al entrenar un modelo más grande.
Una ventana más grande no lo soluciona
Los investigadores ahora distinguen la ventana de contexto anunciada de la Ventana Máxima de Contexto Efectivo (MECW), que representa el límite hasta el cual realmente se mantiene el rendimiento de un modelo. Según estudios de 2025 sobre esta diferencia, en tareas complejas el techo efectivo puede estar hasta un 99% por debajo del valor indicado en las especificaciones. Una ventana de un millón de tokens significa que el modelo no presentará errores antes de procesar ese número de tokens. Sin embargo, esto no indica si utiliza todos ellos de manera eficaz.
Por qué los agentes de programación son los más afectados
Para los agentes de codificación, la pérdida de contexto se ha identificado como un modo principal de fallo, y se trata más bien de un problema por información defectuosa que de una deficiencia en capacidades. Durante una tarea prolongada, el agente busca, explora y retrocede, y cada callejón sin salida deja ruido en el historial. Ese ruido afecta negativamente cada paso posterior, aunque el mismo modelo resolvería la tarea sin problemas si partiera de un contexto nuevo. Por lo tanto, una sesión larga puede fallar sin que se agoten los tokens: las instrucciones del primer turno siguen estando en la conversación en el quincuagésimo turno, pero la atención del modelo podría ya no llegar hasta ellas.
Qué ayuda
RAG y las ventanas largas no son intercambiables. La recuperación de información es útil porque reduce una gran colección a la parte relevante, ya que incluir todo de golpe provoca directamente el deterioro posicional mencionado anteriormente. Más allá de la recuperación, todas las soluciones indican lo mismo: mantener el contexto de trabajo pequeño y limpio en lugar de grande e completo.
- Resumir o descartar el historial de conversaciones obsoletas.
- Poner todo aquello de lo que dependa la decisión cerca del inicio o del final del prompt, nunca en el medio.
- Tener en cuenta que “encaja” y “el modelo lo utilizará” son dos afirmaciones separadas.
Respuestas rápidas
¿Qué es la decadencia del contexto? La calidad de la salida disminuye a medida que aumenta la longitud de la entrada, incluso cuando la ventana no está llena y la información necesaria está presente.
¿Por qué es el medio el peor? RoPE debilita intencionadamente el vínculo entre tokens distantes, y softmax concentra luego la atención en las posiciones que ya tienen una puntuación alta, que suelen ser las primeras y últimas.
¿Resuelve el problema un límite mayor? No. El contexto utilizable es a menudo mucho más pequeño que el anunciado, especialmente en tareas complejas de múltiples pasos.
¿Es solo por falta de espacio? No. La precisión disminuye de manera significativa con unos pocos miles de tokens, muy por debajo de los cientos de miles que aceptan los modelos avanzados.
Una advertencia sobre el código anterior: se trata de un modelo de frecuencia simplificado. El comportamiento real depende de los pesos de atención entrenados que se aplican sobre esta base geométrica, por lo que la base explica solo parte del efecto y no todo.
Lecturas relacionadas
- Comprendiendo la memoria de la IA: contexto, embeddings, RAG y pesos del modelo explicados — Este artículo explica cómo los sistemas de IA realmente almacenan información, abordando ventanas de contexto, embeddings, bases de datos vectoriales, RAG y parámetros del modelo.
- Notas prácticas: Construcción de memoria de contexto inteligente para agentes de IA — Guía paso a paso práctica para crear memoria de contexto inteligente en agentes de IA: contratos, verificaciones y bloques de código listos para usar destinados a los equipos que implementan este patrón.