Wdrażanie GLM-5.2 na Modal

GLM-5.2 to potężny model typu open-weights. Wykorzystuje architekturę Mixture-of-Experts (MoE) do złożonego rozumowania i programowania. Dorównuje modelom takim jak Claude 3.5 Sonnet w zadaniach inżynieryjnych.

Samodzielne hostowanie tego modelu o 700 miliardach parametrów wymaga 8x GPU NVIDIA H200. Oto jak wdrożyłem go, korzystając z podejścia serverless na Modal.

Korzyści kosztowe

Wynajęcie dedykowanego węzła 8x H200 jest kosztowne.

  • RunPod kosztuje 35,12 USD za godzinę.
  • Modal kosztuje 36,31 USD za godzinę.

Jednak Modal rozlicza się co sekundę. Skaluje się do zera, gdy nie jest używany. 20-minutowa sesja programistyczna kosztuje około 12,00 USD. Gdy nie jesteś aktywny, koszt wynosi 0,00 USD.

Kompromisy związane z kwantyzacją

Nie można uruchomić pełnego modelu BF16 na jednym węźle. Wymaga on 1,5 TB pamięci VRAM. Przetestowałem różne formaty, aby znaleźć najlepszy balans:

  • FP8: Wymaga ~700 GB. Zachowuje 99,2% dokładności. To najlepszy wybór. Wykorzystuje natywne rdzenie Tensor architektury Hopper dla uzyskania wysokiej prędkości.
  • INT8: Wymaga ~750 GB. Jest wolniejszy, ponieważ brakuje mu optymalizacji sprzętowej.
  • INT4: Wymaga ~400 GB. Dokładność znacząco spada w zadaniach wymagających rozumowania.

Dlaczego warto hostować samodzielnie?

  1. Prywatność: Przechowuj swój wrażliwy kod wewnątrz własnej, bezpiecznej sieci.
  2. Brak limitów: Unikaj limitów zapytań (rate limits) i ograniczania kontekstu (context throttling) występujących w publicznych API.
  3. Stabilny cache: Masz kontrolę nad pamięcią GPU. Twój cache kontekstu pozostaje aktywny i stabilny.

Lekcje techniczne

  • Naprawa błędów importu: Musiałem usunąć przestarzały moduł typing_extensions w Dockerfile, aby zapobiec awariom.
  • Przyspieszenie ładowania: Zastosowanie strategii prefetch skróciło czas ładowania modelu z 12 minut do 1 minuty.
  • Użycie trybu Eager: Kompilacja grafów matematycznych zajmowała 20 minut. Tryb Eager uruchamia się w 4,5 minuty. Przy pierwszym zapytaniu może wystąpić niewielkie opóźnienie, ale warto to zrobić dla szybkiego startu.

Wynik

Model bez problemu radzi sobie z ogromnymi plikami. Przetestowałem go na ponad 1000 liniach kodu Python. Przeanalizował logikę i dostarczył dokładną analizę architektury. W jednym przebiegu stworzył nawet funkcjonalną grę z własną ścieżką dźwiękową.

Samodzielne hostowanie zaawansowanej sztucznej inteligencji (frontier AI) jest teraz możliwe dla indywidualnych programistów. Zyskujesz prywatność i moc przy niskich kosztach.

Źródło: https://dev.to/silvestre-po/deploying-glm-52-fp8-700b-moe-on-modal-serverless-8x-h200s-trade-offs-and-lessons-learned-4m7i

Opcjonalna społeczność edukacyjna: https://t.me/GyaanSetuAi