Udostępnij za pośrednictwem


MLflow dla agenta generatywnej sztucznej inteligencji i cyklu życia modelu uczenia maszynowego

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 Community 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 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.

MLflow integruje się z usługą Databricks w celu zarządzania cyklem życia 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:

  1. Repozytorium cech: Zautomatyzowane wyszukiwanie cech w Databricks upraszcza integrację i ogranicza błędy.
  2. Trenowanie modeli: Użyj Mosaic AI do trenowania modeli lub dostrajania modeli bazowych.
  3. Tracking: MLflow śledzi trenowanie przez rejestrowanie parametrów, metryk i artefaktów w celu oceny i porównywania wydajności modelu.
  4. Rejestr modeli : Rejestr modeli MLflow zintegrowany z Unity Catalog centralizuje modele i artefakty sztucznej inteligencji.
  5. Model Serving: Mosaic AI Model Serving wdraża modele do punktu końcowego interfejsu API REST.
  6. 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ę.

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.

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.

MLflow integruje się z platformą Databricks w celu zarządzania cyklem życia aplikacji generatywnej AI.

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.

  1. Repozytorium wektorów i cech: Automatyczne wyszukiwanie wektorów i cech przez Databricks upraszcza integrację i zmniejsza liczbę błędów.
  2. 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.
  3. śledzenie Śledzenie &: śledzenie MLflow przechwytuje szczegółowe informacje o wykonywaniu agenta w celu zapewnienia rozszerzonej możliwości obserwowania sztucznej inteligencji.
  4. Rejestr modeli : Rejestr modeli MLflow zintegrowany z Unity Catalog centralizuje modele i artefakty sztucznej inteligencji.
  5. Model Serving: Mosaic AI Model Serving wdraża modele do punktu końcowego interfejsu API REST.
  6. 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