Przewodniki po obciążeniach
Serwuj LLM za pomocą vLLM
Zaplanuj pamięć i współbieżność, skonfiguruj punkt końcowy vLLM i zweryfikuj reprezentatywne obciążenie wnioskowania.
9 min czytania · ZaktualizowanoZdefiniuj kontrakt serwowania
Zapisz identyfikator modelu i rewizję, format wag, kwantyzację, maksymalną długość kontekstu, rozkład długości promptów, współbieżność oraz cel dotyczący opóźnienia. Te ustawienia są częścią obciążenia, a nie opcjonalnymi notatkami do benchmarku.
Wagi współdzielą pamięć GPU z pamięcią podręczną KV i tymczasowymi przestrzeniami roboczymi. Model, który ładuje się pomyślnie z jednym krótkim promptem, może nadal zabraknąć pamięci przy zamierzonym ruchu. Zachowaj margines operacyjny i przetestuj najdłuższe dozwolone żądania.
Zacznij od jednego GPU, gdy to wystarczy
Pojedynczy GPU eliminuje komunikację między GPU i ułatwia diagnozowanie pierwszego wdrożenia. Rozważ równoległość tensorową, gdy model i wymagany stan środowiska uruchomieniowego nie mieszczą się na jednym akceleratorze lub gdy reprezentatywny pomiar uzasadnia podział.
Niezależne repliki obsługują osobne żądania; równoległość tensorowa dzieli obliczenia modelu. Rozwiązują różne problemy. Węzeł katalogowy z kilkoma kartami sam w sobie nie dowodzi istnienia konkretnego połączenia wzajemnego.
Porównaj H100 SXM z H100 PCIeKwalifikacja kompletnego środowiska
Obraz AnchorGPU vllm jest dostępny dla NVIDIA i AMD w katalogu. Przed faktycznym uruchomieniem zidentyfikuj rzeczywisty sterownik, środowisko uruchomieniowe CUDA lub ROCm, wersje PyTorch, Python i vLLM. Sprawdź razem architekturę modelu, obsługę kwantyzacji i wszelkie skompilowane jądra uwagi.
Ta lokalna witryna zapisuje konfiguracje, ale nie uruchamia zdalnego serwera modeli. Poniższe polecenia należy wykonywać na rzeczywistym, udostępnionym węźle Linux z wymaganym oprogramowaniem i dostępem do modelu.
Uruchom prywatny punkt końcowy
Ustaw model i prywatny klucz API w powłoce używanej do uruchomienia serwera. Zastąp oba symbole zastępcze. Klucz jest poświadczeniem serwowania vLLM, a nie kluczem AnchorGPU API Twojego konta. Podczas walidacji łącz się z pętlą zwrotną; dostęp zdalny wymaga uwierzytelnionej ścieżki TLS lub sieci prywatnej.
export MODEL_ID="your-organization/your-model"
export VLLM_API_KEY="replace-with-a-private-serving-key"
vllm serve "$MODEL_ID" --host 127.0.0.1 --port 8000W przypadku modelu celowo podzielonego na cztery widoczne procesory GPU w tym samym węźle dodaj --tensor-parallel-size 4. Przed wprowadzeniem tej zmiany potwierdź układ sprzętowy i wsparcie oprogramowania.
Sprawdź API przed testem obciążeniowym
W innej powłoce ustaw ten sam klucz VLLM_API_KEY i zapytaj o listę modeli. Żądanie chat-completions wymaga również modelu z odpowiednim szablonem czatu; pomyślne uruchomienie serwera nie gwarantuje obsługi każdego zadania API.
curl http://127.0.0.1:8000/v1/models \
-H "Authorization: Bearer $VLLM_API_KEY"Używaj identyfikatora modelu zgłaszanego przez serwer w żądaniach klienta. Podczas testowania utrzymuj włączone uwierzytelnianie.
Zmierz trwałą pojemność
Odtwarzaj oczyszczone żądania z zamierzonymi długościami promptów, limitami wyjściowymi i współbieżnością. Rejestruj czas do pierwszego tokena, opóźnienie end-to-end, przepustowość, wskaźnik błędów, użycie pamięci GPU i pojemność pamięci podręcznej KV zgłaszaną przez serwer.
Mierz zimne ładowanie modelu oddzielnie od obsługi w stanie ustalonym. Zwiększaj współbieżność stopniowo. Jeśli pamięć staje się ograniczeniem, oceń niższy kontekst/concurrency, odpowiedni format kwantyzacji lub więcej pamięci, zanim założysz, że większa moc obliczeniowa pomoże.
Przelicz ukończoną pracę na koszt, korzystając ze stałej ceny rezerwacji. Liczba tokenów na sekundę w nagłówku nie jest obietnicą pojemności i w tym przewodniku nie podajemy wyników testów porównawczych AnchorGPU.
Rozwiąż typowe przyczyny awarii
Żądanie czatu nie powiodło się: sprawdź szablon czatu modelu i obsługiwane zadanie API. Awaria pamięci po zwiększeniu obciążenia: sprawdź ciśnienie pamięci podręcznej KV, kontekst i współbieżność. Inicjalizacja wielu GPU zawiesza się: potwierdź widoczne urządzenia, biblioteki kolektywne i poprawność podziału tensorowo-równoległego.
Zapisz wersję modelu, skrót obrazu kontenera, konfigurację uruchomienia, wyniki walidacji oraz kontrakt API klienta. Przed zwolnieniem węzła skopiuj artefakty operacyjne poza niego.
Przeczytaj przewodnik po cyklu życia instancji