Okno kontekstu a maksymalna liczba tokenów wyjściowych: limity GPT-6, Claude, DeepSeek i Kimi
Czym są okno kontekstu i maksymalna liczba tokenów wyjściowych, limity GPT-6, Claude, DeepSeek V4.1 Flash i Kimi K3 oraz jak naprawić urwane odpowiedzi.
Czytaj jako MarkdownOkno kontekstu to łączna liczba tokenów, jaką model może objąć w jednym żądaniu: twój prompt, historia rozmowy, obrazy i odpowiedź, którą pisze. Limit maksymalnej liczby tokenów wyjściowych to najwięcej, ile model może napisać w tej odpowiedzi, a w modelach z rozumowaniem obejmuje też tokeny zużyte na myślenie. Odpowiedź musi zmieścić się w oknie kontekstu, więc długi prompt zostawia mniej miejsca na wyjście.
Czym różni się okno kontekstu od maksymalnej liczby tokenów wyjściowych?
Okno kontekstu to wspólna przestrzeń. Wszystko, co wysyłasz, i wszystko, co model pisze w jednym żądaniu, musi się w nim zmieścić.
Maksymalna liczba tokenów wyjściowych to osobny, mniejszy limit tylko dla odpowiedzi. Każdy model ma swój pułap, a każde API ma parametr, którym ustawisz niższy limit dla pojedynczego żądania.
Wynikają z tego dwie rzeczy:
- Wejście i wyjście konkurują o to samo okno. Dokumentacja API DeepSeek mówi to wprost: „Łączna długość tokenów wejściowych i wygenerowanych tokenów jest ograniczona długością kontekstu modelu”.
- Rozumowanie liczy się jako wyjście. W GPT-6, Claude, DeepSeek V4.1 Flash i Kimi K3 tokeny, które model zużywa na myślenie, wliczają się do limitu wyjścia i są rozliczane jako wyjście. Odpowiedź może się urwać, nawet jeśli widoczna część jest krótka.
Jakie limity ma każdy model?
| Model | ID modelu | Okno kontekstu | Maks. wyjście | Parametr wyjścia | Domyślnie, jeśli go pominiesz |
|---|---|---|---|---|---|
| GPT-6 Astra, Sol, Luna | gpt-6-astra, gpt-6-sol, gpt-6-luna | 1,05M tokenów (922K wejścia) | 128K | max_output_tokens (Responses), max_completion_tokens (Chat Completions) | Maksimum modelu |
| Claude Opus 5.5, Fable 5.1, Fable 5 | claude-opus-5-5, claude-fable-5-1, claude-fable-5 | 1M tokenów | 128K | max_tokens | Brak: pole jest wymagane |
| DeepSeek V4.1 Flash | deepseek-v4.1-flash | 1M tokenów | 393 216 | max_tokens | 8K bez rozumowania, 64K z rozumowaniem, 128K przy poziomie max |
| Kimi K3 | kimi-k3 | 1 048 576 tokenów | 1 048 576 | max_completion_tokens | 131 072 |
Z ostatniej kolumny bierze się większość urwanych odpowiedzi. DeepSeek V4.1 Flash może napisać 393 216 tokenów, ale jeśli nie ustawisz max_tokens, zatrzyma się na 8K albo na 64K przy włączonym rozumowaniu. Kimi K3 może napisać do 1 048 576 tokenów, ale domyślnie kończy na 131 072.
Dokumentacja API każdego modelu zawiera pełną listę parametrów: GPT-6 Astra, Claude Opus 5.5, DeepSeek V4.1 Flash i Kimi K3.
max_tokens, max_completion_tokens czy max_output_tokens?
Wszystkie ograniczają odpowiedź. Który wysłać, zależy od formatu API i modelu:
| Format API | Parametr | Uwagi |
|---|---|---|
OpenAI Responses (/v1/responses) | max_output_tokens | OpenAI: „Górny limit liczby tokenów, które można wygenerować dla odpowiedzi, w tym widocznych tokenów wyjściowych i tokenów rozumowania”. |
OpenAI Chat Completions (/v1/chat/completions) | max_completion_tokens | OpenAI oznacza max_tokens jako „przestarzały na rzecz max_completion_tokens” i „niezgodny z modelami serii o”. W GPT-6 używaj max_completion_tokens. |
Anthropic Messages (/v1/messages) | max_tokens | Wymagany w każdym żądaniu. |
| DeepSeek Chat Completions | max_tokens | Od 1 do 393216. |
| Kimi Chat Completions | max_completion_tokens | max_tokens to przestarzała nazwa tego samego limitu. |
Jeśli API odpowie „max_tokens is not supported with this model”, przejdź na parametr z tej tabeli.
Dlaczego model zatrzymał się przed końcem?
Doszedł do limitu wyjścia. Każde API sygnalizuje to w odpowiedzi, a nie jako błąd:
| API | Pole | Wartość po osiągnięciu limitu wyjścia |
|---|---|---|
| OpenAI Responses | incomplete_details.reason | "max_output_tokens" |
| OpenAI Chat Completions | choices[].finish_reason | "length" |
| Anthropic Messages | stop_reason | "max_tokens" |
| DeepSeek | choices[].finish_reason | "length" |
Anthropic ma drugi powód zatrzymania, model_context_window_exceeded, dla odpowiedzi, która wypełniła całe okno kontekstu. W DeepSeek length obejmuje oba przypadki: odpowiedź przekroczyła max_tokens albo rozmowa przekroczyła długość kontekstu.
Jak to naprawić:
- Podnieś limit wyjścia do maksimum modelu z tabeli powyżej.
- Obniż poziom rozumowania. Mniej myślenia zostawia więcej budżetu na odpowiedź i kosztuje mniej.
- Kontynuuj zamiast ponawiać. Odeślij częściową odpowiedź i poproś model, żeby pisał dalej. Przewodnik Anthropic po powodach zatrzymania opisuje to dla
max_tokens.
Co oznacza „context window exceeded”?
Twoje żądanie nie mieści się w oknie modelu. Gdzie dokładnie się wysypie, zależy od API:
- Claude. Jeśli samo wejście jest większe niż okno, API zwraca 400
invalid_request_error(„prompt is too long”). Jeśli większa jest dopiero suma wejścia imax_tokens, dokumentacja Anthropic mówi, że Claude 4.5 i nowsze modele, w tym te z tego poradnika, przyjmują żądanie i zatrzymują się zstop_reason: "model_context_window_exceeded", gdy zabraknie miejsca. - DeepSeek. Odpowiedź kończy się
finish_reason: "length", gdy rozmowa przekracza długość kontekstu.
Trzy rozwiązania, po kolei:
- Usuń albo streść stare tury rozmowy. To jedyne wyjście, gdy już samo wejście jest za długie.
- Obniż limit wyjścia, żeby wejście i wyjście się zmieściły.
- Przejdź na model z większym oknem. Wszystkie cztery rodziny z tabeli powyżej czytają około 1M tokenów.
Jak agenty do kodowania radzą sobie z tymi limitami?
Agenty do kodowania ustawiają limit wyjścia za ciebie, a ich wartości domyślne mogą być niższe, niż pozwala model.
Claude Code używa CLAUDE_CODE_MAX_OUTPUT_TOKENS. Jego dokumentacja mówi, że „domyślnie wynosi 32000 dla ID modeli, których nie rozpoznaje, na przykład nazw specyficznych dla bramy, a wartości powyżej pułapu modelu obniża do tego pułapu”. Gdy uruchamiasz DeepSeek V4.1 Flash lub Kimi K3 w Claude Code, ustaw tę zmienną, jeśli potrzebujesz dłuższych odpowiedzi. Ta sama dokumentacja ostrzega, że wyższa wartość „zmniejsza efektywne okno kontekstu dostępne przed uruchomieniem automatycznej kompaktacji”.
Codex czyta model_context_window z config.toml, opisane jako „tokeny okna kontekstu dostępne dla aktywnego modelu”. Ustaw je dla modeli, których Codex nie zna, tak jak w naszej konfiguracji Kimi K3 i konfiguracji DeepSeek V4.1 Flash. Dla nazwy modelu, której nie rozpoznaje, Codex wyświetla też: „Model metadata for <model> not found. Defaulting to fallback metadata; this can degrade performance and cause issues.” Sesja i tak działa.
Najczęściej zadawane pytania
Czy okno kontekstu obejmuje tokeny wyjściowe?
Tak. Wejście, historia, obrazy i odpowiedź dzielą jedno okno kontekstu. Limit maksymalnego wyjścia to osobny pułap dla odpowiedzi wewnątrz tego okna.
Czy tokeny rozumowania liczą się do maksymalnej liczby tokenów wyjściowych?
Tak, we wszystkich czterech rodzinach modeli z tego poradnika. Tokeny myślenia wliczają się do limitu wyjścia i są rozliczane jako tokeny wyjściowe.
Który model pisze najdłuższe odpowiedzi?
Kimi K3 przyjmuje max_completion_tokens do 1 048 576, a DeepSeek V4.1 Flash przyjmuje max_tokens do 393 216. GPT-6 i Claude kończą na 128K na żądanie.
Czy wyższy limit wyjścia kosztuje więcej?
Nie. Płacisz za tokeny, które model faktycznie napisze, a nie za ustawiony limit. Wyższy limit ma znaczenie tylko wtedy, gdy model potrzebuje miejsca.
Gdzie zobaczę aktualne ceny tych modeli?
Na stronie każdego modelu: GPT-6 Astra, Claude Opus 5.5, DeepSeek V4.1 Flash i Kimi K3.



