Po skróceniu promptu sprawdzaj oszczędności na podstawie usage każdej odpowiedzi i kosztu całego zadania. Krótkiej odpowiedzi może towarzyszyć znaczny koszt rozumowania, a kontynuowanie rozmowy może wiązać się z ponownym naliczeniem historii. Aby kontrolować budżet, rozdziel liczbę tokenów, kategorie taryfowe i liczbę wywołań potrzebnych do uzyskania wyniku.

Cztery liczniki i ich zależności
W przykładowym obiekcie usage OpenAI przedstawia wejście, wyjście i szczegóły obu liczników. Interpretuj je następująco:
input_tokens— łączna liczba tokenów wejściowych danego wywołania, w tym kontekst używany do kontynuowania rozmowy.input_tokens_details.cached_tokens— część wejścia obsłużona z pamięci podręcznej. Jest już uwzględniona winput_tokens.output_tokens— łączna liczba wygenerowanych tokenów, w tym tokenów rozumowania.output_tokens_details.reasoning_tokens— część wyjścia przeznaczona na rozumowanie.
Tokeny rozumowania są już uwzględnione w output_tokens; nie wolno doliczać ich do wyjścia po raz drugi. OpenAI rozlicza je według taryfy za tokeny wyjściowe. Podobnie dodanie cached_tokens do wejścia oznaczałoby ponowne uwzględnienie tej samej części żądania. Aby uzyskać łączną liczbę tokenów, użyj total_tokens lub sumy input_tokens + output_tokens.
Koszt: podziel wejście na kategorie
Na aktualnej stronie z cennikiem osobno podano zwykłe wejście, wejście z pamięci podręcznej, zapis w pamięci podręcznej i wyjście. Wybierz stawki dla używanego modelu, trybu przetwarzania i właściwej długości kontekstu. Dokładne wartości przechowuj w wersjonowanej konfiguracji obliczeń.
Ważny szczegół bieżącej dokumentacji pamięci podręcznej: w przypadku GPT-5.6 i nowszych modeli uwzględniane jest input_tokens_details.cache_write_tokens. Jeśli w Twoim modelu rozliczeń zapis w pamięci podręcznej jest osobno płatny, odejmij tę kategorię od zwykłego wejścia i zastosuj dla niej odpowiednią stawkę.
I = input_tokens
C = input_tokens_details.cached_tokens
W = input_tokens_details.cache_write_tokens
O = output_tokens
ordinary_input = I - C - W
cost = ((I - C - W) * P_input
+ C * P_cached
+ W * P_write
+ O * P_output) / 1_000_000
Ceny podano tu za milion tokenów; w modelu bez osobnej kategorii zapisu ustaw W = 0. Wzór obejmuje wymienione kategorie tokenów. Płatne narzędzia dodawaj jako osobne pozycje zgodnie z ich warunkami rozliczania.
Przykład: wejście — 4000, wejście z pamięci podręcznej — 3000, zapis w pamięci podręcznej — 500, wyjście — 1000, w tym 600 tokenów rozumowania. Otrzymujemy 500 zwykłych tokenów wejściowych i 5000 tokenów łącznie. Rozliczeniu podlega 1000 tokenów wyjściowych; wartość 600 zachowujemy do diagnostyki.
Kontynuacja rozmowy ponownie zużywa tokeny wejściowe
Przy ręcznym zarządzaniu historią aplikacja przekazuje poprzednie wiadomości wraz z nowym wejściem. Wiadomości uwzględnione w kolejnym żądaniu ponownie stają się częścią kontekstu wejściowego. Dlatego pomiar wyłącznie ostatniej wypowiedzi użytkownika pomija koszt historii.
W przypadku previous_response_id aplikacja przekazuje odwołanie do poprzedniej odpowiedzi, a API łączy kontekst. Zgodnie z zasadami rozliczania kontynuacji poprzednie tokeny wejściowe z łańcucha są ponownie rozliczane jako wejściowe. Pamięć podręczna może zmienić kategorię taryfową części tego wejścia; faktyczne trafienie sprawdzaj w cached_tokens każdej odpowiedzi.
Jak sprawdzić efekt optymalizacji
- Zapisz próbkę bazową. Porównuj takie same zadania, model, kryterium powodzenia i zbliżoną długość rozmów.
- Rejestruj każde wywołanie. Zapisuj identyfikatory odpowiedzi i zadania, model, ustawienia rozumowania, status, opóźnienie i pełne
usage. Zachowuj wersję promptu i konfiguracji taryfowej. - Sumuj koszty zadania. Uwzględniaj wszystkie jego wywołania oraz odpowiedzi uzyskane w ponownych próbach. Główna miara to koszt pomyślnie ukończonego zadania.
- Rozdzielaj przyczyny zmian. Śledź zwykłe wejście, odczyt i zapis w pamięci podręcznej, wyjście oraz udział tokenów rozumowania. Aby obliczyć zagregowany udział pamięci podręcznej, podziel sumę
Cprzez sumęI. - Sprawdzaj jakość i skrajne wartości rozkładu. Oprócz średniego kosztu porównuj p95, liczbę prób i odsetek pomyślnie ukończonych zadań.
Parametr max_output_tokens ogranicza generowanie łącznie z rozumowaniem. Po wyczerpaniu limitu odpowiedź może otrzymać status incomplete, także w przypadkach bez widocznego tekstu, ale z naliczonym zużyciem tokenów. Uwzględniaj takie odpowiedzi, oceniając oszczędności: optymalizacja przyniosła efekt, gdy porównywalne zadania są pomyślnie kończone przy niższym łącznym koszcie.