Kompaktowanie
Każdy model ma okno kontekstu — maksymalną liczbę tokenów, które może przetworzyć. Gdy rozmowa zbliża się do tego limitu, OpenClaw kompaktuje starsze wiadomości do postaci podsumowania, aby czat mógł być kontynuowany.Jak to działa
- Starsze tury rozmowy są podsumowywane do zwartego wpisu.
- Podsumowanie jest zapisywane w transkrypcie sesji.
- Ostatnie wiadomości pozostają nienaruszone.
toolResult. Jeśli punkt podziału
wypada wewnątrz bloku narzędzia, OpenClaw przesuwa granicę tak, aby para pozostała razem, a
bieżący niepodsumowany ogon został zachowany.
Pełna historia rozmowy pozostaje na dysku. Kompaktowanie zmienia tylko to,
co model widzi w następnej turze.
Automatyczne kompaktowanie
Automatyczne kompaktowanie jest domyślnie włączone. Uruchamia się, gdy sesja zbliża się do limitu kontekstu albo gdy model zwróci błąd przepełnienia kontekstu (w takim przypadku OpenClaw kompaktuje i ponawia próbę). Typowe sygnatury przepełnienia obejmująrequest_too_large, context length exceeded, input exceeds the maximum number of tokens, input token count exceeds the maximum number of input tokens, input is too long for the model oraz ollama error: context length exceeded.
Przed kompaktowaniem OpenClaw automatycznie przypomina agentowi o zapisaniu ważnych
notatek do plików memory. Zapobiega to utracie kontekstu.
Ręczne kompaktowanie
Wpisz/compact w dowolnym czacie, aby wymusić kompaktowanie. Dodaj instrukcje,
aby ukierunkować podsumowanie:
Używanie innego modelu
Domyślnie kompaktowanie używa głównego modelu agenta. Możesz użyć bardziej zaawansowanego modelu, aby uzyskać lepsze podsumowania:Powiadomienie o rozpoczęciu kompaktowania
Domyślnie kompaktowanie działa po cichu. Aby wyświetlać krótkie powiadomienie, gdy kompaktowanie się rozpoczyna, włącznotifyUser:
Kompaktowanie a przycinanie
| Kompaktowanie | Przycinanie | |
|---|---|---|
| Co robi | Podsumowuje starszą rozmowę | Przycina stare wyniki narzędzi |
| Zapisywane? | Tak (w transkrypcie sesji) | Nie (tylko w pamięci, na żądanie) |
| Zakres | Cała rozmowa | Tylko wyniki narzędzi |
Rozwiązywanie problemów
Kompaktowanie uruchamia się zbyt często? Okno kontekstu modelu może być małe albo dane wyjściowe narzędzi mogą być duże. Spróbuj włączyć przycinanie sesji. Czy po kompaktowaniu kontekst wydaje się nieaktualny? Użyj/compact Skup się na <temat>, aby
ukierunkować podsumowanie, albo włącz opróżnianie memory, aby notatki
zostały zachowane.
Potrzebujesz czystego startu? /new rozpoczyna nową sesję bez kompaktowania.
Zaawansowaną konfigurację (rezerwowe tokeny, zachowanie identyfikatorów, niestandardowe
silniki kontekstu, kompaktowanie po stronie serwera OpenAI) opisano w
Dogłębne omówienie zarządzania sesją.
Powiązane
- Session — zarządzanie sesją i jej cykl życia
- Session Pruning — przycinanie wyników narzędzi
- Context — jak budowany jest kontekst dla tur agenta
- Hooks — hooki cyklu życia kompaktowania (before_compaction, after_compaction)