A continuaciónSiguiente guía
Python Gestión de dependencias para ML
Técnico
GUÍA Técnica
La gestión del historial de conversación es el conjunto de técnicas que mantienen una conversación larga o una sesión de agente dentro del límite de contexto de un modelo.
Escuche esta guíaNarrado por IA · ~3 min
Las principales son descartar turnos antiguos, resumir partes anteriores, compactar todo el historial en un breve condensado y borrar salidas de herramientas antiguas. Es importante porque un modelo de lenguaje no tiene memoria entre llamadas más allá de lo que la aplicación reenvía. Cuando el historial supera la ventana, algo debe recortarse, y lo que se recorta decide si el asistente permanece coherente.
Most chat APIs are stateless. Every request resends the conversation so far, and the model reads it from scratch. Tokens, cost and latency therefore grow as the session gets longer, until the history hits the context limit and the request fails or gets truncated. Quality can drop even before that point, because relevant details are buried among old material. The simplest strategy is truncation, usually as a sliding window: keep the system prompt and the most recent turns, and drop the rest. It is cheap and predictable, but it forgets early facts, such as constraints the user stated at the start. A common refinement is to pin important messages so they are never dropped. Rolling summarization replaces older turns with a model-written summary that is updated as the conversation grows. It keeps the gist in far fewer tokens. The cost is that summaries lose detail and can introduce errors, and those errors compound when a summary is itself summarized again. Compaction is a more deliberate version used in agent tools. When token usage crosses a threshold, the system asks the model to write a structured handoff covering the goal, progress, decisions, open problems and key file names. It then starts a fresh context with that handoff plus the most recent turns. Claude Code, for example, has a compact command and can also compact automatically near the limit. Tool-result clearing targets the biggest source of bloat in agent sessions: large outputs from searches, file reads and commands that were useful once. Swapping them for short placeholders frees space and still records that the call happened. External memory stores facts in a file or database and retrieves them when relevant, so they survive any trimming. A common misconception is that the model remembers earlier parts of a chat on its own. Any continuity comes from what the application chooses to resend or retrieve.
Un chatbot mantiene el mensaje del sistema más los últimos 20 mensajes y descarta todo lo más antiguo. Esto es barato, pero olvida el nombre y el presupuesto que el usuario dio en el primer mensaje.
Cada 10 turnos, un modelo más pequeño resume la parte antigua de la conversación en un párrafo que permanece en la parte superior del contexto. Esto es un resumen continuo.
Un agente de codificación, al acercarse a su límite, escribe una transferencia: el objetivo, los archivos modificados, los errores abiertos y las decisiones tomadas. Luego inicia un contexto fresco que contiene esa transferencia y los archivos más recientes.
Un agente reemplaza los resultados de búsqueda más antiguos que unos pocos turnos con un marcador corto, como '[salida de búsqueda web borrada: 12 resultados]'. Los resultados en bruto rara vez se necesitan de nuevo una vez que el agente ha actuado sobre ellos.
Los proveedores han empezado a incorporar la gestión del historial en sus plataformas. Las funciones incluyen estado de conversación del lado del servidor, compactación automática y edición de contexto que borra resultados de herramientas antiguos. Esto reduce el código repetitivo, pero los desarrolladores aún deben decidir qué nunca debe olvidarse. La investigación continúa sobre modelos que usan contextos largos de manera más fiable y sobre sistemas de memoria que almacenan y recuperan hechos entre sesiones. La compactación probablemente se convertirá en un comportamiento predeterminado en los marcos de agentes, pero el equilibrio entre detalle y espacio no desaparecerá. No hay método que mantenga todo gratis, así que probar lo que se pierde seguirá siendo parte del trabajo.
Boletín gratuito
Tres noticias verificadas sobre IA cada mañana de lunes a viernes, explicadas con claridad. Gratis para siempre y sin anuncios.
Un correo cada día laborable. Date de baja con un clic. Nunca vendemos ni compartimos tu dirección.
Ponte a prueba
Corrección inmediata en cada respuesta y un certificado para compartir, con un ID verificable, cuando apruebas un curso.
Apoya la educación gratuita sobre IA. AI Understanding es una organización sin fines de lucro 501(c)(3): sin anuncios ni muros de pago, nunca. Hacer una donación
La gestión del historial de conversación es el conjunto de técnicas que mantienen una conversación larga o una sesión de agente dentro del límite de contexto de un modelo. Las principales son descartar turnos antiguos, resumir partes anteriores, compactar todo el historial en un breve condensado y borrar salidas de herramientas antiguas. Es importante porque un modelo de lenguaje no tiene memoria entre llamadas más allá de lo que la aplicación reenvía. Cuando el historial supera la ventana, algo debe recortarse, y lo que se recorta decide si el asistente permanece coherente.
Las API sin estado procesan todo el historial en cada llamada. A medida que el historial crece, también lo hacen los tokens, el costo y la latencia de cada solicitud.
Mantener solo los turnos recientes es barato y predecible, pero todo lo que sale de la ventana se pierde a menos que esté anclado.
Cada ronda de resumen es pérdida de información. Un error en un resumen se traslada a la siguiente, por lo que los errores pueden acumularse durante una sesión larga.
La compactación condensa la sesión en un breve resumen deliberado y comienza un nuevo contexto con él y las últimas interacciones. El agente puede continuar sin el historial completo.
Las salidas de las herramientas pueden ser muy grandes y suelen ser útiles solo una vez. Sustituyéndolas por marcadores de posición libera mucho espacio y mantiene un registro de que la llamada ocurrió.
sigue aprendiendo
Más guías seleccionadas para este tema.
A continuaciónSiguiente guía
Python Gestión de dependencias para ML
Técnico