Udostępnij przez


Agenci śledzenia wdrożeni w usłudze Databricks

Na tej stronie pokazano, jak wdrożyć instrumentowane aplikacje GenAI w usłudze Databricks, aby ślady produkcji zostały przechwycone automatycznie.

Ślady są rejestrowane w eksperymencie MLflow na potrzeby wyświetlania w czasie rzeczywistym. Opcjonalnie przechowuj je przy użyciu tabel delty na potrzeby długoterminowego przechowywania. Zobacz Wdrażanie śledzonej aplikacji, aby porównać opcje wdrażania i rejestrowania śledzenia.

W przypadku aplikacji wdrożonych poza usługą Databricks zobacz Śledzenie agentów wdrożonych poza usługą Databricks.

Przegląd śledzenia produkcji w MLflow

Podczas wdrażania aplikacji GenAI za pomocą Mosaic AI Agent Framework, MLflow Tracing działa automatycznie bez dodatkowej konfiguracji. Ślady są przechowywane w eksperymencie MLflow agenta.

Kroki wdrażania

Najpierw skonfiguruj lokalizacje przechowywania dla śladów:

  1. Jeśli planujesz używać monitorowania produkcyjnego do przechowywania śladów w tabelach delty, upewnij się, że jest on włączony dla obszaru roboczego.
  2. Utwórz eksperyment MLflow na potrzeby przechowywania śladów produkcyjnych aplikacji.

Następnie w notesie języka Python instrumentacja agenta za pomocą śledzenia platformy MLflow i wdrażanie agenta za pomocą platformy Agent Framework:

  1. Zainstaluj w mlflow[databricks] środowisku języka Python. Użyj najnowszej wersji.
  2. Połącz się z eksperymentem MLflow przy użyciu polecenia mlflow.set_experiment(...).
  3. Opakuj kod agenta przy użyciu interfejsów tworzenia programu Agent Framework. W kodzie agenta włącz śledzenie MLflow przy użyciu instrumentacji automatycznej lub ręcznej .
  4. Zarejestruj agenta jako model MLflow i zarejestruj go w katalogu aparatu Unity.
  5. Upewnij się, że mlflow znajduje się w zależnościach języka Python modelu z tą samą wersją pakietu używaną w środowisku notesu.
  6. Służy agents.deploy(...) do wdrażania modelu wykazu aparatu Unity (agenta) w punkcie końcowym obsługującym model.

Uwaga / Notatka

Jeśli wdrażasz agenta z notatnika przechowywanego w folderze Git usługi Databricks, śledzenie w czasie rzeczywistym w MLflow 3 nie działa domyślnie.

Aby włączyć śledzenie w czasie rzeczywistym, ustaw eksperyment jako niezwiązany z usługą Git, używając mlflow.set_experiment(), przed uruchomieniem agents.deploy().

Ślady agenta są teraz wyświetlane w eksperymencie MLflow w czasie rzeczywistym.

Przykładowy notatnik

W tym notesie przedstawiono powyższe kroki wdrażania.

Notes śledzenia platformy agenta i biblioteki MLflow

Pobierz laptopa

Wdrażanie przy użyciu niestandardowej obsługi procesora CPU (alternatywa)

Jeśli nie możesz użyć Agent Framework, wdróż swojego agenta przy użyciu niestandardowego serwowania modelu procesora CPU.

Najpierw skonfiguruj lokalizacje przechowywania dla śladów:

  1. Jeśli planujesz używać monitorowania produkcyjnego do przechowywania śladów w tabelach delty, upewnij się, że jest on włączony dla obszaru roboczego.
  2. Utwórz eksperyment MLflow na potrzeby przechowywania śladów produkcyjnych aplikacji.

Następnie w notesie języka Python instrumentacja agenta za pomocą śledzenia platformy MLflow i wdrażanie agenta za pomocą interfejsu użytkownika lub interfejsów API obsługującego model:

  1. Zarejestruj agenta jako model MLflow przy użyciu automatycznej lub ręcznej instrumentacji śledzenia.
  2. Wdróż model do obsługi procesora CPU.
  3. Aprowizuj jednostkę usługi lub osobisty token dostępu (PAT) z dostępem CAN_EDIT do eksperymentu MLflow.
  4. Na stronie Punktu końcowego obsługującego procesor CPU przejdź do pozycji "Edytuj punkt końcowy". Dla każdego wdrożonego modelu do śledzenia dodaj następujące zmienne środowiskowe:
  5. ENABLE_MLFLOW_TRACING=true
  6. MLFLOW_EXPERIMENT_ID=<ID of the experiment you created>
  7. Jeśli aprowizowana została jednostka usługi, ustaw wartości DATABRICKS_CLIENT_ID i DATABRICKS_CLIENT_SECRET. Jeśli aprowizowana została aprowizowana funkcja PAT, ustaw DATABRICKS_HOST i DATABRICKS_TOKEN.

Wyświetlanie śladów produkcji

Wyświetl ślady produkcyjne w interfejsie użytkownika eksperymentów MLflow. Ślady produkcji pokazują:

  • Zapytania użytkownika i odpowiedzi agenta
  • Opinie (kciuki w górę/w dół, komentarze)
  • Współczynniki błędów i wzorce błędów
  • Metryki opóźnienia i wydajności
  • Użycie tokenu

UI Ślady Produkcji

Śledzenie dzienników w tabelach delty

Opcjonalnie śledź logi w tabelach Delta oprócz eksperymentu MLflow.

  • Tabele monitorowania produkcji (zalecane): zadanie synchronizowania śladów z tabelą delty jest uruchamiane co ok. 15 minut. Nie trzeba włączać żadnych metryk monitorowania, aby te metryki działały. Ślady nie mają limitów rozmiaru.
  • Tabele wnioskowania z obsługą bramy sztucznej inteligencji: włącz, edytując ustawienia bramy sztucznej inteligencji na stronie Punkt końcowy obsługujący model. Należy pamiętać o ograniczeniach dotyczących rozmiarów śledzenia i opóźnień synchronizacji śladów z tabelami.

Ograniczenia

Rejestrowanie śladów eksperymentów MLflow i tabel monitorowania w środowisku produkcyjnym wiąże się z limitami liczby śladów i szczytowego obciążenia. Jeśli musisz przechowywać więcej niż 100 000 śladów na eksperyment lub mieć szczytowe obciążenie > 60 zapytań na sekundę (QPS), użyj tego formularza , aby zażądać zwiększenia.

Dalsze kroki