Správa životního cyklu modelu pomocí registru modelů pracovního prostoru

Důležité

Tato dokumentace se zabývá registrem modelů pracovního prostoru. Pokud je pro katalog Unity povolený váš pracovní prostor, nepoužívejte postupy na této stránce. Místo toho se podívejte na modely v katalogu Unity.

Registr modelů pracovního prostoru bude v budoucnu zastaralý. Pokyny k upgradu z registru modelů pracovního prostoru na katalog Unity najdete v tématu Migrace pracovních postupů a modelů do katalogu Unity.

Pokud je výchozí katalog vašeho pracovního prostoru v katalogu Unity (nikolihive_metastore) a spouštíte cluster pomocí databricks Runtime 13.3 LTS nebo vyšší, modely se automaticky vytvoří a načtou z výchozího katalogu pracovního prostoru bez nutnosti konfigurace. Pokud chcete v tomto případě použít registr modelů pracovního prostoru, musíte ho explicitně cílit spuštěním import mlflow; mlflow.set_registry_uri("databricks") na začátku úlohy. Malý počet pracovních prostorů, ve kterých byl výchozí katalog nakonfigurovaný pro katalog v katalogu Unity před lednem 2024 a registr modelu pracovního prostoru byl použit před lednem 2024, jsou z tohoto chování vyloučeny a ve výchozím nastavení nadále používat registr modelů pracovního prostoru.

Tento článek popisuje, jak používat registr modelů pracovního prostoru jako součást pracovního postupu strojového učení ke správě celého životního cyklu modelů ML. Registr modelů pracovního prostoru je poskytovaná hostovaná verze registru modelů MLflow Databricks.

Registr modelů pracovního prostoru poskytuje:

  • Rodokmen Chronologického modelu (který experiment MLflow a spuštění vytvořil model v daném okamžiku).
  • Obsluha modelu
  • Správa verzí modelu
  • Přechody fází (například z přípravného do produkčního nebo archivovaného).
  • Webhooky , takže můžete automaticky aktivovat akce na základě událostí registru.
  • E-mailová oznámení událostí modelu

Můžete také vytvořit a zobrazit popisy modelu a zanechat komentáře.

Tento článek obsahuje pokyny pro uživatelské rozhraní registru modelů pracovního prostoru i rozhraní API registru modelů pracovního prostoru.

Přehled konceptů registru modelů pracovních prostorů najdete v tématu Správa životního cyklu ML pomocí MLflow.

Vytvoření nebo registrace modelu

Model můžete vytvořit nebo zaregistrovat pomocí uživatelského rozhraní nebo zaregistrovat model pomocí rozhraní API.

Vytvoření nebo registrace modelu pomocí uživatelského rozhraní

Existují dva způsoby registrace modelu v registru modelů pracovního prostoru. Můžete zaregistrovat existující model přihlášený do MLflow nebo můžete vytvořit a zaregistrovat nový prázdný model a potom k němu přiřadit dříve protokolovaný model.

Registrace existujícího protokolovaného modelu z poznámkového bloku

  1. V pracovním prostoru najděte spuštění MLflow obsahující model, který chcete zaregistrovat.

    1. Klikněte na ikonu Ikona experimentu Experiment na pravém bočním panelu poznámkového bloku.

      Panel nástrojů poznámkového bloku

    2. Na bočním panelu Spuštění experimentu klikněte na Externí odkaz ikonu vedle data spuštění. Zobrazí se stránka MLflow Run (Spuštění MLflow). Na této stránce se zobrazí podrobnosti o spuštění, včetně parametrů, metrik, značek a seznamu artefaktů.

  2. V části Artifacts (Artefakty) klikněte na adresář s názvem xxx-model.

    Registrace modelu

  3. Úplně vpravo klikněte na tlačítko Register Model (Registrovat model).

  4. V dialogovém okně klikněte do pole Model a udělejte jednu z těchto věcí:

    • V rozevírací nabídce vyberte Vytvořit nový model . Zobrazí se pole Název modelu. Zadejte název modelu, například scikit-learn-power-forecasting.
    • V rozevírací nabídce vyberte existující model.

    Vytvoření nového modelu

  5. Klikněte na Zaregistrovat.

    • Pokud jste vybrali možnost Vytvořit nový model, zaregistruje se model s názvem scikit-learn-power-forecasting, zkopíruje ho do zabezpečeného umístění spravovaného registrem modelů pracovního prostoru a vytvoří novou verzi modelu.
    • Pokud jste vybrali existující model, zaregistruje se nová verze vybraného modelu.

    Po chvíli se tlačítko Zaregistrovat model změní na odkaz na novou zaregistrovanou verzi modelu.

    Výběr nově vytvořeného modelu

  6. Kliknutím na odkaz otevřete novou verzi modelu v uživatelském rozhraní registru modelů pracovního prostoru. Model najdete také v registru modelů pracovního prostoru kliknutím Ikona modelůna Modely na bočním panelu.

Vytvoření nového zaregistrovaného modelu a přiřazení protokolovaného modelu

Pomocí tlačítka Create Model (Vytvořit model) na stránce zaregistrovaných modelů můžete vytvořit nový prázdný model a potom k němu přiřadit protokolovaný model. Postupujte následovně:

  1. Na stránce zaregistrovaných modelů klikněte na Create Model (Vytvořit model). Zadejte název modelu a klikněte na Create (Vytvořit).

  2. Proveďte kroky 1 až 3 uvedené v části Registrace existujícího protokolovaného modelu z poznámkového bloku.

  3. V dialogovém okně Register Model (Registrovat model) vyberte název modelu, který jste vytvořili v kroku 1, a klikněte na Register (Registrovat). Tím se zaregistruje model s názvem, který jste vytvořili, zkopíruje model do zabezpečeného umístění spravovaného registrem modelů pracovního prostoru a vytvoří verzi modelu: Version 1.

    Po chvíli uživatelské rozhraní spuštění MLflow nahradí tlačítko Register Model (Registrovat model) odkazem na nově zaregistrovanou verzi modelu. Teď můžete model vybrat v rozevíracím seznamu Model v dialogovém okně Register Model (Registrovat model) na stránce Experiment Runs (Spuštění experimentu). Můžete také registrovat nové verze modelu tak, že jeho název uvedete v příkazech rozhraní API, jako je třeba příkaz Create ModelVersion.

Registrace modelu pomocí rozhraní API

Existují tři programové způsoby registrace modelu v registru modelů pracovního prostoru. Všechny metody zkopírují model do zabezpečeného umístění spravovaného registrem modelů pracovního prostoru.

  • Pokud chcete protokolovat model a zaregistrovat ho pod zadaným jménem v průběhu experimentu MLflow, použijte metodu mlflow.<model-flavor>.log_model(...). Pokud ještě žádný zaregistrovaný model s daným názvem neexistuje, metoda zaregistruje nový model, vytvoří verzi 1 a vrátí objekt MLflow ModelVersion. Pokud už zaregistrovaný model s daným názvem existuje, metoda vytvoří novou verzi modelu a vrátí objekt verze.

    with mlflow.start_run(run_name=<run-name>) as run:
      ...
      mlflow.<model-flavor>.log_model(<model-flavor>=<model>,
        artifact_path="<model-path>",
        registered_model_name="<model-name>"
      )
    
  • Pokud chcete zaregistrovat model se zadaným názvem poté, co se dokončí všechna spuštění experimentu a vy už víte, který model je nejvhodnější pro přidání do registru, použijte metodu mlflow.register_model(). U této metody potřebujete ID spuštění, které zadáte v argumentu mlruns:URI. Pokud ještě žádný zaregistrovaný model s daným názvem neexistuje, metoda zaregistruje nový model, vytvoří verzi 1 a vrátí objekt MLflow ModelVersion. Pokud už zaregistrovaný model s daným názvem existuje, metoda vytvoří novou verzi modelu a vrátí objekt verze.

    result=mlflow.register_model("runs:<model-path>", "<model-name>")
    
  • Pokud chcete vytvořit nový zaregistrovaný model se zadaným názvem, použijte metodu rozhraní API klienta MLflow create_registered_model(). Pokud název modelu existuje, vydá tato metoda výjimku MLflowException.

    client = MlflowClient()
    result = client.create_registered_model("<model-name>")
    

Model můžete také zaregistrovat u poskytovatele Databricks Terraform a databricks_mlflow_model.

Zobrazení modelů v uživatelském rozhraní

Stránka Registrovaných modelů

Stránka registrovaných modelů se zobrazí po kliknutí na Ikona modelůPoložku Modely na bočním panelu. Tato stránka zobrazuje všechny modely v registru.

Z této stránky můžete vytvořit nový model .

Na této stránce můžou správci pracovního prostoru také nastavit oprávnění pro všechny modely v registru modelů pracovního prostoru.

Registrované modely

Stránka zaregistrovaného modelu

Pokud chcete zobrazit stránku zaregistrovaného modelu pro model, klikněte na název modelu na stránce registrovaných modelů. Stránka zaregistrovaného modelu zobrazuje informace o vybraném modelu a tabulce s informacemi o jednotlivých verzích modelu. Na této stránce můžete také:

Registrovaný model

Stránka verze modelu

Pokud chcete zobrazit stránku verze modelu, udělejte jednu z těchto věcí:

  • Klikněte na název verze ve sloupci Nejnovější verze na stránce registrovaných modelů.
  • Klikněte na název verze ve sloupci Verze na stránce registrovaného modelu.

Tato stránka zobrazuje informace o konkrétní verzi registrovaného modelu a také obsahuje odkaz na zdrojové spuštění (verzi poznámkového bloku, který byl spuštěn pro vytvoření modelu). Na této stránce můžete také:

Verze modelu

Řízení přístupu k modelům

Abyste mohli nakonfigurovat oprávnění pro model, musíte mít aspoň oprávnění CAN MANAGE. Informace oúrovních Verze modelu dědí oprávnění z nadřazeného modelu. Pro verze modelu nelze nastavit oprávnění.

  1. Na bočním panelu klikněte na Ikona modelůModely.

  2. Vyberte název modelu.

  3. Klikněte na Oprávnění. Otevře se dialogové okno Nastavení oprávnění.

    Tlačítko Oprávnění modelu

  4. V dialogovém okně vyberte rozevírací seznam Vybrat uživatele, skupinu nebo instanční objekt... a vyberte uživatele, skupinu nebo instanční objekt.

    Změna oprávnění modelu MLflow

  5. V rozevíracím seznamu oprávnění vyberte oprávnění.

  6. Klikněte na Přidat a klikněte na Uložit.

Správci a uživatelé pracovního prostoru s oprávněním CAN MANAGE na úrovni registru mohou nastavit úrovně oprávnění pro všechny modely v pracovním prostoru kliknutím na Oprávnění na stránce Modely.

Přechod fáze modelu

Verze modelu má jednu z následujících fází: Žádné, Pracovní, Produkční nebo Archivované. Fáze Staging (Pracovní) je určená pro testování a ověřování modelů, fáze Production (Produkční) zase pro verze modelů, které už mají dokončené procesy testování nebo revize a jsou nasazené do aplikací za účelem živého vyhodnocení. Verze modelu ve fázi Archived (Archivní) se považuje za neaktivní, takže můžete zvážit její odstranění. Různé verze jednoho modelu můžou být v různých fázích.

Uživatel s odpovídajícím oprávněním může převést verzi modelu z jedné fáze do druhé. Pokud máte oprávnění k převodu verze modelu do určité fáze, můžete to převést přímo. Pokud takové oprávnění nemáte, můžete požádat o převod fáze a váš požadavek může schválit, zamítnout nebo zrušit uživatel s oprávněním k převodu verzí modelu.

Fázi modelu můžete přecházet pomocí uživatelského rozhraní nebo rozhraní API.

Převod fáze modelu pomocí uživatelského rozhraní

Fázi modelu můžete převést podle těchto pokynů.

  1. Pokud chcete zobrazit seznam dostupných fází modelu a dostupných možností, klikněte na stránce verze modelu na rozevírací seznam vedle fáze a požádejte o přechod do jiné fáze.

    Možnosti převodu fáze

  2. Zadejte volitelný komentář a klikněte na OK.

Převod verze modelu do produkční fáze

Po otestování a ověření můžete provést převod do produkční fáze nebo o něj požádat.

Registr modelů pracovního prostoru umožňuje v každé fázi více než jednu verzi registrovaného modelu. Pokud chcete mít v produkční fázi jenom jednu verzi, můžete zaškrtnutím políčka Transition existing Production model versions to Archived (Převést existující produkční verze modelu na archivní) převést všechny verze modelu, které jsou aktuálně v produkční fázi, do archivní fáze.

Schválení, odmítnutí nebo zrušení žádosti o přechod fáze verze modelu

Uživatel bez oprávnění k převodu fáze může o převod fáze požádat. Žádost se zobrazí na stránce verze modelu v části Pending Requests (Nevyřízené žádosti):

Převod do produkční fáze

Pokud chcete schválit, zamítnout nebo zrušit žádost o převod fáze, klikněte na odkaz Approve (Schválit), Reject (Zamítnout) nebo Cancel (Zrušit).

Žádost o převod může zrušit i tvůrce žádosti.

Zobrazení aktivit verze modelu

Pokud chcete zobrazit všechny požadované, schválené, nevyřízené a realizované převody určité verze modelu, přejděte do části Activities (Aktivity). Tento záznam aktivit poskytuje rodokmen životního cyklu modelu pro účely auditu nebo inspekce.

Přechod fáze modelu pomocí rozhraní API

Uživatelé s odpovídajícím oprávněním můžou převést verzi modelu do nové fáze.

Pokud chcete aktualizovat fázi verze modelu na novou fázi, použijte metodu rozhraní API klienta MLflow transition_model_version_stage():

  client = MlflowClient()
  client.transition_model_version_stage(
    name="<model-name>",
    version=<model-version>,
    stage="<stage>",
    description="<description>"
  )

Přípustné hodnoty <stage> jsou tyto: "Staging"|"staging", "Archived"|"archived", "Production"|"production", "None"|"none".

Použití modelu pro odvozování

Důležité

Tato funkce je ve verzi Public Preview.

Po registraci modelu v registru modelů pracovního prostoru můžete automaticky vygenerovat poznámkový blok, který použije model pro dávkové nebo streamované odvozování. Alternativně můžete vytvořit koncový bod, který použije model pro obsluhu modelu v reálném čase s obsluhou modelu.

V pravém horním rohu registrované stránky modelu nebo na stránce verze modelu klikněte na Use model buttontlačítko . Zobrazí se dialogové okno Konfigurovat odvozování modelu, které umožňuje konfigurovat dávkové, streamované nebo odvozování v reálném čase.

Důležité

Anaconda Inc. aktualizoval své podmínky služby pro kanály anaconda.org. Na základě nových podmínek služby můžete vyžadovat komerční licenci, pokud spoléháte na balení a distribuci Anaconda. Další informace najdete v tématu Anaconda Commercial Edition – nejčastější dotazy . Vaše používání všech kanálů Anaconda se řídí jejich podmínkami služby.

Modely MLflow protokolované před verzí 1.18 (Databricks Runtime 8.3 ML nebo starší) byly ve výchozím nastavení protokolovány pomocí kanálu Conda defaults (https://repo.anaconda.com/pkgs/) jako závislosti. Kvůli této změně licence služba Databricks zastavila používání defaults kanálu pro modely protokolované pomocí MLflow verze 1.18 a vyšší. Výchozí protokolovaný kanál je nyní conda-forge, který odkazuje na komunitu spravovanou https://conda-forge.org/.

Pokud jste model zaprotokolovali před MLflow verze 1.18 bez vyloučení defaults kanálu z prostředí Conda pro model, může mít tento model závislost na defaults kanálu, který jste možná nezamýšleli. Pokud chcete ručně ověřit, jestli má model tuto závislost, můžete prozkoumat channel hodnotu v conda.yaml souboru, který je zabalený s protokolovaným modelem. Model s závislostí defaults kanálu může například conda.yaml vypadat takto:

channels:
- defaults
dependencies:
- python=3.8.8
- pip
- pip:
    - mlflow
    - scikit-learn==0.23.2
    - cloudpickle==1.6.0
      name: mlflow-env

Protože Databricks nedokáže určit, jestli vaše použití úložiště Anaconda k interakci s vašimi modely je povoleno v rámci vašeho vztahu s Anaconda, Databricks nevynucuje svým zákazníkům provádět žádné změny. Pokud je vaše použití Anaconda.com úložiště prostřednictvím použití Databricks povolené podle podmínek Anaconda, nemusíte nic dělat.

Pokud chcete změnit kanál použitý v prostředí modelu, můžete model znovu zaregistrovat do registru modelu pracovního prostoru pomocí nového conda.yaml. Můžete to provést zadáním kanálu v parametru conda_env .log_model()

Další informace o log_model() rozhraní API najdete v dokumentaci MLflow pro variantu modelu, se kterou pracujete, například log_model pro scikit-learn.

Další informace o conda.yaml souborech najdete v dokumentaci K MLflow.

Dialogové okno Konfigurace odvozování modelu

Konfigurace dávkového odvození

Když podle těchto kroků vytvoříte poznámkový blok pro dávkové odvozování, poznámkový blok se uloží do složky uživatele ve složce Batch-Inference ve složce s názvem modelu. Poznámkový blok můžete podle potřeby upravit.

  1. Klikněte na kartu Odvozovat službu Batch.

  2. V rozevíracím seznamu Verze modelu vyberte verzi modelu, která se má použít. První dvě položky v rozevíracím seznamu jsou aktuální produkční a přípravnou verzí modelu (pokud existují). Když vyberete jednu z těchto možností, poznámkový blok po spuštění automaticky použije produkční nebo přípravnou verzi. Při vývoji modelu nemusíte poznámkový blok aktualizovat.

  3. Klikněte na tlačítko Procházet vedle vstupní tabulky. Zobrazí se dialogové okno Vybrat vstupní data . V případě potřeby můžete cluster změnit v rozevíracím seznamu Compute .

    Poznámka:

    Pro pracovní prostory s podporou katalogu Unity vám dialogové okno Vybrat vstupní data umožňuje vybrat ze tří úrovní <catalog-name>.<database-name>.<table-name>.

  4. Vyberte tabulku obsahující vstupní data modelu a klikněte na Vybrat. Vygenerovaný poznámkový blok automaticky naimportuje tato data a odešle je do modelu. Vygenerovaný poznámkový blok můžete upravit, pokud data před vstupem do modelu vyžadují nějaké transformace.

  5. Předpovědi jsou uloženy ve složce v adresáři dbfs:/FileStore/batch-inference. Ve výchozím nastavení se předpovědi ukládají do složky se stejným názvem jako model. Každé spuštění vygenerovaného poznámkového bloku zapíše do tohoto adresáře nový soubor s časovým razítkem připojeným k názvu. Můžete také zvolit, že nezahrnete časové razítko a přepíšete soubor následným spuštěním poznámkového bloku; pokyny jsou k dispozici vygenerovaném poznámkovém bloku.

    Složku, do které se ukládají predikce, můžete změnit zadáním nového názvu složky do pole umístění výstupní tabulky nebo kliknutím na ikonu složky procházet adresář a vybrat jinou složku.

    Pokud chcete uložit předpovědi do umístění v katalogu Unity, musíte poznámkový blok upravit. Příklad poznámkového bloku, který ukazuje, jak trénovat model strojového učení, který používá data v katalogu Unity a zapisovat výsledky zpět do katalogu Unity, najdete v tématu Trénování a registrace modelů strojového učení v Katalogu Unity.

Konfigurace odvození streamování pomocí rozdílových živých tabulek

Když podle těchto kroků vytvoříte poznámkový blok pro odvozování streamování, poznámkový blok se uloží do složky uživatele ve složce DLT-Inference ve složce s názvem modelu. Poznámkový blok můžete podle potřeby upravit.

  1. Klikněte na kartu Streamování (Delta Live Tables).

  2. V rozevíracím seznamu Verze modelu vyberte verzi modelu, která se má použít. První dvě položky v rozevíracím seznamu jsou aktuální produkční a přípravnou verzí modelu (pokud existují). Když vyberete jednu z těchto možností, poznámkový blok po spuštění automaticky použije produkční nebo přípravnou verzi. Při vývoji modelu nemusíte poznámkový blok aktualizovat.

  3. Klikněte na tlačítko Procházet vedle vstupní tabulky. Zobrazí se dialogové okno Vybrat vstupní data . V případě potřeby můžete cluster změnit v rozevíracím seznamu Compute .

    Poznámka:

    Pro pracovní prostory s podporou katalogu Unity vám dialogové okno Vybrat vstupní data umožňuje vybrat ze tří úrovní <catalog-name>.<database-name>.<table-name>.

  4. Vyberte tabulku obsahující vstupní data modelu a klikněte na Vybrat. Vygenerovaný poznámkový blok vytvoří transformaci dat, která používá vstupní tabulku jako zdroj a integruje MLflow PySpark odvozování UDF k provádění předpovědí modelu. Vygenerovaný poznámkový blok můžete upravit, pokud data vyžadují další transformace před nebo po použití modelu.

  5. Zadejte název výstupní dynamické tabulky Delta. Poznámkový blok vytvoří živou tabulku s daným názvem a použije ji k uložení předpovědí modelu. Vygenerovaný poznámkový blok můžete upravit tak, aby podle potřeby přizpůsobil cílovou datovou sadu – například: definujte streamovanou živou tabulku jako výstup, přidejte informace o schématu nebo omezení kvality dat.

  6. Pak můžete buď vytvořit nový kanál Delta Live Tables s tímto poznámkovým blokem, nebo ho přidat do existujícího kanálu jako další knihovnu poznámkových bloků.

Konfigurace odvození v reálném čase

Obsluha modelů zveřejňuje modely strojového učení MLflow jako škálovatelné koncové body rozhraní REST API. Pokud chcete vytvořit koncový bod obsluhy modelu, přečtěte si téma Vytvoření vlastních modelů obsluhujících koncové body.

Poskytnutí názorů

Tato funkce je ve verzi Preview a rádi bychom získali vaši zpětnou vazbu. Pokud chcete poskytnout zpětnou vazbu, klikněte Provide Feedback v dialogovém okně Konfigurovat odvozování modelu.

Porovnání verzí modelu

Verze modelu můžete porovnat v registru modelů pracovního prostoru.

  1. Na stránce zaregistrovaného modelu vyberte dvě nebo více verzí modelu kliknutím do zaškrtávacího políčka nalevo od verze modelu.
  2. Klikněte na Porovnat.
  3. Zobrazí se obrazovka Porovnání <N> verzí zobrazující tabulku, která porovnává parametry, schéma a metriky vybraných verzí modelu. V dolní části obrazovky můžete vybrat typ grafu (bodové, obrysové nebo paralelní souřadnice) a parametry nebo metriky, které se mají vykreslit.

Řízení předvoleb oznámení

Registr modelů pracovního prostoru můžete nakonfigurovat tak, aby vás e-mailem informoval o aktivitě u registrovaných modelů a verzí modelů, které zadáte.

Na stránce zaregistrovaného modelu se v nabídce Oznámit mi zobrazují tři možnosti:

Nabídka e-mailových oznámení

  • Veškerá nová aktivita: Odesílat e-mailová oznámení o všech aktivitách ve všech verzích modelu tohoto modelu. Pokud jste vytvořili registrovaný model, toto nastavení je výchozí.
  • Aktivita ve verzích, které sleduji: Odesílat e-mailová oznámení jenom o verzích modelu, které sledujete. S tímto výběrem obdržíte oznámení pro všechny verze modelu, které sledujete; Oznámení pro konkrétní verzi modelu nelze vypnout.
  • Ztlumit oznámení: Neposílejte e-mailová oznámení o aktivitě u tohoto registrovaného modelu.

Následující události aktivují e-mailové oznámení:

  • Vytvoření nové verze modelu
  • Žádost o přechod fáze
  • Přechod fáze
  • Nové komentáře

Když provedete některou z následujících věcí, automaticky se přihlásíte k odběru oznámení modelu:

  • Komentář k verzi modelu
  • Přechod fáze verze modelu
  • Vytvoření žádosti o přechod pro fázi modelu

Pokud chcete zjistit, jestli sledujete verzi modelu, podívejte se na pole Sledovat stav na stránce verze modelu nebo v tabulce verzí modelu na stránce registrovaného modelu.

Vypnutí všech e-mailových oznámení

E-mailová oznámení můžete vypnout na kartě Registr modelů pracovního prostoru Nastavení v nabídce Nastavení uživatele:

  1. Klikněte na své uživatelské jméno v pravém horním rohu pracovního prostoru Azure Databricks a v rozevírací nabídce vyberte Nastavení Uživatel.
  2. Na bočním panelu Nastavení vyberte Oznámení.
  3. Vypněte e-mailová oznámení registru modelů.

Správce účtu může na stránce nastavení správce vypnout e-mailová oznámení pro celou organizaci.

Maximální počet odeslaných e-mailů

Registr modelů pracovního prostoru omezuje počet e-mailů odesílaných jednotlivým uživatelům za den na aktivitu. Pokud například dostanete 20 e-mailů za jeden den o nových verzích modelů vytvořených pro registrovaný model, odešle registr modelů pracovního prostoru e-mail s oznámením, že bylo dosaženo denního limitu, a do následujícího dne se neodesílají žádné další e-maily o této události.

Pokud chcete zvýšit limit počtu povolených e-mailů, obraťte se na tým účtů Azure Databricks.

Webhooky

Důležité

Tato funkce je ve verzi Public Preview.

Webhooky umožňují naslouchat událostem registru modelů pracovního prostoru, aby integrace mohly automaticky aktivovat akce. Webhooky můžete použít k automatizaci a integraci kanálu strojového učení s existujícími nástroji a pracovními postupy CI/CD. Můžete například aktivovat sestavení CI při vytvoření nové verze modelu nebo upozorňovat členy týmu prostřednictvím Slacku při každém přechodu modelu do produkčního prostředí.

Anotace modelu nebo verze modelu

Můžete přidat anotaci s informacemi o modelu nebo verzi modelu. Můžete v ní uvést třeba přehled problému nebo informace o metodologii a použitém algoritmu.

Anotace modelu nebo verze modelu pomocí uživatelského rozhraní

Uživatelské rozhraní Azure Databricks nabízí několik způsobů přidávání poznámek k modelům a verzím modelů. Textové informace můžete přidat pomocí popisu nebo komentářů a můžete přidat prohledávatelné značky klíč-hodnota. Popisy a značky jsou k dispozici pro modely a verze modelů; komentáře jsou k dispozici pouze pro verze modelu.

  • Popisy jsou určeny k poskytnutí informací o modelu.
  • Komentáře poskytují způsob, jak udržovat průběžnou diskuzi o aktivitách ve verzi modelu.
  • Značky umožňují přizpůsobit metadata modelu, aby bylo snazší najít konkrétní modely.

Přidání nebo aktualizace popisu modelu nebo verze modelu

  1. Na stránce zaregistrovaného modelu nebo verze modelu klikněte na Upravit vedle popisu. Zobrazí se okno pro úpravy.

  2. V okně pro úpravy zadejte nebo upravte popis.

  3. Kliknutím na Uložit uložte provedené změny nebo kliknutím na tlačítko Storno okno zavřete.

    Pokud jste zadali popis verze modelu, zobrazí se tento popis ve sloupci Description (Popis) v tabulce na stránce zaregistrovaného modelu. Ve sloupci se zobrazí maximálně 32 znaků nebo jeden řádek textu, podle toho, co je kratší.

Přidání komentářů pro verzi modelu

  1. Posuňte se dolů na stránku verze modelu a klikněte na šipku dolů vedle položky Aktivity.
  2. Do okna pro úpravy zadejte komentář a klikněte na Přidat komentář.

Přidání značek pro model nebo verzi modelu

  1. Na stránce zaregistrovaného modelu nebo verze modelu klikněte, Ikona značky pokud ještě není otevřený. Zobrazí se tabulka značek.

    tabulka značek

  2. Klikněte do polí Název a Hodnota a zadejte klíč a hodnotu značky.

  3. Klikněte na tlačítko Přidat.

    přidání značky

Úprava nebo odstranění značek pro model nebo verzi modelu

Pokud chcete upravit nebo odstranit existující značku, použijte ikony ve sloupci Akce .

akce značek

Anotace modelu nebo verze modelu pomocí rozhraní API

Pokud chcete aktualizovat popis verze modelu, použijte metodu rozhraní API klienta MLflow update_model_version():

client = MlflowClient()
client.update_model_version(
  name="<model-name>",
  version=<model-version>,
  description="<description>"
)

Pokud chcete nastavit nebo aktualizovat značku pro zaregistrovaný model nebo verzi modelu, použijte rozhraní API set_registered_model_tag()klienta MLflow ) nebo set_model_version_tag() metodu:

client = MlflowClient()
client.set_registered_model_tag()(
  name="<model-name>",
  key="<key-value>",
  tag="<tag-value>"
)
client = MlflowClient()
client.set_model_version_tag()(
  name="<model-name>",
  version=<model-version>,
  key="<key-value>",
  tag="<tag-value>"
)

Přejmenování modelu (jenom v rozhraní API)

K přejmenování zaregistrovaného modelu použijte metodu rozhraní API klienta MLflow rename_registered_model():

client=MlflowClient()
client.rename_registered_model("<model-name>", "<new-model-name>")

Poznámka:

Zaregistrovaný model můžete přejmenovat jenom v případě, že nemá žádné verze nebo že má všechny verze ve fázi None (Žádná) nebo Archived (Archivní).

Vyhledání modelu

Modely můžete vyhledat v registru modelů pracovního prostoru pomocí uživatelského rozhraní nebo rozhraní API.

Poznámka:

Při hledání modelu se vrátí pouze modely, pro které máte alespoň oprávnění CAN READ.

Vyhledání modelu pomocí uživatelského rozhraní

Chcete-li zobrazit registrované modely, klepněte na tlačítko Ikona modelůModely na bočním panelu.

Pokud chcete vyhledat konkrétní model, zadejte do vyhledávacího pole text. Můžete zadat název modelu nebo libovolnou část názvu:

Hledání zaregistrovaných modelů

Můžete také vyhledávat značky. Zadejte značky v tomto formátu: tags.<key>=<value>. Pokud chcete vyhledat více značek, použijte AND operátor.

Vyhledávání na základě značek

Pomocí syntaxe hledání MLflow můžete hledat jak název modelu, tak značky. Příklad:

Hledání založené na názvech a značkách

Vyhledání modelu pomocí rozhraní API

Registrované modely můžete vyhledat v registru modelů pracovního prostoru pomocí metody rozhraní API klienta MLflow search_registered_models().

Pokud jste na svých modelech nastavili značky , můžete je také vyhledat pomocí search_registered_models()těchto značek .

print(f"Find registered models with a specific tag value")
for m in client.search_registered_models(f"tags.`<key-value>`='<tag-value>'"):
  pprint(dict(m), indent=4)

Pomocí metody rozhraní API klienta MLflow search_model_versions() můžete také vyhledat určitý název modelu a zobrazit podrobnosti o jeho verzi:

from pprint import pprint

client=MlflowClient()
[pprint(mv) for mv in client.search_model_versions("name='<model-name>'")]

Výstup bude následující:

{   'creation_timestamp': 1582671933246,
    'current_stage': 'Production',
    'description': 'A random forest model containing 100 decision trees '
                   'trained in scikit-learn',
    'last_updated_timestamp': 1582671960712,
    'name': 'sk-learn-random-forest-reg-model',
    'run_id': 'ae2cc01346de45f79a44a320aab1797b',
    'source': './mlruns/0/ae2cc01346de45f79a44a320aab1797b/artifacts/sklearn-model',
    'status': 'READY',
    'status_message': None,
    'user_id': None,
    'version': 1 }

{   'creation_timestamp': 1582671960628,
    'current_stage': 'None',
    'description': None,
    'last_updated_timestamp': 1582671960628,
    'name': 'sk-learn-random-forest-reg-model',
    'run_id': 'd994f18d09c64c148e62a785052e6723',
    'source': './mlruns/0/d994f18d09c64c148e62a785052e6723/artifacts/sklearn-model',
    'status': 'READY',
    'status_message': None,
    'user_id': None,
    'version': 2 }

Odstranění modelu nebo verze modelu

Model můžete odstranit pomocí uživatelského rozhraní nebo rozhraní API.

Odstranění verze modelu nebo celého modelu pomocí uživatelského rozhraní

Upozorňující

Tuto akci nelze vrátit zpět. Místo odstranění verze modelu z registru můžete verzi modelu převést do fáze Archived (Archivní). Když odstraníte model, odstraní se všechny artefakty modelu uložené registrem modelů pracovního prostoru a všechna metadata přidružená k registrovanému modelu.

Poznámka:

Odstranit můžete jenom modely a verze modelu ve fázi None (Žádná) nebo Archived (Archivní). Pokud má zaregistrovaný model verze ve fázi Staging (Pracovní) nebo Production (Produkční), před odstraněním modelu je potřeba je převést do fáze None (Žádná) nebo Archived (Archivní).

Pokud chcete odstranit verzi modelu, postupujte takto:

  1. Na bočním panelu klikněte na Ikona modelůModely.
  2. Klikněte na název modelu.
  3. Klikněte na verzi modelu.
  4. Klikněte Odstranění verze modelu v pravém horním rohu obrazovky a v rozevírací nabídce vyberte Odstranit .

Pokud chcete odstranit model, postupujte takto:

  1. Na bočním panelu klikněte na Ikona modelůModely.
  2. Klikněte na název modelu.
  3. Klikněte Odstranění modelu v pravém horním rohu obrazovky a v rozevírací nabídce vyberte Odstranit .

Odstranění verze modelu nebo celého modelu pomocí rozhraní API

Upozorňující

Tuto akci nelze vrátit zpět. Místo odstranění verze modelu z registru můžete verzi modelu převést do fáze Archived (Archivní). Když odstraníte model, odstraní se všechny artefakty modelu uložené registrem modelů pracovního prostoru a všechna metadata přidružená k registrovanému modelu.

Poznámka:

Odstranit můžete jenom modely a verze modelu ve fázi None (Žádná) nebo Archived (Archivní). Pokud má zaregistrovaný model verze ve fázi Staging (Pracovní) nebo Production (Produkční), před odstraněním modelu je potřeba je převést do fáze None (Žádná) nebo Archived (Archivní).

Odstranění verze modelu

Pokud chcete odstranit verzi modelu, použijte metodu rozhraní API klienta MLflow delete_model_version():

# Delete versions 1,2, and 3 of the model
client = MlflowClient()
versions=[1, 2, 3]
for version in versions:
  client.delete_model_version(name="<model-name>", version=version)

Odstranit model

Pokud chcete odstranit celý model, použijte metodu rozhraní API klienta MLflow delete_registered_model():

client = MlflowClient()
client.delete_registered_model(name="<model-name>")

Sdílení modelů mezi pracovními prostory

Databricks doporučuje používat modely v katalogu Unity ke sdílení modelů napříč pracovními prostory. Katalog Unity poskytuje připravenou podporu pro přístup k modelu mezi pracovními prostory, zásady správného řízení a protokolování auditu.

Pokud ale používáte registr modelů pracovního prostoru, můžete také sdílet modely napříč několika pracovními prostory s určitým nastavením. Můžete například vyvíjet a protokolovat model ve vlastním pracovním prostoru a pak k němu přistupovat z jiného pracovního prostoru pomocí vzdáleného registru modelu pracovního prostoru. To je užitečné v případě, že přístup k modelům sdílí více týmů. V těchto prostředích můžete vytvořit více pracovních prostorů a používat a spravovat modely.

Kopírování objektů MLflow mezi pracovními prostory

K importu nebo exportu objektů MLflow do nebo z pracovního prostoru Azure Databricks můžete použít opensourcový opensourcový projekt MLflow Export-Import k migraci experimentů, modelů a spuštění MLflow mezi pracovními prostory.

Pomocí těchto nástrojů můžete:

  • Sdílejte a spolupracujte s dalšími datovými vědci na stejném nebo jiném sledovacím serveru. Do pracovního prostoru můžete například naklonovat experiment od jiného uživatele.
  • Zkopírujte model z jednoho pracovního prostoru do druhého, například z vývoje do produkčního pracovního prostoru.
  • Zkopírujte experimenty MLflow a spuštění z místního sledovacího serveru do pracovního prostoru Databricks.
  • Zálohujte klíčové experimenty a modely do jiného pracovního prostoru Databricks.

Příklad

Tento příklad ukazuje, jak pomocí registru modelů pracovního prostoru sestavit aplikaci strojového učení.

Příklad registru modelu pracovního prostoru