Wzięte z tego, o co ludzie faktycznie pytają nas na czacie i w zgłoszeniach, mniej więcej w kolejności, w jakiej padają. Pierwsze trzy decydują o tym, czy zakup ma sens.
- Ile pamięci GPU potrzebuje duży model językowy?
- Wagi to liczba parametrów pomnożona przez bajty na parametr: dwa bajty każda przy 16-bitach, jeden przy 8-bitach, pół przy 4-bitach. Model o 7–8 miliardach parametrów to 16 GB wag przy 16-bitach, 8 GB przy 8-bitach i 5 GB przy 4-bitach; model o 70 miliardach parametrów to 140 GB, 70 GB i 38 GB. Te liczby dotyczą samych wag i są raczej dolną granicą niż wymogiem — dolicz od ćwierci do połowy więcej na środowisko uruchomieniowe, aktywacje i pamięć podręczną klucz-wartość.
- Czego potrzebuję, aby uruchomić model 70B taki jak Llama 3.3?
- Przy 4-bitach wagi zajmują około 38 GB, więc z zapasem na obsługę odpowiedzią jest karta o pojemności 64 GB lub większej — jedna karta, jedna maszyna. Przy 8-bitach wagi to 70 GB i karta 80 GB przekracza próg. Przy pełnej precyzji 16-bitów żadna pojedyncza karta, którą montujemy, tego nie pomieści, więc staje się to budową wielokartową, którą wyceniamy. Rys. 3 powyżej wymienia dokładne karty; ceny są na serwerach dedykowanych GPU.
- Dlaczego mój model ładuje się, ale nie odpowiada na żądania?
- Ponieważ wagi nie są jedyną rzeczą w pamięci karty. Środowisko uruchomieniowe i jego bufory są rezydentne, a każdy token w rozmowie zostawia wpis w pamięci podręcznej klucz-wartość, aby nie trzeba było go ponownie obliczać. Ta pamięć podręczna rośnie wraz z długością kontekstu i ponownie z każdym żądaniem obsługiwanym równolegle, więc model, którego wagi ledwo się mieszczą, utrzyma mniej więcej jedną krótką rozmowę. Dobierz kartę o wielkości od jednej i ćwierci do półtora raza wag.
- Które środowisko uruchomieniowe do inferencji mogę zainstalować?
- Każde. Maszyna przyjeżdża z czystym systemem operacyjnym i uprawnieniami root, a przed nią nie ma żadnej usługi inferencyjnej dostawcy. vLLM to zwykła odpowiedź do obsługi prawdziwego ruchu, ponieważ ciągłe grupowanie pozwala jednej karcie odpowiadać na wiele żądań naraz. llama.cpp to zwykła odpowiedź, gdy pamięci jest mało lub karta jest starsza. TGI i SGLang działają bez zmian. Ollama to najkrótsza droga od pustej maszyny do modelu odpowiadającego na porcie — a vLLM i Ollama odpowiadają na punkcie końcowym zgodnym z OpenAI, więc istniejący kod klienta wskazuje na twoją własną maszynę po zmianie jednego bazowego adresu URL. Przypinasz sterownik, wydanie CUDA lub ROCm i framework do wersji, na których testowano twój kod.
- Czy samodzielne hostowanie LLM jest tańsze niż API rozliczane za token?
- Zależy to całkowicie od wolumenu, a punkt przecięcia jest realny: API rozlicza za token i nic nie kosztuje w stanie bezczynności; maszyna dedykowana to stała miesięczna kwota i nic więcej nie kosztuje, gdy jest obciążona. Stały ruch, agenci działający cały dzień, potoki wsadowe i wszystko, co ma wymóg prywatności, zwykle wychodzi korzystniej na własnym sprzęcie; obciążenie uruchamiane dziesięć razy dziennie nie. Miesięczne kwoty do tych obliczeń są na serwerach dedykowanych GPU — ten arkusz celowo niczego nie wycenia.
- Ile tokenów na sekundę uzyskam?
- Nie publikujemy wartości tokenów na sekundę, ponieważ każda taka liczba zależy od modelu, kwantyzacji, środowiska uruchomieniowego i jego wersji, wielkości partii, długości promptu, długości odpowiedzi i współbieżności, a zmiana któregokolwiek z nich przesuwa ją wielokrotnie. Co nią rządzi: odczyt promptu jest ograniczony mocą obliczeniową i odbywa się raz na żądanie; generowanie odpowiedzi jest ograniczone przepustowością pamięci, ponieważ każdy token wymaga odczytania wag; a grupowanie amortyzuje ten odczyt na żądania współbieżne, co sprawia, że obsługa jest ekonomiczna, dopóki pamięć podręczna klucz-wartość nie wyczerpie miejsca. Zapytaj, podając model, kwantyzację i oczekiwaną współbieżność, aby uzyskać odpowiedź opartą na tym, co faktycznie zaobserwowaliśmy.
- Czy GPU jest współdzielone z kimkolwiek innym?
- Nie. Jeden najemca na maszynę fizyczną, a karta jest przekazywana do twojego własnego systemu operacyjnego. Nie ma hipernadzorcy, partycji MIG, profilu vGPU ani harmonogramu z podziałem czasu, więc nic innego nie działa na karcie, a opóźnienie inferencji nie zmienia się z powodu czyjegoś zadania wsadowego.
- Co jeśli model nie mieści się na jednej karcie?
- Wtedy jest to budowa wielokartowa, która jest wyceniana, a nie zamawiana z koszyka: ile kart się zmieści, zależy od fizycznej szerokości konkretnej karty i budżetu mocy obudowy. Dwie karty dają sumę ich pamięci tylko wtedy, gdy środowisko uruchomieniowe potrafi podzielić model między obie, co każde poważne środowisko obsługuje przy pewnym koszcie przepustowości. Więcej niż jedna karta lub maszyna opisuje, jak taka budowa wygląda.
- Czy dostrajanie wymaga więcej pamięci niż obsługa?
- Znacznie więcej. Obsługa wymaga wag; trenowanie wymaga wag, gradientów i stanu optymalizatora dla każdego aktualizowanego parametru, wszystko rezydentne naraz, plus aktywacje zachowane na przebieg wsteczny. Model, który wygodnie obsługuje się na jednej karcie, może być kilkakrotnie za duży, aby w pełni go na niej dostroić. Metody parametrycznie efektywne aktualizują małą część parametrów i potrzebują odpowiednio małej części dodatkowej pamięci, dlatego większość dostrajania tutaj używa jednej z nich.
- Czy mogę uruchomić kartę AMD i czy ROCm działa?
- Tak. Części AMD Instinct należą do kart o największej pamięci, jakie montujemy, i często oferują najlepszą wartość za gigabajt, ale twój stos musi obsługiwać ROCm zamiast CUDA. Większość obecnych środowisk inferencyjnych to robi; niektóre otaczające narzędzia wciąż nie. Zapytaj przed zamówieniem, a sprawdzimy to pod kątem twojego konkretnego środowiska uruchomieniowego, zamiast odpowiadać ogólnie.