Najlepsze rozwiązania dotyczące operacji uczenia maszynowego (MLOps) w usłudze Azure Kubernetes Service (AKS)
W tym artykule opisano najlepsze rozwiązania i zagadnienia, które należy wziąć pod uwagę podczas korzystania z metodyki MLOps w usłudze AKS. Aby uzyskać więcej informacji na temat metodyki MLOps, zobacz Operacje uczenia maszynowego (MLOps) dla przepływów pracy sztucznej inteligencji i uczenia maszynowego.
Infrastruktura jako kod (IaC)
Infrastruktura IaC umożliwia spójną i powtarzalną aprowizację infrastruktury i zarządzanie nią dla różnych typów aplikacji. W przypadku wdrożeń aplikacji inteligentnych implementacja IaC może ulec zmianie w całym potoku sztucznej inteligencji, ponieważ moc obliczeniowa i zasoby potrzebne do wnioskowania, obsługi, trenowania i dostrajania modeli mogą się różnić. Definiowanie i przechowywanie wersji szablonów IaC dla zespołów deweloperów sztucznej inteligencji może pomóc zapewnić spójność i efektywność kosztów w różnych typach zadań, jednocześnie demystując ich indywidualne wymagania sprzętowe i przyspieszając proces wdrażania.
Konteneryzacja
Zarządzanie wagami modelu, metadanymi i konfiguracjami na obrazach kontenerów umożliwia przenoszenie, uproszczone przechowywanie wersji i zmniejszenie kosztów magazynowania w czasie. Dzięki konteneryzacji można wykonywać następujące czynności:
- Korzystaj z istniejących obrazów kontenerów, szczególnie w przypadku dużych modeli językowych (LLM) w milionach do miliardów parametrów w rozmiarze i stabilnych modelach dyfuzji przechowywanych w bezpiecznych rejestrach kontenerów.
- Unikaj pojedynczego punktu awarii (SPOF) w potoku przy użyciu wielu lekkich kontenerów zawierających unikatowe zależności dla każdego zadania zamiast obsługiwać jeden duży obraz.
- Przechowuj duże zestawy danych tekstu/obrazu poza podstawowym obrazem kontenera i odwołują się do nich w razie potrzeby w czasie wykonywania.
Rozpocznij pracę z operatorem łańcucha narzędzi platformy Kubernetes AI, aby wdrożyć maszynę LLM o wysokiej wydajności w usłudze AKS w ciągu kilku minut.
Zarządzanie modelami i przechowywanie wersji
Zarządzanie modelami i przechowywanie wersji są niezbędne do śledzenia zmian w modelach w czasie. Wersjonując modele, można wykonywać następujące czynności:
- Zachowaj spójność w kontenerach modelu, aby ułatwić wdrażanie w różnych środowiskach.
- Stosowanie wydajnych metod dostrajania parametrów (PEFT) w celu szybszego iterowania podzestawu wag modelu i obsługi nowych wersji w lekkich kontenerach.
Automation
Automatyzacja jest kluczem do zmniejszenia błędów ręcznych, zwiększenia wydajności i zapewnienia spójności w całym cyklu życia uczenia maszynowego. Automatyzując zadania, można wykonywać następujące czynności:
- Integrowanie narzędzi do zgłaszania alertów w celu automatycznego wyzwalania przepływu pozyskiwania wektorów w miarę przepływu nowych danych do aplikacji.
- Ustaw progi wydajności modelu, aby śledzić degradacje i wyzwalać potoki ponownego trenowania.
Skalowalność i zarządzanie zasobami
Skalowalność i zarządzanie zasobami mają kluczowe znaczenie dla zapewnienia, że potok sztucznej inteligencji może obsługiwać wymagania aplikacji. Optymalizując użycie zasobów, możesz:
- Integruj narzędzia, które efektywnie używają przydzielonego procesora CPU, procesora GPU i zasobów pamięci za pośrednictwem rozproszonego przetwarzania i wielu poziomów równoległości (na przykład: danych, modelu i równoległości potoku).
- Włącz skalowanie automatyczne w zasobach obliczeniowych, aby obsługiwać duże ilości żądań modelu w godzinach szczytu i skalować w dół w godzinach poza szczytem.
- Podobnie jak w przypadku tradycyjnych aplikacji, zaplanuj odzyskiwanie po awarii, postępując zgodnie z najlepszymi rozwiązaniami dotyczącymi odporności i niezawodności usługi AKS.
Zabezpieczenia i zgodność
Zabezpieczenia i zgodność mają kluczowe znaczenie dla ochrony danych i zapewnienia, że potok sztucznej inteligencji spełnia wymagania prawne. Implementując najlepsze rozwiązania w zakresie zabezpieczeń i zgodności, można wykonywać następujące czynności:
- Integrowanie skanowania typowych luk w zabezpieczeniach i narażenia (CVE) w celu wykrywania typowych luk w zabezpieczeniach obrazów kontenerów modelu typu open source.
- Użyj usługi Microsoft Defender for Containers dla obrazów kontenerów modelu przechowywanych w usłudze Azure Container Registry.
- Zachowaj dziennik inspekcji pozyskanych danych, zmian modelu i metryk, aby zachować zgodność z zasadami organizacji.
Następne kroki
Dowiedz się więcej o najlepszych rozwiązaniach w innych obszarach wdrażania i operacji aplikacji w usłudze AKS:
Azure Kubernetes Service