PRZEWODNIK techniczny

Maksymalna liczba tokenów i sekwencje zatrzymania

Maksymalna liczba tokenów to ograniczenie liczby tokenów, które model może wygenerować w jednej odpowiedzi, a sekwencje zatrzymujące to ciągi, które kończą generowanie natychmiast po ich wygenerowaniu przez model.

Posłuchaj tego przewodnikaOpowiadane przez sztuczną inteligencję · ~3 min

Na tej stronie4 minuty czytania
  1. Przegląd
  2. Głębokie nurkowanie
  3. Implementacja w świecie rzeczywistym
  4. Przyszłość maksymalnych tokenów i sekwencji stop
  5. Wdrażanie tego w praktykę
  6. Odkrywaj dalej
  7. Często zadawane pytania

Przegląd

Razem z powodem zakończenia zwracanym przez API decydują, gdzie kończy się odpowiedź i informują, czy zakończyła się naturalnie, czy została ucięta. Prawidłowe ich wykonanie zapobiega skróceniu JSON, niedokończonym odpowiedziom i zmarnowanym wydatkom.

Głębokie nurkowanie

Model językowy generuje jeden token na raz, dopóki coś nie każe mu się zatrzymać. Istnieją trzy najczęstsze powody, dla których przestaje działać. Tworzy swój własny żeton końca tury, co oznacza, że ​​zdecydował, że odpowiedź jest kompletna. Osiąga maksymalną dozwoloną liczbę żetonów wyjściowych. Lub generuje tekst pasujący do jednej z sekwencji zatrzymania. Tokeny Max są często mylone z oknem kontekstowym. Okno kontekstowe to całkowita liczba tokenów, które model może obsłużyć jednocześnie, dane wejściowe i wyjściowe. Tokeny Max ograniczają tylko wynik pojedynczego wywołania. Model z bardzo dużym oknem kontekstowym może nadal generować krótkie odpowiedzi, jeśli maksymalna liczba tokenów jest ustawiona na niską, a dane wejściowe i maksymalne tokeny zazwyczaj muszą mieścić się w oknie kontekstowym. Interfejsy API zgłaszają przyczynę zakończenia generowania. Interfejs API Chat Completions OpenAI zwraca przyczynę zakończenia, taką jak „stop” w przypadku naturalnego końca lub dopasowanej sekwencji zatrzymania, „długość”, gdy osiągnięty został limit wyjściowy, oraz „wywołania narzędzia”, gdy model chce wywołać narzędzie. Interfejs API wiadomości Anthropic zwraca powód zatrzymania, taki jak „koniec_zakrętu”, „max_tokens”, „sekwencja_zatrzymania” lub „użycie_narzędzia”. Anthropic wymaga max_tokens na każde żądanie. Do swoich modeli wnioskowania OpenAI wprowadził max_completion_tokens, który zlicza ukryte tokeny wnioskowania oraz widoczne dane wyjściowe. Sekwencje stop są przydatne w przypadku formatów strukturalnych: zakończenie po znaczniku zamykającym, zatrzymanie przed etykietą głośnika lub ucięcie po jednym elemencie listy. Dopasowany tekst zwykle nie jest uwzględniany w zwracanych wynikach, więc kod nie powinien się spodziewać, że go zobaczy. Najczęstszym błędem jest ignorowanie powodu zakończenia. Skrócona odpowiedź może wyglądać wiarygodnie, zwłaszcza prozą, podczas gdy ustrukturyzowany wynik po prostu się psuje. Innym błędnym przekonaniem jest to, że niska maksymalna liczba tokenów powoduje, że model pisze zwięźle. Tak nie jest; model pisze tak jak zwykle i zostaje obcięty. Poproś o zwięzłość w podpowiedzi i wykorzystaj limit jako górny limit bezpieczeństwa.

Implementacja w świecie rzeczywistym

Podsumowanie ustawia maksymalną liczbę tokenów na 150, a niektóre podsumowania kończą się w połowie zdania; sprawdzenie powodu zakończenia pokazuje „długość” tych połączeń, więc aplikacja podnosi limit i zamiast tego prosi o krótsze podsumowania w monicie.

Skrypt wyodrębniający dane w formacie JSON nie analizuje mniej więcej jednej odpowiedzi na pięćdziesiąt; każda awaria osiągnęła limit wyjściowy, więc kod ponawia teraz próbę z wyższym limitem, gdy powód zakończenia wskazuje, że dane wyjściowe zostały obcięte.

Programista generujący jedną linię dialogu na raz używa sekwencji zatrzymującej „Użytkownik:”, aby model nie był kontynuowany i nie zapisywał także następnej linii użytkownika.

Zespół przechodzący na model rozumowania stwierdza, że ​​odpowiedzi są puste, ponieważ ukryte rozumowanie wyczerpało limit wyników, więc podnosi limit, aby pozostawić miejsce zarówno na rozumowanie, jak i odpowiedź.

Przyszłość maksymalnych tokenów i sekwencji stop

Limity wyników wzrosły, ponieważ modele obsługują dłuższe generacje, a ustrukturyzowane funkcje wyników, które ograniczają odpowiedzi na schemat, zmniejszają, ale nie eliminują, ryzyko obcięcia, ponieważ wystarczająco długa odpowiedź może nadal osiągnąć limit. Modele rozumowania sprawiły, że budżetowanie wyników stało się ważniejsze, ponieważ ukryte tokeny mają teraz ten sam limit. Nazwy parametrów i wartości przyczyny zakończenia różnią się w zależności od dostawcy i zmieniają się z biegiem czasu, dlatego rozsądnie jest sprawdzić aktualną dokumentację i umieścić te szczegóły w małej warstwie własnego kodu.

Wdrażanie tego w praktykę

Dlaczego to ma znaczenie

  • Koszt i budżet. Decyzje dotyczące architektury wpływają na wydajność i koszty operacyjne przez lata.
  • Jaśniejsze decyzje. Edukacja techniczna pomaga zespołom wybrać odpowiedni stos, a nie tylko najnowszy.
  • Kontrola jakości. Lepsze wybory inżynieryjne zmniejszają liczbę incydentów związanych z niezawodnością w produkcji.

Uważaj na

  • Optymalizacja jednego testu porównawczego może ukryć szersze słabości systemu.
  • Koszty infrastruktury i utrzymania są często niedoszacowane.
  • W miarę jak systemy stają się coraz bardziej złożone, luki w bezpieczeństwie i obserwowalności mogą się zwiększać.

Kolejne kroki

  1. Przed wdrożeniem zdefiniuj docelowe opóźnienia, jakość i koszty.
  2. Test porównawczy w realistycznych warunkach obciążenia i danych.
  3. Monitorowanie przyrządu pod kątem błędów, dryftu i wpływu użytkownika.
  4. Przed skalowaniem przygotuj ścieżki wycofywania zmian i reakcji na incydenty.

Odkrywaj dalej

Darmowy newsletter

Otrzymuj codzienne podsumowanie AI

Trzy zweryfikowane historie AI każdego poranka w dni robocze, napisane prostym angielskim. Bezpłatne na zawsze, bez reklam.

Jedno e‑mail każdego dnia roboczego. Wypisz się jednym kliknięciem. Nigdy nie sprzedajemy ani nie udostępniamy Twojego adresu.

Sprawdź się

Take the Max Tokens and Stop Sequences quiz

Natychmiastowa informacja zwrotna na każde pytanie oraz udostępnialny certyfikat z weryfikowalnym ID po zaliczeniu kursu.

Rozpocznij quiz

Wspieraj darmową edukację AI. AI Understanding jest organizacją non-profit 501(c)(3) — bez reklam, bez płatnej ściany, zawsze. Przekaż darowiznę

Często zadawane pytania

Co to jest maksymalna liczba tokenów i sekwencje zatrzymania?

Maksymalna liczba tokenów to ograniczenie liczby tokenów, które model może wygenerować w jednej odpowiedzi, a sekwencje zatrzymujące to ciągi, które kończą generowanie natychmiast po ich wygenerowaniu przez model. Razem z powodem zakończenia zwracanym przez API decydują, gdzie kończy się odpowiedź i informują, czy zakończyła się naturalnie, czy została ucięta. Prawidłowe ich wykonanie zapobiega skróceniu JSON, niedokończonym odpowiedziom i zmarnowanym wydatkom.

Co ogranicza maksymalna liczba tokenów?

Maksymalna liczba tokenów ogranicza moc wyjściową dla jednego połączenia. Okno kontekstowe to oddzielny całkowity limit obejmujący dane wejściowe i wyjściowe.

Twoje wywołanie zwraca przyczynę zakończenia „długość” w interfejsie API OpenAI. Co się stało?

„długość” oznacza, że ​​generowanie zostało zatrzymane, ponieważ osiągnięto limit wyjściowy, więc odpowiedź może być niekompletna.

Który Anthropic stop_reason wskazuje, że model zdecydował, że odpowiedź jest kompletna?

„end_turn” oznacza, że ​​model zakończył się naturalnie. „max_tokens” oznacza, że ​​został odcięty, a „stop_sequence” oznacza, że ​​jeden z ciągów został dopasowany.

Dlaczego ustawienie niskiej maksymalnej wartości tokenów nie powoduje, że odpowiedzi są zwięzłe?

Limit jest twardym zatrzymaniem, a nie instrukcją. Poproś o zwięzłość w podpowiedzi i zachowaj limit jako górny limit bezpieczeństwa.

Czy dopasowana sekwencja zatrzymująca jest zwykle uwzględniana w zwracanym tekście?

Sekwencje zatrzymujące kończą generowanie i zazwyczaj nie są uwzględniane w zwracanych danych wyjściowych, więc Twój kod nie powinien polegać na ich wyświetlaniu.