Jeden domowy model AI może niezawodnie obsługiwać od jednego do kilku interaktywnych użytkowników, ale stabilny limit zależy od zapotrzebowania na tokeny, grupowania żądań i docelowych opóźnień.
Model generujący 30 tokenów na sekundę może wydawać się szybki podczas jednej krótkiej rozmowy, ale może zwolnić, gdy cztery osoby jednocześnie prześlą długie zapytania. Równoległość zużywa pamięć pamięci podręcznej KV, współdzieli przepustowość dekodowania i powoduje nagłe wzrosty kolejki. Właściwym limitem jest najwyższe obciążenie oferowane, przy którym nadal osiągane są określone docelowe wartości p95 dla czasu do pierwszego tokena i szybkości generowania tokenów podczas typowego korzystania przez rodzinę.
Równoległość zamienia przepustowość w czas oczekiwania
Zgrubne oszacowanie przepustowości polega na podzieleniu utrzymywanej przepustowości generowania przez średnią liczbę tokenów żądanych na sekundę we wszystkich aktywnych sesjach. Gdy zapotrzebowanie zbliża się do przepustowości usługi, niewielkie skoki obciążenia tworzą długie kolejki. Użytkownicy nie są identycznymi jednostkami — odpowiedź zawierająca 50 tokenów i odpowiedź zawierająca 2000 tokenów obciążają serwer w różny sposób.
Analiza opóźnienia i przepustowości wyjaśnia, że grupowanie żądań zwiększa łączną przepustowość, często jednak kosztem indywidualnego opóźnienia odpowiedzi. To napięcie decyduje o tym, czy dodatkowe sesje będą działać stabilnie.
Wstępne przetwarzanie promptu może również blokować dekodowanie, zależnie od harmonogramu zadań. Dwóch użytkowników wklejających duże dokumenty może zaszkodzić wszystkim bardziej niż sześciu użytkowników zadających krótkie pytania. Sama liczba użytkowników bez rozkładu długości promptów i odpowiedzi nie jest więc miarodajna.
Pamięć podręczna KV i harmonogramowanie tworzą drugi limit
Każda aktywna sekwencja przechowuje klucze i wartości mechanizmu uwagi dla swojego kontekstu. Dłuższe historie i większe grupy zwiększają zużycie pamięci podręcznej KV, aż żądania zostaną odrzucone, przeniesione lub opóźnione. Ciągłe grupowanie może przyjmować nowe zadania między iteracjami dekodowania, poprawiając wykorzystanie zasobów, ale nie tworzy dodatkowej pamięci.
Techniczne wyjaśnienie ciągłego grupowania pokazuje, jak harmonogramowanie na poziomie iteracji wypełnia niewykorzystane miejsca w grupie. Korzyść zależy od charakteru obciążenia i może nieznacznie zwiększać rywalizację między żądaniami.
Opóźnienie staje się niestabilne w pobliżu nasycenia, ponieważ długość kolejki gwałtownie reaguje na zmienność napływu żądań. Średnie opóźnienie może rosnąć stopniowo, podczas gdy p95 i maksymalne opóźnienie nagle skaczą. Stabilna przepustowość powinna znajdować się poniżej tego punktu załamania, a nie przy najwyższej wartości tokenów na sekundę z benchmarku.
Kiedy liczba użytkowników przestaje przewidywać jakość działania
Ten sam serwer może obsługiwać więcej użytkowników podczas autouzupełniania niż w przypadku RAG, korzystania z narzędzi lub generowania długich treści. Zimne uruchomienia, ograniczanie wydajności z powodu temperatury, wyszukiwanie i synteza mowy dodają etapy wykraczające poza samo udostępnianie modelu. Wskaźnik równoległości dotyczący wyłącznie modelu nie gwarantuje responsywności całej aplikacji.
Przewodnik dotyczący udostępniania pamięci opisuje pamięć, kontekst, grupowanie i równoległość jako wzajemnie powiązane ograniczenia. Zmiana dowolnego z tych elementów może przesunąć punkt załamania przepustowości.
Przewidywanie zawodzi również wtedy, gdy żądania rodziny napływają jednocześnie, a nie niezależnie. Czterech użytkowników, których sesje rzadko się nakładają, może nie stanowić problemu, podczas gdy dwóch automatycznych agentów może stale nasycać model. Mierz rzeczywistą pracę, a nie liczbę zarejestrowanych kont.
Znajdź punkt załamania równoległości za pomocą testu obciążeniowego
Odtwórz realistyczne krótkie, średnie i długie żądania przy jednej, dwóch, czterech i ośmiu równoczesnych sesjach. Nie zmieniaj modelu, kwantyzacji, limitu kontekstu ani parametrów próbkowania. Rejestruj czas oczekiwania w kolejce, opóźnienie do pierwszego tokena, opóźnienie między tokenami, współczynnik ukończenia, zużycie pamięci podręcznej KV oraz wartości p50, p95 i maksymalne.
Wykorzystaj architekturę współdzielonych sesji modelu jako kontekst testu, gdy kilka domowych sesji korzysta z jednego modelu. Etapy RAG i narzędzia pozostaw wyłączone albo mierz je oddzielnie.
Uznaj limit za stabilny, gdy jest to najwyższy poziom równoległości, przy którym p95 opóźnienia do pierwszego tokena mieści się w docelowej wartości dla gospodarstwa domowego, a kolejka nie wykazuje rosnącego trendu i nie występują błędy pamięci. Zachowaj 20–30% zapasu przepustowości na nagłe skoki obciążenia. Powtarzaj testy za każdym razem, gdy zmieni się długość kontekstu, model lub harmonogram zadań.
Centrum Technologii i Sztucznej Inteligencji
Więcej do przeczytania

Jak mierzyć jakość lokalnego wyszukiwania RAG oraz interpretować kompletność przywołań, precyzję i pokrycie cytowaniami
Zbuduj lokalny zestaw testowy RAG, oblicz podstawowe metryki wyszukiwania, zinterpretuj kompromisy między nimi i sprawdź, czy twierdzenia zawarte w odpowiedziach są poparte przytoczonymi dowodami.

Dlaczego obliczenia funkcji inteligentnego domu stają się ważniejsze wraz ze wzrostem liczby czujników przy tej samej częstotliwości próbkowania?
Śledź obliczenia dla poszczególnych czujników i między czujnikami wraz ze wzrostem liczby urządzeń, identyfikuj nieliniowe koszty fuzji danych i porównaj wydajność potoku cech, zanim...

Dlaczego koszt oceny RAG rośnie przy tej samej liczbie zapytań wraz z rozbudową biblioteki dokumentów?
Zrozum, dlaczego rozrost korpusu zwiększa nakład pracy na ocenę RAG bez zwiększania liczby zapytań użytkowników oraz jak testy warstwowe utrzymują koszty proporcjonalne do ryzyka.

