OpenClawSkills
GitHub
Conceptos Básicos • 5 min de lectura

Poda de Sesión

Poda de sesión: recorte de resultados de herramientas para reducir hinchazón de contexto

La poda de sesión recorta ''resultados de herramientas antiguos'' del contexto en memoria justo antes de cada llamada LLM. ''No'' reescribe el historial de sesión en disco (''*.jsonl'').

Tutorial.step

Cuándo se ejecuta

- Cuando ''mode: "cache-ttl"'' está habilitado y la última llamada Anthropic para la sesión es más antigua que ''ttl''.

- Solo afecta los mensajes enviados al modelo para esa solicitud.

- Solo activo para llamadas API de Anthropic (y modelos Anthropic via OpenRouter).

- Para mejores resultados, coincide ''ttl'' con tu ''cacheControlTtl'' del modelo.

- Después de una poda, la ventana TTL se reinicia para que solicitudes subsecuentes mantengan caché hasta que ''ttl'' expire de nuevo.

Tutorial.step

Valor TTL Recomendado

La poda aplica solo a resultados de herramientas:

- Mensajes ''tool_result''

- Mensajes ''tool_use'' ''no se podan'' (necesarios para que el LLM sepa qué herramienta llamó)

Tutorial.step

Modo

Estrategias actualmente soportadas:

- Reducción de tamaño de contexto: resultados de herramientas antiguos son removidos, haciendo el contexto más pequeño

- Reducción de costos: llamadas API se hacen con contexto más pequeño, reduciendo costos

- Mejora de rendimiento: procesar con contexto más pequeño puede reducir tiempo de respuesta

Tutorial.step

Configuración

Mejores prácticas para usar poda de sesión efectivamente:

- Coincide TTL con el ''cacheControlTtl'' de los modelos

- Habilita poda en sesiones largas para prevenir hinchazón de contexto

- Monitorea logs para confirmar que la poda está funcionando como se espera

- Ajusta el valor TTL considerando el balance de costo y rendimiento

Tutorial.step

Valor TTL Recomendado

Solución de problemas si la poda no está funcionando como se espera:

- Confirma que el valor TTL coincide con el ''cacheControlTtl'' de los modelos

- Confirma que estás usando API de Anthropic (no funciona con otros proveedores)

- Confirma que el último mensaje humano de la sesión es más antiguo que TTL

Tutorial.step

Valores TTL recomendados

Tutorial.step

Impacto de la poda

La poda tiene los siguientes efectos:

- Tamaño de contexto reducido: resultados de herramientas antiguos son removidos, haciendo el contexto más pequeño

Tutorial.step

Limitaciones de la poda

La poda tiene las siguientes limitaciones:

- Solo funciona con API de Anthropic (y modelos Anthropic via OpenRouter)

- Solo resultados de herramientas se podan (otros tipos de mensajes no se afectan)

- El historial de sesión en disco no se modifica

Tutorial.step

Monitoreando la poda

Para monitorear comportamiento de poda, revisa los logs:

- Cuando la poda se ejecuta, se registra un mensaje

- El conteo de mensajes podados se registra

- El tamaño de contexto después de la poda se muestra en logs

Tutorial.step

Deshabilitando la poda

Mejores prácticas para usar poda de sesión efectivamente:

- Coincide TTL con el ''cacheControlTtl'' de los modelos

Tutorial.step

Solución de problemas

Solución de problemas si la poda no está funcionando como se espera:

- Confirma que el valor TTL coincide con el ''cacheControlTtl'' de los modelos

- Confirma que estás usando API de Anthropic (no funciona con otros proveedores)

- Confirma que el último mensaje humano de la sesión es más antiguo que TTL

- Revisa logs para confirmar que la poda está ejecutándose

ReferenceConceptsSessionPruningPage step 11: P6

ReferenceConceptsSessionPruningPage step 11: P7

Tutorial.step

Resumen

La poda de sesión es una herramienta poderosa para prevenir hinchazón de contexto en sesiones largas. Usando estrategia de poda basada en TTL, puedes remover resultados de herramientas antiguos, reducir tamaño de contexto, y mejorar costo y rendimiento.

Json5
{
  agent: {
    contextPruning: { mode: "off" },
  },
}

Funciona con API de Anthropic y se coordina con configuraciones de control de caché del modelo para proporcionar resultados óptimos.

Json5
{
  agent: {
    contextPruning: { mode: "cache-ttl", ttl: "5m" },
  },
}

ReferenceConceptsSessionPruningPage step 12: P3

Json5
{
  agent: {
    contextPruning: {
      mode: "cache-ttl",
      tools: { allow: ["exec", "read"], deny: ["*image*"] },
    },
  },
}

ReferenceConceptsSessionPruningPage step 12: P4