Sesiones y Memoria

Sesiones

Como Funcionan las Sesiones

Cada conversacion con un agente ocurre en una sesion. Las sesiones se identifican por claves que codifican el contexto -- que agente, que canal, que chat.

Las sesiones mantienen una transcripcion completa (JSONL de solo adicion) de todos los mensajes, llamadas a herramientas y resultados. Esta transcripcion es lo que da a los agentes contexto sobre la conversacion en curso.

Claves de Sesion

Las sesiones se enrutan automaticamente basandose en el contexto:

Patron Significado
agent:main:main Conversacion directa principal
agent:<id>:<channel>:group:<id> Chat de grupo en un canal especifico
agent:<id>:<channel>:channel:<id> Conversacion de canal/sala
cron:<jobId> Ejecucion de trabajo programado
hook:<uuid> Ejecucion activada por webhook

Ciclo de Vida de la Sesion

Seguimiento de Tokens

Las sesiones rastrean el uso acumulativo de tokens (entrada, salida, lectura de cache, escritura de cache) para monitoreo de costos y gestion de la ventana de contexto.


Compactacion

Que Es la Compactacion?

Cuando una conversacion se acerca al limite de la ventana de contexto del modelo, Neotask la compacta -- resumiendo mensajes mas antiguos en una descripcion condensada y comenzando una nueva sesion con ese resumen mas los mensajes recientes.

Como Funciona

  1. Deteccion -- Monitorear uso de contexto (disparador por defecto: 80% de la ventana de contexto)
  2. Resumen -- Los mensajes mas antiguos se resumen en una entrada de compactacion
  3. Nueva sesion -- Una sesion fresca comienza con el resumen inyectado en la parte superior
  4. Preservacion -- Las transcripciones antiguas se preservan para historial pero ya no se cargan en el contexto

Configuracion

Compactacion Manual

Puede activar la compactacion manualmente en cualquier momento con el comando /compact. Esto es util cuando quiere reiniciar el contexto sin perder informacion importante.


Memoria

Memoria del Agente

Cada agente tiene un sistema de memoria para persistir informacion importante entre sesiones:

Busqueda Vectorial

Neotask soporta busqueda de similitud vectorial sobre la memoria del agente:

  1. Indexacion -- Los archivos de memoria se indexan usando embeddings
  2. Busqueda -- Los agentes consultan la memoria con lenguaje natural ("Que dijo el usuario sobre sus preferencias de API?")
  3. Recuperacion -- Las memorias relevantes se retornan clasificadas por similitud

Plugin de Memoria (LanceDB)

El plugin de memoria LanceDB proporciona almacenamiento vectorial avanzado:

Recuperacion Automatica

Al inicio de sesion, las memorias relevantes pueden recuperarse e inyectarse automaticamente en el contexto del agente. Esto da a los agentes continuidad entre sesiones sin cargar historiales de conversacion completos.


Persistencia de Sesiones

Todos los datos de sesion se almacenan localmente:

Limpieza