Przejdź do głównej treści

Przycinanie sesji

Przycinanie sesji skraca stare wyniki narzędzi w kontekście przed każdym wywołaniem LLM. Ogranicza rozrost kontekstu spowodowany nagromadzonymi danymi wyjściowymi narzędzi (wyniki exec, odczyty plików, wyniki wyszukiwania) bez przepisywania zwykłego tekstu rozmowy.
Przycinanie działa tylko w pamięci — nie modyfikuje transkrypcji sesji zapisanej na dysku. Pełna historia jest zawsze zachowywana.

Dlaczego to ważne

Długie sesje gromadzą dane wyjściowe narzędzi, które powiększają okno kontekstu. To zwiększa koszt i może wymusić kompaktowanie wcześniej, niż jest to konieczne. Przycinanie jest szczególnie wartościowe dla prompt cache Anthropic. Po wygaśnięciu TTL cache następne żądanie ponownie cache’uje cały prompt. Przycinanie zmniejsza rozmiar zapisu do cache, bezpośrednio obniżając koszt.

Jak to działa

  1. Poczekaj na wygaśnięcie TTL cache (domyślnie 5 minut).
  2. Znajdź stare wyniki narzędzi do zwykłego przycinania (tekst rozmowy pozostaje bez zmian).
  3. Miękkie przycinanie zbyt dużych wyników — zachowaj początek i koniec, wstaw ....
  4. Twarde czyszczenie pozostałych — zastąp je placeholderem.
  5. Zresetuj TTL, aby kolejne żądania mogły ponownie użyć świeżego cache.

Czyszczenie starszych obrazów

OpenClaw uruchamia też osobne idempotentne czyszczenie dla starszych sesji legacy, które zapisywały surowe bloki obrazów w historii.
  • Zachowuje 3 najnowsze ukończone tury bajt po bajcie, aby prefiksy prompt cache dla ostatnich followupów pozostały stabilne.
  • Starsze, już przetworzone bloki obrazów w historii user lub toolResult mogą zostać zastąpione przez [image data removed - already processed by model].
  • To jest oddzielne od zwykłego przycinania według TTL cache. Istnieje po to, aby powstrzymać powtarzające się ładunki obrazów przed psuciem prompt cache w późniejszych turach.

Rozsądne ustawienia domyślne

OpenClaw automatycznie włącza przycinanie dla profili Anthropic:
Typ profiluPrzycinanie włączoneHeartbeat
Uwierzytelnianie Anthropic OAuth/token (w tym ponowne użycie Claude CLI)Tak1 godzina
Klucz APITak30 min
Jeśli ustawisz wartości jawnie, OpenClaw ich nie nadpisze.

Włączanie lub wyłączanie

Przycinanie jest domyślnie wyłączone dla dostawców innych niż Anthropic. Aby je włączyć:
{
  agents: {
    defaults: {
      contextPruning: { mode: "cache-ttl", ttl: "5m" },
    },
  },
}
Aby wyłączyć: ustaw mode: "off".

Przycinanie a kompaktowanie

PrzycinanieKompaktowanie
CoSkraca wyniki narzędziPodsumowuje rozmowę
Zapisane?Nie (na żądanie)Tak (w transkrypcji)
ZakresTylko wyniki narzędziCała rozmowa
Te mechanizmy się uzupełniają — przycinanie utrzymuje lekkie dane wyjściowe narzędzi między cyklami kompaktowania.

Dalsza lektura