Kiedy ktoś pyta, który dostawca jest szybszy, pytanie nie ma odpowiedzi bez dopowiedzenia, co się robi. Są dwie metryki i mierzą różne fazy pracy modelu.
Czym są tokeny na sekundę
Tokeny na sekundę to tempo generowania odpowiedzi w fazie decode, mierzone od pojawienia się pierwszego tokenu. Odpowiadają za to, jak szybko rozwija się tekst w strumieniu — nie za to, jak długo trwała cisza przed jego rozpoczęciem.
Od czego zależą
Przede wszystkim od przepustowości pamięci podzielonej przez rozmiar modelu, bo każdy pojedynczy token wymaga przeczytania wszystkich wag. Stąd bezpośredni związek z kwantyzacją: mniejszy plik to więcej tokenów na sekundę przy tym samym sprzęcie.
W drugiej kolejności od wielkości partii — dopóki wąskim gardłem jest odczyt wag, dokładanie równoległych rozmów nie zmienia tempa pojedynczej. Powyżej pewnego progu wąskim gardłem stają się rdzenie i wtedy tempo zaczyna spadać dla wszystkich.
Dlaczego nie wystarcza
Ta metryka i czas do pierwszego tokena bywają ze sobą w konflikcie. Dostawca agresywnie łączący żądania w partie poprawia przepustowość całego systemu i pogarsza czas oczekiwania. Który jest „szybszy”, zależy wyłącznie od tego, czy twoje zadanie ma długi prompt i krótką odpowiedź, czy odwrotnie.
Czego nie mierzy
Niczego o jakości. Tempo generowania jest własnością maszynerii, a nie modelu — ten sam model serwowany przez dwóch dostawców da odpowiedzi tej samej jakości w bardzo różnym tempie.