Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
K vytvoření Databricks MLOps Stack můžete použít deklarativní balíčky automatizace, rozhraní příkazového řádku Databricks a úložiště Databricks MLOps Stack na GitHubu. MlOps Stack je projekt MLOps v Azure Databricks, který se řídí osvědčenými postupy v produkčním prostředí. Viz Co jsou balíčky deklarativní automatizace?
Tady se dozvíte, jak vytvořit, nasadit a spustit projekt sady stacků MLOps.
Požadavky
- Ujistěte se, že cílový vzdálený pracovní prostor má povolené soubory pracovního prostoru. Podívejte se na co jsou soubory pracovního prostoru?
- Na vývojovém počítači se ujistěte, že je nainstalované rozhraní příkazového řádku Databricks verze 0.212.2 nebo vyšší. Pokud chcete zkontrolovat nainstalovanou verzi Rozhraní příkazového řádku Databricks, spusťte příkaz
databricks -v. Pokud chcete aktualizovat verzi rozhraní příkazového řádku Databricks, přečtěte si téma Instalace nebo aktualizace rozhraní příkazového řádku Databricks. (Sady prostředků nefungují s rozhraním příkazového řádku Databricks verze 0.18 a novější.)
Krok 1: Nastavení ověřování
Nakonfigurujte rozhraní příkazového řádku Databricks pro ověřování.
Tento článek předpokládá, že chcete použít ověřování OAuth uživatele na stroj (U2M) a odpovídající konfigurační profil Azure Databricks s názvem DEFAULT pro ověřování.
Poznámka:
Ověřování U2M je vhodné pro vyzkoušení těchto kroků v reálném čase. Pro plně automatizované pracovní postupy Databricks doporučuje místo toho použít ověřování OAuth typu stroj-stroj (M2M). Přečtěte si pokyny k nastavení ověřování M2M v tématu Autorizace přístupu instančního objektu k Azure Databricks pomocí OAuth.
Pomocí rozhraní příkazového řádku Databricks zahajte správu tokenů OAuth místně spuštěním následujícího příkazu pro každý cílový pracovní prostor.
V následujícím příkazu nahraďte
<workspace-url>adresou URL služby Azure Databricks pro jednotlivé pracovní prostory, napříkladhttps://adb-1234567890123456.7.azuredatabricks.net.databricks auth login --host <workspace-url>Rozhraní příkazového řádku Databricks vás vyzve k uložení informací, které jste zadali jako konfigurační profil Azure Databricks. Stisknutím klávesy
Enterpotvrďte navrhovaný název profilu nebo zadejte název nového nebo existujícího profilu. Všechny existující profily se stejným názvem se přepíšou informacemi, které jste zadali. Profily můžete použít k rychlému přepnutí kontextu ověřování napříč několika pracovními prostory.Seznam existujících profilů získáte tak, že v samostatném terminálu nebo příkazovém řádku použijete rozhraní příkazového řádku Databricks ke spuštění příkazu
databricks auth profiles. Pokud chcete zobrazit existující nastavení konkrétního profilu, spusťte příkazdatabricks auth env --profile <profile-name>.Ve webovém prohlížeči dokončete pokyny na obrazovce, abyste se přihlásili k pracovnímu prostoru Azure Databricks.
Pokud chcete zobrazit aktuální hodnotu tokenu OAuth profilu a nadcházející časové razítko vypršení platnosti tokenu, spusťte jeden z následujících příkazů:
databricks auth token --host <workspace-url>databricks auth token -p <profile-name>databricks auth token --host <workspace-url> -p <profile-name>
Pokud máte více profilů se stejnou
--hosthodnotou, možná budete muset zadat možnosti--hosta-pspolečně, abyste pomohli rozhraní příkazového řádku služby Databricks najít správné informace o odpovídajícím tokenu OAuth.
Krok 2: Vytvoření projektu sady
K vytvoření počátečních souborů projektu MLOps Stacks použijte šablony balíčků . Začněte spuštěním následujícího příkazu:
databricks bundle init mlops-stacksOdpovězte na výzvy na obrazovce. Pokyny k zodpovězení těchto výzev najdete v tématu Zahájení nového projektu v úložišti Databricks MLOps Stacks na GitHubu.
První výzva nabízí možnost nastavení komponent kódu ML, komponent CI/CD nebo obojího. Tato možnost zjednodušuje počáteční nastavení, protože se můžete rozhodnout vytvořit pouze ty komponenty, které jsou okamžitě relevantní. (Pokud chcete nastavit ostatní komponenty, spusťte znovu inicializační příkaz.) Vyberte jednu z následujících možností:
-
CICD_and_Project(výchozí) – Nastavte kód ML i komponenty CI/CD. -
Project_Only– Nastavte pouze komponenty kódu ML. Tato možnost je určená pro datové vědce, aby mohli začít. -
CICD_Only– Nastavte pouze komponenty CI/CD. Tato možnost je určená pro techniky STROJOVÉho učení k nastavení infrastruktury.
Jakmile odpovíte na všechny výzvy na obrazovce, šablona vytvoří počáteční soubory projektu MLOps Stacks a přidá je do aktuálního pracovního adresáře.
-
Podle potřeby přizpůsobte počáteční soubory projektu MLOps Stacks. Postupujte podle pokynů v následujících souborech v rámci nového projektu:
Role Cíl Dokumenty Uživatelé tohoto úložiště poprvé Pochopte pipeline ML a strukturu kódu v tomto úložišti. README.mdDatoví vědci Začínáme psát kód ML pro úplně nový projekt <project-name>/README.mdDatoví vědci Aktualizace produkčního kódu ML (například logiky trénování modelu) pro existující projekt docs/ml-pull-request.mdDatoví vědci Úprava prostředků ML produkčního modelu (například trénování modelu nebo úlohy odvozování) <project-name>/resources/README.mdMLOps / DevOps Nastavení CI/CD pro aktuální projekt ML docs/mlops-setup.mdPro přizpůsobení experimentů mapování v deklaraci experimentu souhlasí s datovou částí žádosti operace pro vytvoření experimentu, jak je definována v POST /api/2.0/mlflow/experiments/create v referenci na REST API, vyjádřenou ve formátu YAML.
Pro přizpůsobení úloh odpovídá mapování v deklaraci úlohy datové části požadavku operace vytvoření úlohy, vedené v POST /api/2.1/jobs/create v dokumentaci REST API, vyjádřené ve formátu YAML.
Návod
Nastavení nových clusterů úloh v balíčcích můžete definovat; kombinovat a přepsat pomocí technik popsaných v části Přepsání pomocí cílových nastavení.
Pro přizpůsobení modelů mapování v deklaraci modelu odpovídají datové části požadavku vytvoření operace modelu Unity Catalog definované v POST /api/2.1/unity-catalog/models v odkazu na rozhraní REST API vyjádřené ve formátu YAML.
Pro přizpůsobení kanálů mapování v deklaraci kanálu odpovídají payloadu požadavku operace pro vytvoření kanálu, jak je definováno v POST /api/2.0/pipelines v referenci REST API a je vyjádřeno ve formátu YAML.
Krok 3: Ověření projektu sady
Zkontrolujte, jestli je konfigurace sady platná. Provedete to spuštěním rozhraní příkazového řádku Databricks z kořenového adresáře projektu, kde se databricks.yml nachází, následujícím způsobem:
databricks bundle validate
Pokud se vrátí souhrn konfigurace sady, ověření proběhlo úspěšně. Pokud se vrátí nějaké chyby, opravte chyby a opakujte tento krok.
Krok 4: Nasazení sady
Nasaďte prostředky a artefakty projektu do požadovaného vzdáleného pracovního prostoru. Provedete to spuštěním rozhraní příkazového řádku Databricks z kořenového adresáře projektu, kde se databricks.yml nachází, následujícím způsobem:
databricks bundle deploy -t <target-name>
Nahraďte <target-name> názvem požadovaného cíle v databricks.yml souboru, například dev, test, stagingnebo prod.
Krok 5: Spuštění nasazené sady
Nasazené úlohy projektu se automaticky spouštějí podle předdefinovaných plánů. Pokud chcete nasazenou úlohu spustit okamžitě, spusťte rozhraní příkazového řádku Databricks z kořenového adresáře projektu, kde se databricks.yml nachází, následujícím způsobem:
databricks bundle run -t <target-name> <job-name>
- Nahraďte
<target-name>názvem požadovaného cíle v souborudatabricks.yml, do kterého byla úloha nasazena, napříkladdev,test,stagingneboprod. - Nahraďte
<job-name>názvem úlohy v některém ze.ymlsouborů v souboru<project-name>/databricks-resources, napříkladbatch_inference_job,write_feature_table_jobnebomodel_training_job.
Zobrazí se odkaz na úlohu Azure Databricks, kterou můžete zkopírovat do webového prohlížeče a otevřít ji v uživatelském rozhraní Azure Databricks.
Krok 6: Odstranění nasazené sady (volitelné)
Pokud je už nepotřebujete, odstraňte prostředky a artefakty nasazeného projektu, spusťte rozhraní příkazového řádku Databricks z kořenového adresáře projektu, kde databricks.yml se nachází, následujícím způsobem:
databricks bundle destroy -t <target-name>
Nahraďte <target-name> názvem požadovaného cíle v databricks.yml souboru, například dev, test, stagingnebo prod.
Odpovězte na výzvy na obrazovce, abyste potvrdili odstranění dříve nasazených prostředků a artefaktů.