Sdílet prostřednictvím


Spouštění modelů Azure Machine Learning z Prostředků infrastruktury pomocí dávkových koncových bodů (Preview)

PLATÍ PRO:Rozšíření Azure CLI ml v2 (aktuální)Python SDK azure-ai-ml v2 (aktuální)

V tomto článku se dozvíte, jak využívat dávkové nasazení služby Azure Machine Learning z Microsoft Fabric. I když pracovní postup používá modely, které jsou nasazené do dávkových koncových bodů, podporuje také použití nasazení dávkových kanálů z Prostředků infrastruktury.

Důležité

Tato funkce je v současné době ve verzi Public Preview. Tato verze Preview je poskytována bez smlouvy o úrovni služeb a nedoporučujeme ji pro produkční úlohy. Některé funkce se nemusí podporovat nebo mohou mít omezené možnosti.

Další informace najdete v dodatečných podmínkách použití pro verze Preview v Microsoft Azure.

Požadavky

Architektura

Azure Machine Learning nemá přímý přístup k datům uloženým v OneLake fabric. Pomocí funkce OneLake ale můžete v rámci Lakehouse vytvářet zástupce ke čtení a zápisu dat uložených v Azure Data Lake Gen2. Vzhledem k tomu, že Azure Machine Learning podporuje azure Data Lake Storage Gen2, umožňuje toto nastavení společně používat prostředky infrastruktury a Azure Machine Learning. Architektura dat je následující:

Diagram znázorňující, jak se účty Azure Storage používají k propojení prostředků infrastruktury se službou Azure Machine Learning

Konfigurace přístupu k datům

Pokud chcete službě Fabric a Azure Machine Learning umožnit čtení a zápis stejných dat bez nutnosti jejich kopírování, můžete využít klávesové zkratky OneLake a úložiště dat Služby Azure Machine Learning. Když nasměrujete zástupce OneLake a úložiště dat na stejný účet úložiště, můžete zajistit, aby prostředky Infrastruktury i Azure Machine Learning četly ze stejných podkladových dat a zapisovat do nich.

V této části vytvoříte nebo identifikujete účet úložiště, který se použije k ukládání informací, které bude koncový bod dávky využívat, a že uživatelé prostředků infrastruktury uvidí ve OneLake. Prostředky infrastruktury podporují pouze účty úložiště s povolenými hierarchickými názvy, jako je Azure Data Lake Gen2.

Vytvoření zástupce OneLake pro účet úložiště

  1. Otevřete prostředí pro Datoví technici Synapse v prostředcích infrastruktury.

  2. Na levém panelu vyberte pracovní prostor Fabric a otevřete ho.

  3. Otevřete lakehouse, který použijete ke konfiguraci připojení. Pokud ještě nemáte jezerní dům, přejděte do Datoví technici prostředí pro vytvoření jezera. V tomto příkladu použijete lakehouse s názvem důvěryhodné.

  4. Na navigačním panelu na levé straně otevřete další možnosti pro soubory a pak vyberte Nový zástupce , aby se průvodce otevřel.

    Snímek obrazovky znázorňující, jak vytvořit nového zástupce v jezeře

  5. Vyberte možnost Azure Data Lake Storage Gen2.

    Snímek obrazovky znázorňující, jak vytvořit zástupce Azure Data Lake Storage Gen2

  6. V části Nastavení připojení vložte adresu URL přidruženou k účtu úložiště Azure Data Lake Gen2.

    Snímek obrazovky znázorňující, jak nakonfigurovat adresu URL zástupce

  7. V části Přihlašovací údaje připojení:

    1. V části Připojení vyberte Vytvořit nové připojení.
    2. Jako název připojení ponechte výchozí vyplněnou hodnotu.
    3. Jako druh ověřování vyberte účet organizace a použijte přihlašovací údaje připojeného uživatele prostřednictvím OAuth 2.0.
    4. Pokud se chcete přihlásit, vyberte Přihlásit se.
  8. Vyberte Další.

  9. V případě potřeby nakonfigurujte cestu ke zkratce vzhledem k účtu úložiště. Toto nastavení použijte ke konfiguraci složky, na kterou bude zástupce odkazovat.

  10. Nakonfigurujte název zástupce. Tento název bude cesta uvnitř jezera. V tomto příkladu pojmenujte datové sady zástupců.

  11. Uložte změny.

Vytvoření úložiště dat, které odkazuje na účet úložiště

  1. Otevřete studio Azure Machine Learning.

  2. Přejděte do pracovního prostoru Azure Machine Learning.

  3. Přejděte do části Data .

  4. Vyberte kartu Úložiště dat.

  5. Vyberte Vytvořit.

  6. Úložiště dat nakonfigurujte následujícím způsobem:

    1. Jako název úložiště dat zadejte trusted_blob.

    2. Jako typ úložiště dat vyberte Azure Blob Storage.

      Tip

      Proč byste měli místo Azure Data Lake Gen2 nakonfigurovat Azure Blob Storage? Koncové body služby Batch můžou zapisovat pouze předpovědi do účtů Blob Storage. Každý účet úložiště Azure Data Lake Gen2 je však také účtem úložiště objektů blob; lze je proto použít zaměnitelně.

    3. V průvodci vyberte účet úložiště pomocí ID předplatného, účtu úložiště a kontejneru objektů blob (systém souborů).

      Snímek obrazovky znázorňující, jak nakonfigurovat úložiště dat služby Azure Machine Learning

    4. Vyberte Vytvořit.

  7. Ujistěte se, že výpočetní prostředky, na kterých je spuštěný koncový bod dávky, má oprávnění připojit data v tomto účtu úložiště. Přestože je přístup stále udělen identitou, která volá koncový bod, výpočetní prostředky, ve kterých se spouští dávkové koncové body, musí mít oprávnění k připojení účtu úložiště, který zadáte. Další informace najdete v tématu Přístup ke službám úložiště.

Nahrání ukázkové datové sady

Nahrajte ukázková data pro koncový bod, která se mají použít jako vstup:

  1. Přejděte do pracovního prostoru Prostředky infrastruktury.

  2. Vyberte objekt lakehouse, ve kterém jste vytvořili zástupce.

  3. Přejděte na zástupce datových sad.

  4. Vytvořte složku pro uložení ukázkové datové sady, kterou chcete určit skóre. Pojmenujte složku uci-heart-unlabeled.

  5. Pomocí možnosti Získat data a výběrem možnosti Nahrát soubory nahrajte ukázkovou datovou sadu heart-unlabeled.csv.

    Snímek obrazovky znázorňující, jak nahrát data do existující složky ve OneLake

  6. Nahrajte ukázkovou datovou sadu.

    Snímek obrazovky znázorňující, jak nahrát soubor do OneLake

  7. Ukázkový soubor je připravený k použití. Poznamenejte si cestu k umístění, kam jste ho uložili.

Vytvoření kanálu pro odvozování dávek z prostředků infrastruktury

V této části vytvoříte kanál odvozování fabric-to-batch ve stávajícím pracovním prostoru Fabric a vyvoláte koncové body dávky.

  1. Vraťte se do Datoví technici prostředí (pokud jste už od něj přešli) pomocí ikony selektoru prostředí v levém dolním rohu domovské stránky.

  2. Otevřete pracovní prostor Fabric.

  3. V části Nový na domovské stránce vyberte Datový kanál.

  4. Pojmenujte kanál a vyberte Vytvořit.

    Snímek obrazovky znázorňující, kde vybrat možnost datového kanálu

  5. Na plátně návrháře vyberte kartu Aktivity na panelu nástrojů.

  6. Na konci karty vyberte další možnosti a vyberte Azure Machine Learning.

    Snímek obrazovky znázorňující, jak přidat aktivitu služby Azure Machine Learning do kanálu

  7. Přejděte na kartu Nastavení a nakonfigurujte aktivitu následujícím způsobem:

    1. Výběrem možnosti Nový vedle připojení Azure Machine Learning vytvořte nové připojení k pracovnímu prostoru Azure Machine Learning, který obsahuje vaše nasazení.

      Snímek obrazovky s částí konfigurace aktivity znázorňující, jak vytvořit nové připojení

    2. V části Nastavení připojení průvodce vytvořením zadejte hodnoty ID předplatného, název skupiny prostředků a název pracovního prostoru, kde je váš koncový bod nasazený.

      Snímek obrazovky znázorňující příklady hodnot PRO ID předplatného, název skupiny prostředků a název pracovního prostoru

    3. V části Přihlašovací údaje pro připojení vyberte účet organizace jako hodnotu pro typ ověřování pro vaše připojení. Účet organizace používá přihlašovací údaje připojeného uživatele. Případně můžete použít instanční objekt. V produkčním nastavení doporučujeme použít instanční objekt. Bez ohledu na typ ověřování se ujistěte, že identita přidružená k připojení má práva k volání dávkového koncového bodu, který jste nasadili.

      Snímek obrazovky znázorňující, jak nakonfigurovat mechanismus ověřování v připojení

    4. Uložte připojení. Po výběru připojení služba Fabric automaticky naplní dostupné koncové body dávky ve vybraném pracovním prostoru.

  8. V části Koncový bod služby Batch vyberte dávkový koncový bod, který chcete volat. V tomto příkladu vyberte klasifikátor heart-....

    Snímek obrazovky znázorňující, jak po nakonfigurování připojení vybrat koncový bod

    Oddíl nasazení služby Batch automaticky naplní dostupná nasazení v rámci koncového bodu.

  9. V případě nasazení služby Batch vyberte v seznamu konkrétní nasazení, pokud je to potřeba. Pokud nevyberete nasazení, fabric vyvolá výchozí nasazení v rámci koncového bodu a umožní tvůrci dávkového koncového bodu rozhodnout, které nasazení se volá. Ve většině scénářů byste chtěli zachovat toto výchozí chování.

    Snímek obrazovky znázorňující, jak nakonfigurovat koncový bod tak, aby používal výchozí nasazení

Konfigurace vstupů a výstupů pro koncový bod dávky

V této části nakonfigurujete vstupy a výstupy z dávkového koncového bodu. Vstupy do dávkových koncových bodů poskytují data a parametry potřebné ke spuštění procesu. Kanál batch služby Azure Machine Learning v prostředcích infrastruktury podporuje nasazení modelů i nasazení kanálů. Zadaný počet a typ vstupů závisí na typu nasazení. V tomto příkladu použijete nasazení modelu, které vyžaduje přesně jeden vstup a vytvoří jeden výstup.

Další informace o vstupech avýstupch

Konfigurace vstupního oddílu

Oddíl Vstupy úlohy nakonfigurujte následujícím způsobem:

  1. Rozbalte část Vstupy úlohy.

  2. Výběrem možnosti Nový přidáte nový vstup do koncového bodu.

  3. Pojmenujte vstup input_data. Vzhledem k tomu, že používáte nasazení modelu, můžete použít libovolný název. V případě nasazení kanálu ale musíte určit přesný název vstupu, který model očekává.

  4. Výběrem rozevírací nabídky vedle vstupu, který jste právě přidali, otevřete vlastnost vstupu (pole název a hodnota).

  5. Do pole Název zadejte JobInputType typ vstupu, který vytváříte.

  6. Do pole Hodnota zadejteUriFolder, že vstup je cesta ke složce. Další podporované hodnoty pro toto pole jsou UriFile (cesta k souboru) nebo literál (jakákoli hodnota literálu , jako je řetězec nebo celé číslo). Musíte použít správný typ, který vaše nasazení očekává.

  7. Vyberte znaménko plus vedle vlastnosti a přidejte další vlastnost pro tento vstup.

  8. Do pole Název zadejte Uri cestu k datům.

  9. Zadejte azureml://datastores/trusted_blob/datasets/uci-heart-unlabeledcestu k vyhledání dat v poli Hodnota . Tady použijete cestu, která vede k účtu úložiště, který je propojený s OneLake v Prostředcích infrastruktury i se službou Azure Machine Learning. azureml://datastores/trusted_blob/datasets/uci-heart-unlabeled je cesta k souborům CSV s očekávanými vstupními daty modelu nasazeného do dávkového koncového bodu. Můžete také použít přímou cestu k účtu úložiště, například https://<storage-account>.dfs.azure.com.

    Snímek obrazovky znázorňující, jak nakonfigurovat vstupy v koncovém bodu

    Tip

    Pokud je vstup typu Literál, nahraďte vlastnost Uri hodnotou Value.

Pokud váš koncový bod vyžaduje více vstupů, opakujte předchozí kroky pro každý z nich. V tomto příkladu nasazení modelu vyžadují přesně jeden vstup.

Konfigurace výstupního oddílu

Následujícím způsobem nakonfigurujte oddíl Výstupy úlohy:

  1. Rozbalte oddíl Výstupy úlohy.

  2. Výběrem možnosti Nový přidáte do koncového bodu nový výstup.

  3. Pojmenujte výstup jako output_data. Vzhledem k tomu, že používáte nasazení modelu, můžete použít libovolný název. U nasazení kanálů ale musíte určit přesný název výstupu, který model generuje.

  4. Výběrem rozevírací nabídky vedle výstupu, který jste právě přidali, otevřete vlastnost výstupu (pole název a hodnota).

  5. Do pole Název zadejte JobOutputType typ výstupu, který vytváříte.

  6. Do pole Hodnota zadejteUriFile, že výstup je cesta k souboru. Další podporovaná hodnota tohoto pole je UriFolder (cesta ke složce). Na rozdíl od vstupního oddílu úlohy není literál (jakákoli hodnota literálu, jako je řetězec nebo celé číslo), podporován jako výstup.

  7. Vyberte znaménko plus vedle vlastnosti a přidejte další vlastnost pro tento výstup.

  8. Do pole Název zadejte Uri cestu k datům.

  9. Zadejte @concat(@concat('azureml://datastores/trusted_blob/paths/endpoints', pipeline().RunId, 'predictions.csv')cestu k umístění výstupu do pole Hodnota . Koncové body služby Azure Machine Learning batch podporují jako výstupy pouze použití cest k úložišti dat. Vzhledem k tomu, @concat(@concat('azureml://datastores/trusted_blob/paths/endpoints', pipeline().RunId, 'predictions.csv')že výstupy musí být jedinečné, aby nedocházelo ke konfliktům, použili jste k vytvoření cesty dynamický výraz.

    Snímek obrazovky znázorňující, jak nakonfigurovat výstupy v koncovém bodu

Pokud váš koncový bod vrátí více výstupů, opakujte předchozí kroky pro každý z nich. V tomto příkladu nasazení modelu vytvoří přesně jeden výstup.

(Volitelné) Konfigurace nastavení úlohy

Nastavení úlohy můžete také nakonfigurovat přidáním následujících vlastností:

Pro nasazení modelu:

Nastavení Popis
MiniBatchSize Velikost dávky.
ComputeInstanceCount Počet výpočetníchinstancích

Pro nasazení kanálů:

Nastavení Popis
ContinueOnStepFailure Označuje, jestli má kanál zastavit zpracování uzlů po selhání.
DefaultDatastore Označuje výchozí úložiště dat, které se má použít pro výstupy.
ForceRun Označuje, jestli má kanál vynutit spuštění všech komponent, i když je možné výstup odvodit z předchozího spuštění.

Po nakonfigurování můžete kanál otestovat.