0Pricing
AI Agents · Lekcja

Budżety tokenów na krok

Ogranicz liczbę tokenów wejściowych i wyjściowych dla każdego węzła, aby niekontrolowana pętla nie doprowadziła do nadmiernych kosztów.

Budżety tokenów na krok to bezpłatna lekcja AI Agents na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej AI Agents, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs AI Agents zawiera 4 lekcji w sumie.

Tokeny kosztują

Każdy wysłany lub odebrany token kosztuje pieniądze i czas. Agenci produkcyjni śledzą zużycie tokenów na każdym kroku i egzekwują limity.

Ustawianie limitu max_tokens wszędzie

Proszę zawsze ustawiać max_tokens przy każdym wywołaniu. Bez tego wadliwy prompt może wygenerować odpowiedzi zawierające 10 000 tokenów:

response = client.chat.completions.create(
    model='gpt-4o-mini',
    messages=messages,
    max_tokens=1024,   # cap per response
)

Limity dla poszczególnych kroków pętli agenta

Różne kroki wymagają różnych budżetów:

STEP_BUDGETS = {
    'planner': 512,
    'classifier': 64,
    'final_synthesis': 2048,
    'tool_call': 256
}

response = client.chat.completions.create(
    model=model,
    messages=messages,
    max_tokens=STEP_BUDGETS[step_name]
)

Ograniczanie liczby tokenów wejściowych

Tokeny wejściowe również kosztują. Proszę je zdecydowanie ograniczać:

import tiktoken
enc = tiktoken.encoding_for_model('gpt-4o-mini')

def trim_to_budget(text, max_tokens=4000):
    toks = enc.encode(text)
    if len(toks) > max_tokens:
        return enc.decode(toks[:max_tokens])
    return text

Łączny budżet pojedynczego uruchomienia

Proszę sumować tokeny wejściowe i wyjściowe ze wszystkich kroków oraz przerwać działanie po przekroczeniu limitu:

MAX_TOKENS_PER_RUN = 50_000
total = 0
for step in agent_steps:
    r = call_step(step)
    total += r.usage.total_tokens
    if total > MAX_TOKENS_PER_RUN:
        return 'Budget exhausted; partial result'

Limity kosztów w dolarach

Czasami wygodniej jest określać budżet w dolarach:

PRICES = {'gpt-4o-mini': {'in': 0.15e-6, 'out': 0.60e-6}}

for step in agent_steps:
    r = call_step(step)
    cost = r.usage.prompt_tokens * PRICES[model]['in'] + r.usage.completion_tokens * PRICES[model]['out']
    total_cost += cost
    if total_cost > MAX_COST_PER_RUN:
        break

Budżety adaptacyjne

Proszę przeznaczać więcej tokenów na najtrudniejsze kroki:

if step_difficulty == 'easy':
    max_tokens = 256
elif step_difficulty == 'hard':
    max_tokens = 2048

Szacowanie długości odpowiedzi

Czasami warto zapytać model, jak długa powinna być odpowiedź:

preview = llm.invoke(f'How many tokens (approx) does {question} need to answer?').content
budget = parse_int(preview, default=512)
final = llm.invoke(question, max_tokens=budget)

Skracanie wyników narzędzi

Duże wyniki narzędzi, takie jak HTML i logi, nadmiernie rozbudowują kontekst. Przed wysłaniem ich do modelu proszę je skrócić:

tool_result = run_tool(...)
text = json.dumps(tool_result)
if len(text) > 4000:
    text = text[:4000] + '\n...[truncated]'

Kompresowanie historii

W przypadku długich rozmów proszę podsumowywać starsze wypowiedzi, aby oszczędzać tokeny:

if total_message_tokens(messages) > 8000:
    messages = compact(messages)

Format odpowiedzi wpływa na liczbę tokenów

JSON jest rozwlekły. W przypadku krótkich ustrukturyzowanych odpowiedzi warto rozważyć:

  • Pojedynczy argument wywołania narzędzia
  • Listę rozdzielaną przecinkami
  • Zwarty niestandardowy format

Śledzenie rozkładu tokenów

Histogramy dla poszczególnych kroków pokazują, które kroki warto zoptymalizować:

metrics.observe('step.planner.tokens', r.usage.total_tokens, tags={'agent': 'qa'})

Dlaczego max_tokens?

Dlaczego należy ustawiać max_tokens przy każdym wywołaniu LLM?

Podsumowanie

Proszę ustawiać limit max_tokens przy każdym wywołaniu. Ograniczać dane wejściowe. Ustalać budżety dla poszczególnych kroków. Ustawiać łączne limity dla pojedynczego uruchomienia. Śledzić rozkłady. Kompresować historię.

Często zadawane pytania

Czy lekcja „Budżety tokenów na krok” jest bezpłatna?

Tak — pełny tekst „Budżety tokenów na krok” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu AI Agents, przejdź na CoddyKit PRO. Kurs AI Agents zawiera 4 lekcji w sumie.

Co nauczysz się w „Budżety tokenów na krok”?

Ogranicz liczbę tokenów wejściowych i wyjściowych dla każdego węzła, aby niekontrolowana pętla nie doprowadziła do nadmiernych kosztów. Ćwiczysz AI Agents z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć AI Agents?

Nie wymagamy żadnego doświadczenia. AI Agents w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.

Ile czasu zajmuje lekcja „Budżety tokenów na krok”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji AI Agents?

Tak. Każda lekcja AI Agents zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Budżety tokenów na krok
  2. Routing modeli (tani -> drogi)
  3. Buforowanie promptów i wyników (Anthropic, Vertex)
  4. Kwantyzacja i dekodowanie spekulatywne
← Powrót do AI Agents