raatools/

Estymator inferencji ML

Oszacuj opóźnienie inferencji i FPS dla modeli ML na urządzeniach edge.

Opóźnienie

150 ms

Maks. FPS

6.7 FPS

Practical Note: Rzeczywiste FPS mogą być niższe z powodu narzutu przetwarzania wstępnego i ładowania modelu.

Porównanie opóźnień (wszystkie urządzenia)

Pi 4 (4GB)
150ms
Pi 5 (8GB)
50ms
Pi 5 + Coral TPU
5ms

Szczegóły modelu

MobileNet V2: Lightweight image classification. Good for real-time inference on edge devices.

Czym jest kalkulator wnioskowania ML?

Kalkulator wnioskowania ML szacuje zasoby obliczeniowe potrzebne do uruchomienia wnioskowania modelu uczenia maszynowego — procesu używania wytrenowanego modelu do przewidywania na nowych danych. Pomaga określić wymagany pamięć GPU, czas obliczeniowy i przepustowość do wdrażania modeli w produkcji, od małych modeli klasyfikacyjnych do dużych modeli językowych (LLM).

Wymagania wnioskowania modeli zależą od rozmiaru modelu (liczby parametrów), precyzji (FP32, FP16, INT8), rozmiaru partii, długości sekwencji (dla transformerów) i docelowej przepustowości. Model 7-miliardowoparametrowy w FP16 potrzebuje około 14 GB pamięci GPU tylko dla wag. Narzędzie oblicza wymagania pamięciowe i szacowaną przepustowość dla typowych konfiguracji sprzętowych.

Jak korzystać z tego narzędzia

Wpisz rozmiar modelu (liczbę parametrów), precyzję (typ danych), rozmiar partii i docelowy sprzęt. Narzędzie oblicza wymagany RAM GPU, szacowane opóźnienie wnioskowania i przepustowość (tokeny na sekundę dla modeli językowych lub obrazy na sekundę dla modeli wizyjnych). Sugeruje też, które GPU mogą obsłużyć dane obciążenie.

Kluczowe pojęcia

  • Parametry — wyuczone wagi modelu. Więcej parametrów generalnie oznacza lepszą jakość, ale wyższe wymagania zasobowe.
  • Precyzja — FP32 używa 4 bajty na parametr, FP16/BF16 używa 2 bajty, INT8 używa 1 bajt. Niższa precyzja zmniejsza pamięć i zwiększa prędkość przy minimalnej utracie jakości.
  • Rozmiar partii — jednoczesne przetwarzanie wielu danych wejściowych poprawia przepustowość, ale wymaga więcej pamięci.
  • Cache KV — dla modeli transformerowych pamięć podręczna klucz-wartość rośnie z długością sekwencji i zużywa znaczną dodatkową pamięć.

Typowy sprzęt do wnioskowania

GPU konsumenckie: RTX 3090 (24 GB), RTX 4090 (24 GB) — dobre dla modeli do 13 mld parametrów w INT8. Profesjonalne: A100 (40/80 GB), H100 (80 GB) — wymagane dla większych modeli. Opcje chmurowe: AWS, GCP i Azure oferują instancje GPU na godzinę. Wnioskowanie na CPU: możliwe dla mniejszych modeli, ale 10–100× wolniejsze niż GPU. Chipy Apple M-series oferują ujednoliconą pamięć, która może obsłużyć zaskakująco duże modele.

Najczęściej zadawane pytania

Ile pamięci GPU potrzebuję dla modelu 7B?

Przy precyzji FP16: 7 mld × 2 bajty = 14 GB dla samych wag, plus 2–4 GB dla cache KV i narzutu, łącznie około 16–18 GB. Przy INT8: 7 mld × 1 bajt = 7 GB dla wag, około 10–12 GB łącznie. Przy INT4 (kwantyzacja GPTQ/AWQ): około 4–5 GB dla wag, 6–8 GB łącznie. Konsumencki GPU 24 GB (RTX 3090/4090) może wygodnie uruchomić modele 7B w większości precyzji.

Czym jest kwantyzacja i jak bardzo pomaga?

Kwantyzacja zmniejsza precyzję wag modelu z FP32 (4 bajty) do FP16 (2 bajty), INT8 (1 bajt) lub INT4 (0,5 bajta). Zmniejsza to wymagania pamięciowe proporcjonalnie i często przyspiesza wnioskowanie. Kwantyzacja INT8 zazwyczaj zachowuje 99%+ jakości modelu przy zmniejszeniu pamięci o połowę w porównaniu do FP16. INT4 oszczędza jeszcze więcej pamięci przy nieco większej degradacji jakości. To najbardziej praktyczny sposób uruchamiania dużych modeli na konsumenckim sprzęcie.