Powrót do bloga

AI dla początkującychPrzewodnik

Dlaczego agent AI odczytuje całą swoją historię przy każdym kroku

Poprawka wiersza stanu w Claude Code pokazuje, dlaczego długie sesje agentów stają się drogie: każde wywołanie ponownie wysyła rozmowę. Oszacuj koszt i obetnij go.

Autor: CheapTokens TeamOpublikowano 5 min czytania

Okładka: dlaczego agent AI odczytuje cały czat przy każdym kroku
Na tej stronie
  1. Wiersz stanu, który odczytywał wszystko od nowa
  2. Dlaczego każdy krok ponownie wysyła historię
  3. Ile to kosztuje: jedno zadanie, jeden dzień
  4. Cztery sposoby, żeby to obciąć
  5. Wzorzec notatek

Twój agent działał przez dziesięć minut, a rachunek jest większy, niż wygląda na to zadanie. Prawie zawsze powód jest ten sam: model nie pamięta niczego między wywołaniami, więc każdy krok ponownie wysyła całą dotychczasową rozmowę jako dane wejściowe. Sesja złożona z 50 kroków płaci za swoje pierwsze wiadomości 50 razy — dlatego koszt rośnie szybciej niż wykonana praca.

Poprawka, którą Anthropic ogłosił dla Claude Code 4–5 listopada 2026, pokazuje to w jednym małym miejscu. Poniżej: co się zmieniło, arytmetyka pętli 50 kroków i co możesz z tym zrobić.

Wiersz stanu, który odczytywał wszystko od nowa#

Claude Code potrafi uruchamiać podagentów w tle: agentów pomocniczych, którzy pracują nad zadaniem pobocznym, gdy ty robisz swoje. Każdy z nich pokazuje jednoliniowy status, coś w rodzaju „uruchamiam testy, 3 z 8 gotowe”.

Konto ClaudeDevs na X ogłosiło zmianę (post jest datowany na 5 listopada 2026; wtórne doniesienia mówią o 4 lub 5 listopada). Status odświeżał się co 30 sekund, a każde odświeżenie odczytywało całą rozmowę podagenta od nowa. Teraz Haiku 5.5 pisze status na podstawie krótkich notatek, co według Anthropic jest o około 99% tańsze na aktualizację. To liczba na aktualizację, nie na sesję: rzeczywista praca podagenta nadal odczytuje jego historię.

Wyobraź sobie, co oznaczał stary sposób. Załóżmy, że podagent ma 60 000 tokenów rozmowy po dwudziestu minutach. Sam status to może 30 tokenów. Ale żeby napisać te 30 tokenów, model musiał odczytać ponownie wszystkie 60 000, dwa razy na minutę, przez cały czas działania podagenta.

Przed poprawką status odczytywał całą rozmowę co 30 sekund; po niej — krótkie notatki
Zmiana wiersza stanu opisana w ogłoszeniu ClaudeDevs, 5 listopada 2026

Nikomu nie trzeba pełnego zapisu, żeby powiedzieć „uruchamiam testy”. Wystarczy kilka linijek notatek (co robię, co jest skończone). To cała poprawka: daj zadaniu pobocznemu notatki, a nie zapis rozmowy.

Dlaczego każdy krok ponownie wysyła historię#

Pomyśl o liście do kogoś, kto zapomina cię w chwili, gdy odpowiada. Żeby kontynuować, wysyłasz całą korespondencję jeszcze raz plus nową linijkę. Krok agenta to dokładnie takie wywołanie: prompt systemowy, twoje zadanie, każda wcześniejsza odpowiedź i każdy wynik narzędzia trafiają tam ponownie. (Wersja tej historii w kontekście czatu jest w dlaczego długi czat AI kosztuje więcej.)

Podłóżmy liczby. Załóżmy, że prompt systemowy i zadanie zajmują 3000 tokenów, a każdy krok dodaje około 2000 (odpowiedź modelu plus odczytany wynik narzędzia). Krok n wysyła wtedy 3000 + 2000 × n tokenów: 5000 w kroku 1, 23 000 w kroku 10, 103 000 w kroku 50.

Tokeny wejściowe na krok w przykładowym agencie rosną z 5000 do 103 000
Rozmiar wejścia na krok w przykładowym agencie (założenie: 3000 na start, +2000 na krok)

Zgadnij liczbę

Ile tokenów wejściowych wysyła krok 50 tego agenta?

Pokaż odpowiedź

Odpowiedź: 103 000

3000 + 2000 × 50 = 103 000. Model odczytuje ponownie prompt startowy i wszystkie 49 wcześniejszych kroków, a na wierzch twój nowy krok.

Teraz zsumuj wszystkie 50 kroków. Rosnąca część to 2,000 × 1,275 = 2,550,000, gdzie 1275 to 1 + 2 + … + 50. Prompt startowy, wysyłany za każdym razem, to 50 × 3,000 = 150,000. Razem: 150,000 + 2,550,000 = 2,700,000 tokenów wejściowych. Gotowa rozmowa zawiera tylko 103 000. Przepchnąłeś przez model 2,7 miliona tokenów, żeby dostać zapis o rozmiarze 103 000 tokenów, a rachunek idzie za pierwszą liczbą.

Ile to kosztuje: jedno zadanie, jeden dzień#

Wyceńmy tego samego 50-krokowego agenta na DeepSeek-V4-Flash. Przeciętny krok wysyła 54 000 tokenów, więc w sumie 54,000 × 50 = 2,700,000 tokenów wejściowych, a zapisuje około 400 na krok (400 × 50 = 20,000). Całe zadanie kosztuje $0.0425. Oto to samo obciążenie na każdym modelu, jaki mamy, obok OpenRouter:

Model Za żądanie 50 żądań OpenRouter, 50 żądań
GLM-5.3-Flash $0.0011 $0.0548 $0.0921
DeepSeek-V4-Flash $0.00085 $0.0425 $0.192
MiniMax-M2.7 $0.0028 $0.138 $1.66

54 000 tokenów wejściowych i 400 tokenów wyjściowych na żądanie. Ceny za 1 mln tokenów są aktualne i zmieniają się wraz z naszymi taryfami; kolumna OpenRouter pokazuje ceny referencyjne dla tego samego obciążenia.

W tabeli każdy model jest tańszy niż OpenRouter w sumie, licząc wejście i wyjście razem.

Teraz wiersz stanu. 120 aktualizacji to godzina jednego podagenta, a każda zapisuje około 30 tokenów (30 × 120 = 3,600 wyjścia). Stary sposób: 60,000 × 120 = 7,200,000 tokenów wejściowych, więcej niż dwa i pół z powyższych 50-krokowych zadań, wydanych na nic innego jak tekst statusu. Z notatką o 500 tokenach to 500 × 120 = 60,000. Na GLM-5.3-Flash to $0.144 wobec $0.0013.

Wypróbuj własnego agenta: tokeny na krok, kroki i zadania na dzień.

Kalkulator kosztów

Dzień dziesięciu takich zadań

Tokeny wejściowe na żądanie: 54 000 · Tokeny wyjściowe na żądanie: 400 · Żądania dziennie: 500

ModelDziennieMiesięcznie
GLM-5.3-Flash$0.548$16.44
DeepSeek-V4-Flash$0.425$12.75
MiniMax-M2.7$1.38$41.40

Bazowy URL, klucz i pierwsze żądanie są w dokumentacji CheapTokens; aktualne ceny każdego modelu są na stronie z cenami.

Cztery sposoby, żeby to obciąć#

Żaden z nich nie wymaga specjalnego narzędzia. To nawyk pytania: czy to wywołanie naprawdę potrzebuje historii?

Wzorzec notatek#

Prowadź kilka linijek notatek, gdy agent pracuje, i przekazuj tylko je małemu modelowi, gdy potrzebujesz statusu lub podsumowania. Oto to na GLM-5.3-Flash (zai-org/GLM-5.3-Flash, kontekst 390K, do 8192 tokenów wyjściowych na odpowiedź):

python
import os
from openai import OpenAI

client = OpenAI(
    base_url='https://api.cheaptokens.dev/v1',
    api_key=os.environ['CHEAPTOKENS_API_KEY'],
)

notes = [
    'Task: fix failing tests in billing/',
    'Done: found 3 failing tests, fixed 2',
    'Now: running the third test',
]

reply = client.chat.completions.create(
    model='zai-org/GLM-5.3-Flash',
    max_tokens=100,
    messages=[
        {'role': 'system', 'content': 'Write a one-line status from the notes.'},
        {'role': 'user', 'content': '; '.join(notes)},
    ],
)
print(reply.choices[0].message.content)
print(reply.usage.prompt_tokens, reply.usage.completion_tokens)

Dostajesz z powrotem jedną krótką linijkę, a para zużycia pokazuje wejście w dziesiątkach tokenów, nie dziesiątkach tysięcy. To ten sam pomysł co zmiana w Claude Code, w kilkunastu linijkach.

Który nawyk pasuje do twojego przypadku?

Wybierz swój przypadek

Jaka jest twoja sytuacja?

Jedna sesja, temat się zmienił

Zacznij nową sesję. Wklej pięć linijek notatek (cel, co zrobione, co dalej) zamiast starego zapisu. Opcje przycinania są w przycinanie historii czatu: okno przesuwne czy podsumowanie.

Zadanie poboczne: status, podsumowanie, tytuł

Daj mu notatki, nie historię, i wyślij je do małego modelu, jak w powyższym kodzie.

Ogromny wynik narzędzia: logi, zrzuty testów

Trzymaj go poza historią. Pokaż ostatnie 20 linii albo jeden nieudany test, nie cały zrzut: każda linia, którą zachowasz, jest ponownie wysyłana w każdym późniejszym kroku. Zużycie tokenów w Claude Code: trzymaj wyniki narzędzi poza kontekstem pokazuje jak.

Ten sam długi prompt przy każdym wywołaniu

Zapytaj swojego dostawcę o buforowanie promptów, które może ponownie wykorzystać powtarzany początek promptu zamiast odczytywać go od nowa za każdym razem.

Jeśli używasz Claude Code, zaktualizuj go i przejrzyj changelog w poszukiwaniu notatki o wierszu stanu.

Dla samej pętli DeepSeek-V4-Flash (deepseek-ai/DeepSeek-V4-Flash-0731) daje ci kontekst 380K, do 32 768 tokenów wyjściowych na odpowiedź i jedną cenę o każdej porze. Koniec naszego przykładu na 103 000 tokenów mieści się w tym oknie ponad trzy razy. Do notatek i podsumowań — GLM-5.3-Flash. Inne modele są na stronie modeli.