Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule opisano sposób użycia platformy MLflow w usłudze Databricks do tworzenia wysokiej jakości agentów generacyjnych sztucznej inteligencji i modeli uczenia maszynowego.
Notatka
Jeśli dopiero zaczynasz pracę z usługą Azure Databricks, rozważ wypróbowanie biblioteki MLflow w usłudze Databricks Free Edition.
Co to jest MLflow?
MLflow to platforma typu open source do tworzenia modeli i generowania aplikacji sztucznej inteligencji. Ma ona następujące składniki podstawowe:
- Śledzenie: umożliwia śledzenie eksperymentów w celu rejestrowania i porównywania parametrów i wyników.
- Modele: umożliwiają zarządzanie i wdrażanie modeli z różnych bibliotek uczenia maszynowego na różnych platformach do obsługi modeli i przeprowadzania wnioskowania.
- Rejestr modeli: umożliwia zarządzanie procesem wdrażania modelu z etapu przejściowego do produkcyjnego z możliwościami przechowywania wersji modelu i adnotacji.
- Ocena i śledzenie agentów sztucznej inteligencji: umożliwia opracowywanie wysokiej jakości agentów sztucznej inteligencji, pomagając porównywać, oceniać i rozwiązywać problemy z agentami.
Platforma MLflow obsługuje język Java, Python, R oraz interfejsy API REST.
MLflow 3
Rozwiązanie MLflow 3 w usłudze Azure Databricks zapewnia najnowocześniejsze śledzenie eksperymentów, obserwowalność i ocenę wydajności modeli uczenia maszynowego, generatywne aplikacje sztucznej inteligencji oraz agenty w lakehouse Databricks. Korzystając z platformy MLflow 3 w usłudze Azure Databricks, możesz wykonywać następujące czynności:
Zcentralizowanie śledź i analizuj wydajność swoich modeli, aplikacji AI i agentów we wszystkich środowiskach, począwszy od interakcyjnych zapytań w notesie-deweloperskim, po wdrożenia wsadowe lub w czasie rzeczywistym.
Zarządzaj przepływami pracy oceny i wdrażania przy użyciu Unity Catalog i uzyskuj pełne dzienniki stanu dla każdej wersji swojego modelu, aplikacji sztucznej inteligencji lub agenta.
Wyświetlaj i uzyskuj dostęp do metryk i parametrów modelu z poziomu strony wersji modelu w katalogu Unity oraz z interfejsu API REST.
Dodawanie adnotacji do żądań i odpowiedzi (śladów) dla wszystkich aplikacji i agentów sztucznej inteligencji generacji, co umożliwia ekspertom ludzkim i zautomatyzowanym technikom (takim jak LLM-as-a-judge) przekazywanie rozbudowanych opinii. Możesz wykorzystać tę opinię, aby ocenić i porównać wydajność wersji aplikacji oraz utworzyć zestawy danych pod kątem poprawy jakości.
Te możliwości upraszczają i usprawniają ocenę, wdrażanie, debugowanie i monitorowanie wszystkich inicjatyw związanych ze sztuczną inteligencją.
Platforma MLflow 3 wprowadza również pojęcia dotyczące zarejestrowanych modeli i zadań wdrażania.
-
Zarejestrowane modele ułatwiają śledzenie postępu modelu w całym cyklu życia. Podczas rejestrowania modelu przy użyciu
log_model()
tworzony jest elementLoggedModel
, który jest utrwalany przez cały okres życia modelu, w różnych środowiskach i uruchomieniach, oraz zawiera linki do artefaktów, takich jak metadane, metryki, parametry i kod używany do generowania modelu. Możesz użyć zarejestrowanego modelu do porównywania modeli ze sobą, znajdowania najbardziej wydajnego modelu i śledzenia informacji podczas debugowania. - Zadania wdrażania mogą służyć do zarządzania cyklem życia modelu, w tym krokami, takimi jak ocena, zatwierdzenie i wdrożenie. Te przepływy pracy modelu są zarządzane przez Unity Catalog, a wszystkie zdarzenia są zapisywane w dzienniku aktywności dostępnym na stronie wersji modelu w Unity Catalog.
Zapoznaj się z następującymi artykułami, aby zainstalować i rozpocząć korzystanie z platformy MLflow 3.
- Wprowadzenie do platformy MLflow 3.
- Śledzenie i porównywanie modeli przy użyciu modeli zarejestrowanych przez platformę MLflow.
- Ulepszenia rejestru modeli za pomocą platformy MLflow 3.
- Zadania wdrażania platformy MLflow 3.
MLflow zarządzany przez platformę Databricks
Usługa Databricks udostępnia w pełni zarządzaną i hostowaną wersję platformy MLflow, bazując na środowisku typu open source, aby uczynić ją bardziej niezawodną i skalowalną do użytku w przedsiębiorstwie.
Na poniższym diagramie pokazano, jak usługa Databricks integruje się z platformą MLflow w celu trenowania i wdrażania modeli uczenia maszynowego.
Rozwiązanie MLflow zarządzane przez usługę Databricks jest oparte na Unity Catalog i Chmurze Data Lake, aby zjednoczyć wszystkie dane i zasoby sztucznej inteligencji w cyklu życia ML:
- Repozytorium cech: Zautomatyzowane wyszukiwanie cech w Databricks upraszcza integrację i ogranicza błędy.
- Trenowanie modeli: Użyj Mosaic AI do trenowania modeli lub dostrajania modeli bazowych.
- Tracking: MLflow śledzi trenowanie przez rejestrowanie parametrów, metryk i artefaktów w celu oceny i porównywania wydajności modelu.
- Rejestr modeli : Rejestr modeli MLflow zintegrowany z Unity Catalog centralizuje modele i artefakty sztucznej inteligencji.
- Model Serving: Mosaic AI Model Serving wdraża modele do punktu końcowego interfejsu API REST.
- Monitorowanie: usługa Mosaic AI Model Serving automatycznie przechwytuje żądania i odpowiedzi na monitorowanie i debugowanie modeli. Rozwiązanie MLflow rozszerza te dane o dane śledzenia dla każdego żądania.
Trenowanie modelu
Modele MLflow są podstawą opracowywania sztucznej inteligencji i uczenia maszynowego w usłudze Databricks. Modele MLflow to standardowy format tworzenia pakietów modeli uczenia maszynowego i generacyjnych agentów sztucznej inteligencji. Standardowy format zapewnia, że modele i agenci mogą być używane przez narzędzia podrzędne i przepływy pracy w usłudze Databricks.
- Dokumentacja platformy MLflow — Models.
Usługa Databricks udostępnia funkcje ułatwiające trenowanie różnych rodzajów modeli uczenia maszynowego.
Śledzenie eksperymentów
Usługa Databricks używa eksperymentów MLflow jako jednostek organizacyjnych do monitorowania pracy podczas opracowywania modeli.
Śledzenie eksperymentów umożliwia rejestrowanie parametrów, metryk, artefaktów i wersji kodu oraz zarządzanie nimi podczas trenowania uczenia maszynowego i opracowywania agentów. Organizowanie logów na eksperymenty i przebiegi umożliwia porównywanie modeli, analizowanie wydajności i łatwiejszą iterację.
- Śledzenie eksperymentów za pomocą Databricks.
- Zobacz dokumentację platformy MLflow, aby uzyskać ogólne informacje na temat przebiegów i śledzenia eksperymentów.
Rejestr modeli z katalogiem Unity
Rejestr modeli MLflow to scentralizowane repozytorium modeli, interfejs użytkownika i zestaw interfejsów API do zarządzania procesem wdrażania modelu.
Usługa Databricks integruje rejestr modeli z Unity Catalog, aby zapewnić scentralizowane zarządzanie modelami. Integracja Unity Catalog umożliwia dostęp do modeli między obszarami roboczymi, śledzenie pochodzenia modeli i odkrywanie modeli do ponownego wykorzystania.
- Zarządzanie modelami przy użyciu usługi Databricks Unity Catalog.
- Zobacz dokumentację platformy MLflow, aby uzyskać ogólne informacje na temat rejestru modeli .
Obsługa modelu
Obsługa modeli usługi Databricks jest ściśle zintegrowana z rejestrem modeli MLflow i udostępnia ujednolicony, skalowalny interfejs do wdrażania, zarządzania i wykonywania zapytań dotyczących modeli sztucznej inteligencji. Każdy model, który udostępniasz, jest dostępny jako interfejs API REST, który można zintegrować z aplikacjami webowymi lub klientowymi.
Chociaż są to odrębne składniki, serwowanie modeli w dużym stopniu opiera się na rejestrze modeli MLflow do obsługi wersjonowania modeli, zarządzania zależnościami, walidacji i zarządzania.
Opracowywanie i ewaluacja agenta sztucznej inteligencji
W przypadku opracowywania agentów sztucznej inteligencji usługa Databricks integruje się z rozwiązaniem MLflow podobnie do tworzenia modeli uczenia maszynowego. Istnieje jednak kilka kluczowych różnic:
- Aby utworzyć agentów sztucznej inteligencji w usłudze Databricks, użyj platformy Mosaic AI Agent Framework, która opiera się na platformie MLflow w celu śledzenia kodu agenta, metryk wydajności i śladów agenta.
- Aby ocenić agentów na platformie Databricks, użyj Mosaic AI Agent Evaluation, która opiera się na platformie MLflow do śledzenia wyników oceny.
- Śledzenie MLflow dla agentów obejmuje również MLflow Tracing. Śledzenie MLflow umożliwia wyświetlenie szczegółowych informacji na temat wykonywania usług agenta. Śledzenie rejestruje dane wejściowe, wyjściowe i metadane skojarzone z każdym pośrednim krokiem żądania, co pozwala szybko znaleźć źródło nieoczekiwanego zachowania w agentach.
Na poniższym diagramie pokazano, jak usługa Databricks integruje się z platformą MLflow w celu tworzenia i wdrażania agentów sztucznej inteligencji.
Rozwiązanie MLflow zarządzane przez Databricks jest oparte na Unity Catalog i Cloud Data Lake, aby ujednolicić wszystkie Twoje dane i zasoby sztucznej inteligencji w cyklu życia aplikacji generacyjnej AI.
- Repozytorium wektorów i cech: Automatyczne wyszukiwanie wektorów i cech przez Databricks upraszcza integrację i zmniejsza liczbę błędów.
- Tworzenie i ocenianie agentów sztucznej inteligencji: Framework agentów Mosaic AI oraz ocena agentów pomagają w tworzeniu agentów i ocenie wyników ich działania.
- śledzenie Śledzenie &: śledzenie MLflow przechwytuje szczegółowe informacje o wykonywaniu agenta w celu zapewnienia rozszerzonej możliwości obserwowania sztucznej inteligencji.
- Rejestr modeli : Rejestr modeli MLflow zintegrowany z Unity Catalog centralizuje modele i artefakty sztucznej inteligencji.
- Model Serving: Mosaic AI Model Serving wdraża modele do punktu końcowego interfejsu API REST.
- Monitorowanie: MLflow automatycznie przechwytuje żądania i odpowiedzi na monitorowanie i debugowanie modeli.
Funkcje open source kontra funkcje MLflow zarządzane przez Databricks
Ogólne pojęcia, interfejsy API i funkcje platformy MLflow udostępniane między wersjami typu open source i wersjami zarządzanymi przez usługę Databricks można znaleźć w dokumentacji platformy MLflow. Aby uzyskać informacje o funkcjach przeznaczonych wyłącznie dla platformy MLflow zarządzanej przez usługę Databricks, zobacz dokumentację usługi Databricks.
W poniższej tabeli przedstawiono najważniejsze różnice między rozwiązaniem MLflow typu open source i rozwiązaniem MLflow zarządzanym przez usługę Databricks oraz linki do dokumentacji, które pomogą Ci dowiedzieć się więcej:
Funkcja | Dostępność w usłudze MLflow typu open source | Dostępność MLflow zarządzanego przez Databricks |
---|---|---|
Bezpieczeństwo | Użytkownik musi zapewnić własną warstwę zarządzania zabezpieczeniami | Bezpieczeństwo korporacyjne Databricks klasy enterprise |
Odzyskiwanie po awarii | Niedostępny | odzyskiwanie po awarii w Databricks |
Śledzenie eksperymentów | MLflow API śledzenia | Interfejs API śledzenia MLflow zintegrowany z zaawansowanym systemem śledzenia eksperymentów Databricks |
Rejestr modeli | Rejestr Modeli MLflow | rejestr modeli MLflow zintegrowany z usługą Databricks Unity Catalog |
Integracja z katalogiem Unity | Integracja open-source z Unity Catalog | Katalog Unity Databricks |
Wdrożenie modelu | Integracje skonfigurowane przez użytkownika z rozwiązaniami do obsługi zewnętrznej (SageMaker, Kubernetes, usługi kontenerów itd.) | Obsługa modeli Databricks oraz zewnętrzne rozwiązania serwujące |
Agenci sztucznej inteligencji | Rozwój LLM w MLflow | Programowanie MLflow LLM zintegrowane z programem Mosaic AI Agent Framework i Agent Evaluation |
Szyfrowanie | Niedostępny | Szyfrowanie przy użyciu kluczy zarządzanych przez klienta |