Privát Python-csomagok használata az Azure Machine Learning használatával
A KÖVETKEZŐKRE VONATKOZIK:Python SDK azureml v1
Ebből a cikkből megtudhatja, hogyan használhatja biztonságosan a privát Python-csomagokat az Azure Machine Learningben. A privát Python-csomagok használati esetei a következők:
- Kifejlesztett egy privát csomagot, amelyet nem szeretne nyilvánosan megosztani.
- Egy vállalati tűzfalon belül tárolt csomagok válogatott adattárát szeretné használni.
Az ajánlott megközelítés attól függ, hogy egyetlen Azure Machine Learning-munkaterülethez kevés csomaggal rendelkezik-e, vagy egy szervezet összes munkaterületéhez tartozó csomagok teljes tárházával rendelkezik.
A privát csomagok környezeti osztályon keresztül vannak használva. Egy környezetben deklarálja, hogy mely Python-csomagokat használja, beleértve a privát csomagokat is. Az Azure Machine Learning környezetével kapcsolatos általános információkért lásd: Környezetek használata.
Előfeltételek
Kis számú csomag használata fejlesztéshez és teszteléshez
Ha egy munkaterülethez kevés privát csomagot használ, használja a statikus Environment.add_private_pip_wheel()
metódust. Ez a megközelítés lehetővé teszi, hogy gyorsan hozzáadjon egy privát csomagot a munkaterülethez, és kiválóan alkalmas fejlesztési és tesztelési célokra.
Mutasson a fájl elérési útjának argumentumára egy helyi kerékfájlra, és futtassa a add_private_pip_wheel
parancsot. A parancs egy URL-címet ad vissza, amellyel nyomon követheti a csomag helyét a munkaterületen belül. Rögzítse a tárolási URL-címet, és adja át a metódust add_pip_package()
.
whl_url = Environment.add_private_pip_wheel(workspace=ws,file_path = "my-custom.whl")
myenv = Environment(name="myenv")
conda_dep = CondaDependencies()
conda_dep.add_pip_package(whl_url)
myenv.python.conda_dependencies=conda_dep
Az Azure Machine Learning szolgáltatás belsőleg biztonságos SAS URL-címmel cseréli le az URL-címet, így a kerékfájl privát és biztonságos marad.
Csomagok adattárának használata az Azure DevOps-hírcsatornából
Ha aktívan fejleszt Python-csomagokat a gépi tanulási alkalmazáshoz, egy Azure DevOps-adattárban tárolhatja őket összetevőkként, és közzéteheti őket hírcsatornaként. Ezzel a módszerrel integrálhatja a DevOps-munkafolyamatot a csomagok létrehozásához az Azure Machine Learning-munkaterülettel. Ha meg szeretné tudni, hogyan állíthat be Python-hírcsatornákat az Azure DevOps használatával, olvassa el A Python-csomagok használatának első lépései az Azure Artifactsben című cikket.
Ez a módszer személyes hozzáférési jogkivonatot használ az adattáron való hitelesítéshez. Ugyanez a megközelítés vonatkozik más jogkivonatalapú hitelesítéssel rendelkező adattárakra is, például a privát GitHub-adattárakra.
Hozzon létre egy személyes hozzáférési jogkivonatot (PAT) az Azure DevOps-példányhoz. Állítsa a jogkivonat hatókörét Csomagolás > olvasása értékre.
Adja hozzá az Azure DevOps URL-címét és PAT-ját munkaterület-tulajdonságokként a Workspace.set_connection metódussal.
from azureml.core import Workspace pat_token = input("Enter secret token") ws = Workspace.from_config() ws.set_connection(name="connection-1", category = "PythonFeed", target = "https://pkgs.dev.azure.com/<MY-ORG>", authType = "PAT", value = pat_token)
Hozzon létre egy Azure Machine Learning-környezetet, és adjon hozzá Python-csomagokat a hírcsatornából.
from azureml.core import Environment from azureml.core.conda_dependencies import CondaDependencies env = Environment(name="my-env") cd = CondaDependencies() cd.add_pip_package("<my-package>") cd.set_pip_option("--extra-index-url https://pkgs.dev.azure.com/<MY-ORG>/_packaging/<MY-FEED>/pypi/simple")") env.python.conda_dependencies=cd
A környezet most már készen áll a betanítási futtatásokban vagy a webszolgáltatás-végpontok üzembe helyezésében való használatra. A környezet létrehozásakor az Azure Machine Learning service a PAT használatával hitelesíti magát a hírcsatornán a megfelelő alap URL-címmel.
Csomagok tárházának használata privát tárolóból
A szervezet tűzfalán belül egy Azure Storage-fiókból is használhat csomagokat. A tárfiók egy válogatott csomagkészletet vagy a nyilvánosan elérhető csomagok belső tükörét is tartalmazhatja.
Az ilyen privát tárolók beállításáról az Azure Machine Learning-munkaterület és a kapcsolódó erőforrások védelme című témakörben olvashat. A Azure Container Registry (ACR) is a virtuális hálózat mögé kell helyeznie.
Fontos
Ezt a lépést el kell végeznie ahhoz, hogy modelleket taníthasson be vagy telepíthessen a privát csomagtárház használatával.
A konfigurációk elvégzése után hivatkozhat az Azure Machine Learning-környezet definíciójában szereplő csomagokra az Azure Blob Storage-ban található teljes URL-címükkel.
Következő lépések
- További információ a vállalati biztonságról az Azure Machine Learningben