Share via


Azure Machine Tanulás-munkaterületek kezelése a Python SDK-val (v1)

ÉRVÉNYES:Python SDK azureml v1

Ebben a cikkben Azure Machine Tanulás-munkaterületeket hozhat létre, tekinthet meg és törölhet az Azure Machine Tanulás számára a Pythonhoz készült SDK használatával.

Az igények változásával vagy az automatizálási követelmények növekedésével a munkaterületeket a parancssori felület vagy a VS Code bővítmény használatával is kezelheti.

Előfeltételek

Korlátozások

  • Új munkaterület létrehozásakor automatikusan létrehozhatja a munkaterülethez szükséges szolgáltatásokat, vagy használhatja a meglévő szolgáltatásokat. Ha a munkaterülettől eltérő Azure-előfizetésből származó meglévő szolgáltatásokat szeretne használni, regisztrálnia kell az Azure Machine Tanulás névterét a szolgáltatásokat tartalmazó előfizetésben. Ha például létrehoz egy munkaterületet az A előfizetésben, amely a B előfizetésből származó tárfiókot használ, az Azure Machine Tanulás névterét regisztrálni kell a B előfizetésben, mielőtt a tárfiókot használhassa a munkaterülettel.

    Az Azure Machine Tanulás erőforrás-szolgáltatója a Microsoft.Machine Tanulás Services. Az Azure-erőforrás-szolgáltatókról és -típusokról szóló cikkből megtudhatja, hogyan lehet regisztrálni, és hogyan lehet regisztrálni.

    Fontos

    Ez csak a munkaterület létrehozása során biztosított erőforrásokra vonatkozik; Azure Storage-fiókok, Azure Container Register, Azure Key Vault és alkalmazás Elemzések.

  • Alapértelmezés szerint a munkaterület létrehozása egy Azure Container Registryt (ACR) is létrehoz. Mivel az ACR jelenleg nem támogatja az erőforráscsoportnevek Unicode-karaktereit, használjon olyan erőforráscsoportot, amely nem tartalmazza ezeket a karaktereket.

  • Az Azure Machine Tanulás nem támogatja a hierarchikus névteret (Azure Data Lake Storage Gen2 szolgáltatás) a munkaterület alapértelmezett tárfiókjában.

Tipp.

A munkaterület létrehozásakor létrejön egy Azure-alkalmazás Elemzések példány. Ha szeretné, törölheti az Alkalmazás Elemzések-példányt a fürt létrehozása után. A törlés korlátozza a munkaterületről gyűjtött információkat, és megnehezítheti a problémák elhárítását. Ha törli a munkaterület által létrehozott alkalmazáspéldányt Elemzések, a munkaterület törlése és újbóli létrehozása nélkül nem hozhatja létre újra.

Az alkalmazás Elemzések-példány használatáról további információt a Tanulás-webszolgáltatás-végpontok monitorozása és adatgyűjtése című témakörben talál.

Create a workspace

Munkaterületet közvetlenül az Azure Machine Tanulás Studióban hozhat létre, és korlátozott lehetőségek állnak rendelkezésre. Vagy az alábbi módszerek egyikével szabályozhatja a beállításokat.

  • Alapértelmezett specifikáció. Alapértelmezés szerint a függő erőforrások és az erőforráscsoport automatikusan létrejön. Ez a kód létrehoz egy munkaterületet és myworkspace egy erőforráscsoportotmyresourcegroup.eastus2

    ÉRVÉNYES:Python SDK azureml v1

    from azureml.core import Workspace
    
    ws = Workspace.create(name='myworkspace',
                   subscription_id='<azure-subscription-id>',
                   resource_group='myresourcegroup',
                   create_resource_group=True,
                   location='eastus2'
                   )
    

    Állítsa false create_resource_group (Hamis) értékre, ha van egy meglévő Azure-erőforráscsoportja, amelyet a munkaterülethez szeretne használni.

  • Több bérlő. Ha több fiókkal rendelkezik, adja hozzá a használni kívánt Microsoft Entra-azonosító bérlőazonosítóját. Keresse meg a bérlőazonosítót az Azure Portalon a Microsoft Entra ID, External Identityes területen.

    ÉRVÉNYES:Python SDK azureml v1

    from azureml.core.authentication import InteractiveLoginAuthentication
    from azureml.core import Workspace
    
    interactive_auth = InteractiveLoginAuthentication(tenant_id="my-tenant-id")
    ws = Workspace.create(name='myworkspace',
                subscription_id='<azure-subscription-id>',
                resource_group='myresourcegroup',
                create_resource_group=True,
                location='eastus2',
                auth=interactive_auth
                )
    
  • Szuverén felhő. Ha szuverén felhőben dolgozik, további kódra lesz szüksége az Azure-ban való hitelesítéshez.

    ÉRVÉNYES:Python SDK azureml v1

    from azureml.core.authentication import InteractiveLoginAuthentication
    from azureml.core import Workspace
    
    interactive_auth = InteractiveLoginAuthentication(cloud="<cloud name>") # for example, cloud="AzureUSGovernment"
    ws = Workspace.create(name='myworkspace',
                subscription_id='<azure-subscription-id>',
                resource_group='myresourcegroup',
                create_resource_group=True,
                location='eastus2',
                auth=interactive_auth
                )
    
  • Meglévő Azure-erőforrások használata. Létrehozhat olyan munkaterületet is, amely meglévő Azure-erőforrásokat használ az Azure-erőforrás-azonosító formátumával. Keresse meg az adott Azure-erőforrásazonosítókat az Azure Portalon vagy az SDK-val. Ez a példa feltételezi, hogy az erőforráscsoport, a tárfiók, a kulcstartó, az alkalmazás Elemzések és a tárolóregisztrációs adatbázis már létezik.

    ÉRVÉNYES:Python SDK azureml v1

    import os
    from azureml.core import Workspace
    from azureml.core.authentication import ServicePrincipalAuthentication
    
    service_principal_password = os.environ.get("AZUREML_PASSWORD")
    
    service_principal_auth = ServicePrincipalAuthentication(
        tenant_id="<tenant-id>",
        username="<application-id>",
        password=service_principal_password)
    
                          auth=service_principal_auth,
                               subscription_id='<azure-subscription-id>',
                               resource_group='myresourcegroup',
                               create_resource_group=False,
                               location='eastus2',
                               friendly_name='My workspace',
                               storage_account='subscriptions/<azure-subscription-id>/resourcegroups/myresourcegroup/providers/microsoft.storage/storageaccounts/mystorageaccount',
                               key_vault='subscriptions/<azure-subscription-id>/resourcegroups/myresourcegroup/providers/microsoft.keyvault/vaults/mykeyvault',
                               app_insights='subscriptions/<azure-subscription-id>/resourcegroups/myresourcegroup/providers/microsoft.insights/components/myappinsights',
                               container_registry='subscriptions/<azure-subscription-id>/resourcegroups/myresourcegroup/providers/microsoft.containerregistry/registries/mycontainerregistry',
                               exist_ok=False)
    

További információ: Workspace SDK-referencia.

Ha problémái vannak az előfizetés elérésében, olvassa el az Azure Machine-Tanulás-erőforrások és munkafolyamatok hitelesítésének beállítása, valamint az Azure Machine Tanulás-jegyzetfüzet hitelesítésének beállítása című témakört.

Networking

Fontos

A privát végpontok és virtuális hálózatok munkaterülettel való használatáról további információt a Hálózatelkülönítés és adatvédelem című témakörben talál.

Az Azure Machine Tanulás Python SDK a PrivateEndpointConfig osztályt biztosítja, amely a Workspace.create() használatával privát végponttal rendelkező munkaterület létrehozásához használható. Ehhez az osztályhoz meglévő virtuális hálózatra van szükség.

Advanced

Alapértelmezés szerint a munkaterület metaadatait a Microsoft által fenntartott Azure Cosmos DB-példány tárolja. Ezek az adatok a Microsoft által felügyelt kulcsokkal titkosítva lesznek.

Ha korlátozni szeretné a Microsoft által a munkaterületen gyűjtött adatokat, válassza a Nagy üzleti hatással munkaterületet a portálon, vagy állítsa be hbi_workspace=true a Pythont. Erről a beállításról további információt a Inaktív titkosítás című témakörben talál.

Fontos

A nagy üzleti hatás kiválasztása csak munkaterület létrehozásakor végezhető el. Ezt a beállítást a munkaterület létrehozása után nem módosíthatja.

Saját adattitkosítási kulcs használata

Saját kulcsot adhat meg az adattitkosításhoz. Ezzel létrehozza az Azure Cosmos DB-példányt, amely metaadatokat tárol az Azure-előfizetésében. További információkért tekintse meg az Azure Machine Tanulás ügyfél által felügyelt kulcsait.

A saját kulcs megadásához kövesse az alábbi lépéseket:

Fontos

A lépések végrehajtása előtt először a következő műveleteket kell végrehajtania:

Kövesse az ügyfél által felügyelt kulcsok konfigurálásához a következő lépéseket:

  • Az Azure Cosmos DB-szolgáltató regisztrálása
  • Azure Key Vault létrehozása és konfigurálása
  • Kulcs létrehozása

Az ügyfél által kezelt kulcs használata cmk_keyvault és resource_cmk_uri megadása.

from azureml.core import Workspace
   ws = Workspace.create(name='myworkspace',
               subscription_id='<azure-subscription-id>',
               resource_group='myresourcegroup',
               create_resource_group=True,
               location='eastus2'
               cmk_keyvault='subscriptions/<azure-subscription-id>/resourcegroups/myresourcegroup/providers/microsoft.keyvault/vaults/<keyvault-name>', 
               resource_cmk_uri='<key-identifier>'
               )

Konfigurációs fájl letöltése

Ha egy számítási példányt fog használni a munkaterületen a kód futtatásához, hagyja ki ezt a lépést. A számítási példány létrehozza és tárolja a fájl egy példányát.

Ha a munkaterületre hivatkozó kódot szeretne használni a helyi környezetben (ws), írja be a konfigurációs fájlt:

ÉRVÉNYES:Python SDK azureml v1

ws.write_config()

Helyezze a fájlt a könyvtárszerkezetbe Python-szkriptekkel vagy Jupyter-jegyzetfüzetekkel. Lehet ugyanabban a könyvtárban, egy .azureml nevű alkönyvtárban vagy egy szülőkönyvtárban. Számítási példány létrehozásakor a rendszer hozzáadja ezt a fájlt a megfelelő könyvtárhoz a virtuális gépen.

Csatlakozás munkaterületre

A Python-kódban létrehoz egy munkaterület-objektumot a munkaterülethez való csatlakozáshoz. Ez a kód beolvassa a konfigurációs fájl tartalmát a munkaterület megkereséséhez. Ha még nincs hitelesítve, a rendszer kérni fogja a bejelentkezést.

ÉRVÉNYES:Python SDK azureml v1

from azureml.core import Workspace

ws = Workspace.from_config()
  • Több bérlő. Ha több fiókkal rendelkezik, adja hozzá a használni kívánt Microsoft Entra-azonosító bérlőazonosítóját. Keresse meg a bérlőazonosítót az Azure Portalon a Microsoft Entra ID, External Identityes területen.

    ÉRVÉNYES:Python SDK azureml v1

    from azureml.core.authentication import InteractiveLoginAuthentication
    from azureml.core import Workspace
    
    interactive_auth = InteractiveLoginAuthentication(tenant_id="my-tenant-id")
    ws = Workspace.from_config(auth=interactive_auth)
    
  • Szuverén felhő. Ha szuverén felhőben dolgozik, további kódra lesz szüksége az Azure-ban való hitelesítéshez.

    ÉRVÉNYES:Python SDK azureml v1

    from azureml.core.authentication import InteractiveLoginAuthentication
    from azureml.core import Workspace
    
    interactive_auth = InteractiveLoginAuthentication(cloud="<cloud name>") # for example, cloud="AzureUSGovernment"
    ws = Workspace.from_config(auth=interactive_auth)
    

Ha problémái vannak az előfizetés elérésében, olvassa el az Azure Machine-Tanulás-erőforrások és munkafolyamatok hitelesítésének beállítása, valamint az Azure Machine Tanulás-jegyzetfüzet hitelesítésének beállítása című témakört.

Munkaterület keresése

Tekintse meg az összes használható munkaterület listáját.

Az előfizetéseket az Azure Portal Előfizetések lapján találja meg. Másolja ki az azonosítót, és használja az alábbi kódban az előfizetéshez elérhető összes munkaterület megtekintéséhez.

ÉRVÉNYES:Python SDK azureml v1

from azureml.core import Workspace

Workspace.list('<subscription-id>')

A Workspace.list(..) metódus nem adja vissza a teljes munkaterület-objektumot. Csak az előfizetés meglévő munkaterületeiről tartalmaz alapvető információkat. Ha egy adott munkaterület teljes objektumát szeretné lekérni, használja a Workspace.get(..).

Munkaterület törlése

Ha már nincs szüksége munkaterületre, törölje azt.

Figyelmeztetés:

Ha a helyreállítható törlés engedélyezve van a munkaterületen, a törlés után helyreállítható. Ha a helyreállítható törlés nincs engedélyezve, vagy ha bejelöli a munkaterület végleges törlésének lehetőségét, az nem állítható helyre. További információ: Törölt munkaterület helyreállítása.

Tipp.

Az Azure Machine Tanulás alapértelmezett viselkedése a munkaterület helyreállítható törlése. Ez azt jelenti, hogy a munkaterület nincs azonnal törölve, hanem törlésre van megjelölve. További információ: Helyreállítható törlés.

A munkaterület wstörlése:

ÉRVÉNYES:Python SDK azureml v1

ws.delete(delete_dependent_resources=False, no_wait=False)

Az alapértelmezett művelet nem a munkaterülethez társított erőforrások, azaz a tárolóregisztrációs adatbázis, a tárfiók, a kulcstartó és az alkalmazáselemzések törlése. Állítsa delete_dependent_resources true (Igaz) értékre az erőforrások törléséhez is.

Clean up resources

Fontos

A létrehozott erőforrások előfeltételként használhatók más Azure Machine-Tanulás oktatóanyagokhoz és útmutatókhoz.

Ha nem tervezi használni a létrehozott erőforrások egyikét sem, törölje őket, hogy ne járjon költséggel:

  1. Az Azure Portalon válassza az Erőforráscsoportok lehetőséget a bal szélen.

  2. A listából válassza ki a létrehozott erőforráscsoportot.

  3. Válassza az Erőforráscsoport törlése elemet.

    Screenshot of the selections to delete a resource group in the Azure portal.

  4. Adja meg az erőforráscsoport nevét. Ezután válassza a Törlés elemet.

Hibaelhárítás

  • Támogatott böngészők az Azure Machine Tanulás Studióban: Javasoljuk, hogy az operációs rendszerrel kompatibilis legfrissebb böngészőt használja. A következő böngészők támogatottak:

    • Microsoft Edge (Az új Microsoft Edge, legújabb verzió. Nem a Microsoft Edge örökölte)
    • Safari (legújabb verzió, csak Mac)
    • Chrome (legújabb verzió)
    • Firefox (legújabb verzió)
  • Azure portal:

    • Ha az SDK-ból vagy az Azure Portalról közvetlenül a munkaterületre lép egy megosztási hivatkozásból, nem tekintheti meg a standard Áttekintés lapot, amely előfizetési adatokat tartalmaz a bővítményben. Ebben a forgatókönyvben nem válthat másik munkaterületre. Egy másik munkaterület megtekintéséhez lépjen közvetlenül az Azure Machine Tanulás studióba, és keresse meg a munkaterület nevét.
    • Minden eszköz (adat, kísérlet, számítás stb.) csak az Azure Machine Tanulás Studióban érhető el. Nem érhetők el az Azure Portalon.
    • Ha megpróbál exportálni egy sablont egy munkaterülethez az Azure Portalról, a következő szöveghez hasonló hibaüzenet jelenhet meg: Could not get resource of the type <type>. Resources of this type will not be exported. Kerülő megoldásként használja a sablon alapjául megadott https://github.com/Azure/azure-quickstart-templates/tree/master/quickstarts/microsoft.machinelearningservices sablonok egyikét.

Workspace diagnostics

Diagnosztikát futtathat a munkaterületen az Azure Machine Tanulás studióból vagy a Python SDK-ból. A diagnosztika futtatása után a rendszer visszaadja az észlelt problémák listáját. Ez a lista a lehetséges megoldásokra mutató hivatkozásokat tartalmaz. További információ: Munkaterület-diagnosztika használata.

Erőforrás-szolgáltatói hibák

Azure Machine Tanulás-munkaterület vagy a munkaterület által használt erőforrás létrehozásakor a következő üzenetekhez hasonló hibaüzenet jelenhet meg:

  • No registered resource provider found for location {location}
  • The subscription is not registered to use namespace {resource-provider-namespace}

A legtöbb erőforrás-szolgáltató automatikusan regisztrálva van, de nem az összes. Ha ezt az üzenetet kapja, regisztrálnia kell az említett szolgáltatót.

Az alábbi táblázat az Azure Machine Tanulás által igényelt erőforrás-szolgáltatók listáját tartalmazza:

Erőforrás-szolgáltató Why it's needed
Microsoft.Machine Tanulás Szolgáltatások Az Azure Machine Tanulás-munkaterület létrehozása.
Microsoft.Storage A rendszer az Azure Storage-fiókot használja a munkaterület alapértelmezett tárolójaként.
Microsoft.ContainerRegistry Az Azure Container Registryt a munkaterület használja Docker-rendszerképek létrehozásához.
Microsoft.KeyVault Az Azure Key Vaultot a munkaterület titkos kulcsok tárolására használja.
Microsoft.Notebooks Integrált jegyzetfüzetek az Azure Machine Tanulás számítási példányon.
Microsoft.ContainerService Ha betanított modellek üzembe helyezését tervezi az Azure Kubernetes Servicesben.

Ha ügyfél által felügyelt kulcsot szeretne használni az Azure Machine Tanulás, akkor a következő szolgáltatókat kell regisztrálnia:

Erőforrás-szolgáltató Why it's needed
Microsoft.DocumentDB Azure CosmosDB-példány, amely naplózza a munkaterület metaadatait.
Microsoft.Search Az Azure Search indexelési képességeket biztosít a munkaterülethez.

Ha felügyelt virtuális hálózatot tervez használni az Azure Machine Tanulás, akkor a Microsoft.Network erőforrás-szolgáltatót regisztrálni kell. Ezt az erőforrás-szolgáltatót használja a munkaterület a felügyelt virtuális hálózat privát végpontjainak létrehozásakor.

Az erőforrás-szolgáltatók regisztrálásáról további információt az erőforrás-szolgáltató regisztrációjának hibáinak megoldása című témakörben talál.

Az Azure Container Registry törlése

Az Azure Machine Tanulás-munkaterület egyes műveletekhez az Azure Container Registryt (ACR) használja. Automatikusan létrehoz egy ACR-példányt, amikor először szüksége van rá.

Figyelmeztetés:

Miután létrehozott egy Azure Container Registryt egy munkaterülethez, ne törölje azt. Ez megszakítja az Azure Machine Tanulás-munkaterületet.

Következő lépések

Ha már rendelkezik munkaterületével, megtudhatja, hogyan taníthat be és helyezhet üzembe modelleket.

Az Azure Machine Tanulás rendszerezése és beállítása című témakörben talál további információt arról, hogyan tervezhet munkaterületet a szervezet igényeinek megfelelően.

  • Ha át kell helyeznie egy munkaterületet egy másik Azure-előfizetésbe, olvassa el a Munkaterület áthelyezése című témakört.

  • Munkaterület kereséséhez tekintse meg az Azure Machine Tanulás-eszközök keresése (előzetes verzió) című témakört.

Az Azure Machine Tanulás naprakészen tartásáról a legújabb biztonsági frissítésekről a biztonsági rések kezelése című témakörben olvashat.