OpenAI
Ta strona została przetłumaczona maszynowo. Wyświetl oryginalny artykuł w języku angielskim.

Kontrolowanie długości odpowiedzi modeli OpenAI

Dowiedz się, jak ustawiać limity długości odpowiedzi modeli OpenAI za pomocą ustawień tokenów, jasnych poleceń, przykładów i sekwencji stop.

Zaktualizowano: 15 days ago

Omówienie

Kontrolowanie długości odpowiedzi modelu jest przydatne z kilku powodów: pomaga zarządzać kosztami (ponieważ płacisz za token), poprawia opóźnienia i wydajność (krótsze odpowiedzi są zwracane szybciej) oraz zapewnia trafność, zapobiegając zbyt długim lub rozwlekłym wynikom.

Możesz to osiągnąć za pomocą limitów tokenów, ustawień rozumowania i szczegółowości, jasnych instrukcji, przykładów oraz sekwencji zatrzymania. Najbardziej aktualne i kompletne informacje zawsze znajdziesz w oficjalnej dokumentacji API na platform.openai.com.

Ustaw maksymalną długość danych wyjściowych

Responses API

Stosowany z modelami GPT-5 i większością modeli serii o: użyj parametru max_output_tokens, aby ograniczyć liczbę tokenów generowanych przez model. W żądaniach compaction_trigger pomiń parametr max_output_tokens lub ustaw go na co najmniej 20000; mniejsze wartości są odrzucane. Interfejs Responses API nie obsługuje wielu uzupełnień (n).

API zakończenia czatu

Używany ze starszymi modelami GPT-3.5 i GPT-4o, a czasem także z modelami serii o.

  • W przypadku modeli rozumujących, takich jak o3 i o4-mini, użyj parametru max_completion_tokens (alias parametru max_tokens)

  • W przypadku starszych modeli lub modeli nierozumujących parametr max_tokens nadal działa

  • Obsługuje parametry stop i n (wiele uzupełnień).

Uwaga: Nie ma ustawienia „minimalna liczba tokenów”. Jeśli potrzebujesz minimalnej długości, określ to w poleceniu.

Limity tokenów według grup modeli

Aktualne limity tokenów, rozmiary kontekstu i limity danych wyjściowych znajdziesz w dokumentacji konkretnego modelu.

Szybkie przykłady

Interfejs API Responses

{ "model": "gpt-5", "input": "Podsumuj ustalenia w ~80 słowach.", "max_output_tokens": 120 }

Zakończenia czatu (model rozumujący)

{ "model": "o3-mini", "messages": [{"role": "user", "content": "Write five one-line options."}], "max_completion_tokens": 100 }

Ustawienia specyficzne dla modeli GPT-5: verbosity i reasoning.effort

Te ustawienia są dostępne tylko w modelach GPT-5 (gpt-5.2, gpt-5.2-chat-latest, gpt-5.2 pro itd.). Modele serii o i starsze modele ich nie obsługują.

Parametr verbosity przyjmuje wartości "low", "medium" (domyślna) lub "high". Wpływa na poziom szczegółowości, ale nie na ścisłe limity.

{ "model": "gpt-5", "input": "Wyjaśnij ogólnie, czym jest PageRank.", "text": { "verbosity": "low" }, "max_output_tokens": 200 }

Parametr reasoning.effort określa, ile tokenów rozumowania zostanie wygenerowanych przed utworzeniem odpowiedzi. GPT-5.2 obsługuje wartości none, low, medium, high i xhigh. gpt-5.2-pro obsługuje tylko wartości medium, high i xhigh. Wcześniejsze modele rozumujące obsługują tylko wartości low, medium i high.

{ "model": "gpt-5", "input": "Ile złota potrzeba, aby pokryć Statuę Wolności warstwą o grubości 1 mm?", "reasoning": { "effort": "minimal" } }

Możesz ustawić parametr reasoning.effort na none, aby model działał jak model nierozumujący w zastosowaniach, w których kluczowe są małe opóźnienia.

Podaj konkretne instrukcje

Poproś o dokładnie taką długość lub formę, jakiej potrzebujesz. Przykłady:

  • „Wymień dokładnie pięć opcji”.

  • „Napisz podsumowanie na 50 słów”.

  • „Nie więcej niż 100 tokenów. Jeśli potrzebujesz więcej miejsca, napisz: ‚Potrzebuję więcej miejsca.’”

Używaj przykładów o spójnej długości

Kilka przykładów dopasowanych do oczekiwanej długości pomaga modelowi kontynuować wzorzec.

Strategiczne stosowanie sekwencji zatrzymania

Użyj parametru stop, aby zatrzymać generowanie, gdy model dotrze do separatora lub końca elementu listy numerowanej.

{ "stop": ["
###", "6."] }

Wiele wariantów

  • Uzupełnienia czatu: parametr n zwraca wiele uzupełnień w jednym wywołaniu.

  • Responses API: parametr n nie jest obsługiwany; jeśli potrzebujesz więcej niż jednego wyniku, wykonaj kilka wywołań.

Czy ten artykuł był pomocny?