Ventana de contexto
Una ventana de contexto es la cantidad máxima de texto (medida en tokens) que un modelo de lenguaje puede considerar a la vez. Abarca todo aquello con lo que el modelo trabaja en una sola conversación: las instrucciones del sistema, el prompt del usuario, el historial de la conversación, cualquier documento recuperado y la respuesta que el modelo está generando. Una vez que el texto combinado supera la ventana, el modelo ya no puede “ver” el excedente, por lo que el material más antiguo o menos relevante debe descartarse, resumirse o recuperarse bajo demanda.
En resumen: la ventana de contexto es la memoria de trabajo del modelo para una sola conversación.
Cómo funciona una ventana de contexto
Un modelo no lee caracteres ni palabras directamente; lee tokens, y la ventana es un presupuesto fijo de tokens para todo el intercambio:
- Tokenización: El texto de entrada se divide en tokens (unidades de subpalabras), y la ventana se cuenta en tokens en lugar de palabras o caracteres.
- Presupuesto compartido: La ventana se reparte entre el prompt del sistema, el historial de la conversación, el contexto recuperado y la salida generada, por lo que más de uno deja menos espacio para los demás.
- Patrón de atención: En los transformadores estándar de atención completa, los tokens de la ventana activa pueden atender ampliamente a través de esa ventana. Algunas arquitecturas de contexto largo utilizan en cambio patrones de atención dispersa, local o de ventana deslizante, por lo que la atención no siempre es ilimitada de todos a todos en todo el contexto.
- Gestión del excedente: Cuando el contenido superaría el límite, la aplicación debe truncar, resumir o recuperar de forma selectiva para que quepa el material más relevante.
- Efectos de posición: Los modelos suelen usar la información al inicio y al final de una ventana larga de forma más fiable que el material enterrado en el medio, un efecto a veces llamado pérdida en el medio.
El punto clave es que una ventana de contexto más grande permite que un modelo asimile más contenido a la vez, pero no garantiza que el modelo use cada parte igual de bien: la relevancia y la ubicación siguen siendo importantes.
Ventana de contexto vs. memoria y recuperación
- La memoria a largo plazo persiste entre sesiones y reside fuera del modelo; la ventana de contexto contiene únicamente lo que está presente en la conversación actual.
- El conocimiento de entrenamiento está integrado en los pesos del modelo y siempre está disponible; la ventana de contexto se llena de nuevo en el momento de la solicitud y es donde debe colocarse la información nueva o privada.
- La recuperación (RAG) selecciona únicamente los pasajes más relevantes para que quepan dentro de la ventana de contexto; la ventana de contexto es el espacio limitado por el que compiten esos pasajes.
Dónde importa la ventana de contexto
- Conversaciones largas: A medida que un chat crece, las partes más antiguas de la conversación acaban quedando fuera de la ventana de contexto a menos que se resuman o almacenen, razón por la cual los asistentes pueden parecer “olvidar” detalles anteriores.
- RAG y preguntas y respuestas sobre documentos: Los fragmentos recuperados deben caber junto al prompt y la respuesta, por lo que tanto el tamaño de los fragmentos como el número de fragmentos recuperados están limitados por la ventana de contexto.
- Tareas con documentos largos: Resumir o analizar archivos grandes depende de que la ventana de contexto sea lo suficientemente grande o de una estrategia para alimentar el documento por partes.
- Costo y latencia: Más tokens en la ventana de contexto generalmente significan un mayor costo y respuestas más lentas, por lo que llenarla de forma eficiente importa tanto como su tamaño bruto.
La ventana de contexto es un presupuesto que hay que gestionar, no solo un número que maximizar: el objetivo es incluir la información correcta, en lugar de toda la información.
Términos relacionados
Token, tokenización, generación aumentada por recuperación (RAG), fragmentación, prompt, modelo de lenguaje grande (LLM), memoria a largo plazo, pérdida en el medio, costo de inferencia.