Kapcsolatok létrehozása (előzetes verzió)
ÉRVÉNYES:Azure CLI ml-bővítmény v2 (aktuális)
Python SDK azure-ai-ml v2 (aktuális)
Ebből a cikkből megtudhatja, hogyan csatlakozhat az Azure-on kívüli adatforrásokhoz, hogy az adatokat elérhetővé tegye az Azure Machine Learning-szolgáltatások számára. Az Azure-kapcsolatok kulcstartó-proxyként szolgálnak, a kapcsolatokkal való interakciók pedig az Azure-kulcstartókkal való közvetlen interakciók. Az Azure Machine Learning-kapcsolatok biztonságosan tárolják a felhasználónév- és jelszóadat-erőforrásokat titkos kulcstartóban. A Key Vault RBAC-je szabályozza az adaterőforrásokhoz való hozzáférést. Az adatok rendelkezésre állása érdekében Azure-támogatás a külső forrásokkal való kapcsolatokat:
- Hópehely DB
- Amazon S3
- Azure SQL DB
Fontos
Ez a funkció jelenleg nyilvános előzetes verzióban érhető el. Ez az előzetes verzió szolgáltatásszintű szerződés nélkül érhető el, és éles számítási feladatokhoz nem javasoljuk. Előfordulhat, hogy néhány funkció nem támogatott, vagy korlátozott képességekkel rendelkezik.
További információ: Kiegészítő használati feltételek a Microsoft Azure előzetes verziójú termékeihez.
Előfeltételek
Azure-előfizetés. Ha még nincs Azure-előfizetése, kezdés előtt hozzon létre egy ingyenes fiókot. Próbálja ki az Azure Machine Learning ingyenes vagy fizetős verzióját.
A Pythonhoz készült Azure Machine Learning SDK.
Egy Azure Machine Learning-munkaterület.
Fontos
Egy Azure Machine Learning-kapcsolat biztonságosan tárolja a kapcsolat létrehozása során átadott hitelesítő adatokat az Azure Key Vault munkaterületén. A kapcsolat a key vault tárolóhelyének hitelesítő adataira hivatkozik további felhasználás céljából. A kulcstartóban való tárolás után nem kell közvetlenül foglalkoznia a hitelesítő adatokkal. A hitelesítő adatokat a YAML-fájlban tárolhatja. A PARANCSSOR-parancs vagy az SDK felülbírálhatja őket. Javasoljuk, hogy kerülje a hitelesítő adatok tárolását egy YAML-fájlban, mert a biztonsági incidens hitelesítő adatok szivárgásához vezethet.
Feljegyzés
Sikeres adatimportáláshoz ellenőrizze, hogy telepítette-e az SDK legújabb Azure-ai-ml-csomagját (1.5.0-s vagy újabb verzió) és az ml-bővítményt (2.15.1-es vagy újabb verzió).
Ha régebbi SDK-csomaggal vagy CLI-bővítménnyel rendelkezik, távolítsa el a régit, és telepítse az újat a lapszakaszban látható kóddal. Kövesse az SDK és a parancssori felület utasításait az itt látható módon:
Kódverziók
az extension remove -n ml
az extension add -n ml --yes
az extension show -n ml #(the version value needs to be 2.15.1 or later)
Snowflake DB-kapcsolat létrehozása
Ez a YAML-fájl létrehoz egy Snowflake DB-kapcsolatot. Mindenképpen frissítse a megfelelő értékeket:
# my_snowflakedb_connection.yaml
$schema: http://azureml/sdk-2-0/Connection.json
type: snowflake
name: my-sf-db-connection # add your datastore name here
target: jdbc:snowflake://<myaccount>.snowflakecomputing.com/?db=<mydb>&warehouse=<mywarehouse>&role=<myrole>
# add the Snowflake account, database, warehouse name and role name here. If no role name provided it will default to PUBLIC
credentials:
type: username_password
username: <username> # add the Snowflake database user name here or leave this blank and type in CLI command line
password: <password> # add the Snowflake database password here or leave this blank and type in CLI command line
Hozza létre az Azure Machine Learning-kapcsolatot a parancssori felületen:
1. lehetőség: A felhasználónév és a jelszó használata a YAML-fájlban
az ml connection create --file my_snowflakedb_connection.yaml
2. lehetőség: A felhasználónév és a jelszó felülbírálása a parancssorban
az ml connection create --file my_snowflakedb_connection.yaml --set credentials.
username="<username>" credentials.
password="<password>"
OAuth-ot használó Snowflake DB-kapcsolat létrehozása
Az ebben a szakaszban található információk azt ismertetik, hogyan hozható létre olyan Snowflake DB-kapcsolat, amely az OAuth használatával hitelesít.
Fontos
A szakasz lépéseinek végrehajtása előtt először konfigurálnia kell az Azure-t OAuth-jogkivonatok kiadásához az ügyfél nevében. Ez a konfiguráció létrehoz egy egyszerű szolgáltatást, amely az OAuth-kapcsolathoz szükséges. A kapcsolat létrehozásához a következő információkra van szüksége:
- Ügyfélazonosító: A szolgáltatásnév azonosítója
- Titkos ügyfélkód: A szolgáltatásnév titkos kódja
- Bérlőazonosító: A Microsoft Entra ID-bérlő azonosítója
Ez a YAML-fájl létrehoz egy OAuth-ot használó Snowflake DB-kapcsolatot. Mindenképpen frissítse a megfelelő értékeket:
# my_snowflakedb_connection.yaml
name: snowflake_service_principal_connection
type: snowflake
# Add the Snowflake account, database, warehouse name, and role name here. If no role name is provided, it will default to PUBLIC.
target: jdbc:snowflake://<myaccount>.snowflakecomputing.com/?db=<mydb>&warehouse=<mywarehouse>&scope=<scopeForServicePrincipal>
credentials:
type: service_principal
client_id: <client-id> # The service principal's client id
client_secret: <client-secret> # The service principal's client secret
tenant_id: <tenant-id> # The Microsoft Entra ID tenant id
Hozza létre az Azure Machine Learning-kapcsolatot a parancssori felületen:
az ml connection create --file my_snowflakedb_connection.yaml
Felülbírálhatja a YAML-fájlban található információkat is a parancssorban:
az ml connection create --file my_snowflakedb_connection.yaml --set credentials.client_id="my-client-id" credentials.client_secret="my-client-secret" credentials.tenant_id="my-tenant-id"
Azure SQL DB-kapcsolat létrehozása
Ez a YAML-szkript létrehoz egy Azure SQL DB-kapcsolatot. Mindenképpen frissítse a megfelelő értékeket:
# my_sqldb_connection.yaml
$schema: http://azureml/sdk-2-0/Connection.json
type: azure_sql_db
name: my-sqldb-connection
target: Server=tcp:<myservername>,<port>;Database=<mydatabase>;Trusted_Connection=False;Encrypt=True;Connection Timeout=30
# add the sql servername, port addresss and database
credentials:
type: sql_auth
username: <username> # add the sql database user name here or leave this blank and type in CLI command line
password: <password> # add the sql database password here or leave this blank and type in CLI command line
Hozza létre az Azure Machine Learning-kapcsolatot a parancssori felületen:
1. lehetőség: A FELHASZNÁLÓNÉV/jelszó használata a YAML-fájlból
az ml connection create --file my_sqldb_connection.yaml
2. lehetőség: A felhasználónév és a jelszó felülbírálása a YAML-fájlban
az ml connection create --file my_sqldb_connection.yaml --set credentials.
username="<username>" credentials.
password="<password>"
Amazon S3-kapcsolat létrehozása
Hozzon létre egy Amazon S3-kapcsolatot a következő YAML-fájllal. Mindenképpen frissítse a megfelelő értékeket:
# my_s3_connection.yaml
$schema: http://azureml/sdk-2-0/Connection.json
type: s3
name: my_s3_connection
target: <mybucket> # add the s3 bucket details
credentials:
type: access_key
access_key_id: bbbbbbbb-1c1c-2d2d-3e3e-444444444444 # add access key id
secret_access_key: H4iJ5kL6mN7oP8qR9sT0uV1wX2yZ3a # add access key secret
Hozza létre az Azure Machine Learning-kapcsolatot a parancssori felületen:
az ml connection create --file my_s3_connection.yaml
Nem adatkapcsolatok
Az alábbi kapcsolattípusok használatával csatlakozhat a Githez:
- Python-hírcsatorna
- Azure Container Registry
- API-kulcsot használó kapcsolat
Ezek a kapcsolatok nem adatkapcsolatok, hanem külső szolgáltatásokhoz való csatlakozásra szolgálnak a kódban való használathoz.
Git
Hozzon létre egy Git-kapcsolatot az alábbi YAML-fájl egyikével. Mindenképpen frissítse a megfelelő értékeket:
Csatlakozás személyes hozzáférési jogkivonat (PAT) használatával:
#Connection.yml name: test_ws_conn_git_pat type: git target: https://github.com/contoso/contosorepo credentials: type: pat pat: dummy_pat
Csatlakozás nyilvános adattárhoz (hitelesítő adatok nélkül):
#Connection.yml name: git_no_cred_conn type: git target: https://https://github.com/contoso/contosorepo
Hozza létre az Azure Machine Learning-kapcsolatot a parancssori felületen:
az ml connection create --file connection.yaml
Python-hírcsatorna
Hozzon létre kapcsolatot egy Python-hírcsatornával az alábbi YAML-fájlok egyikével. Mindenképpen frissítse a megfelelő értékeket:
Csatlakozás személyes hozzáférési jogkivonat (PAT) használatával:
#Connection.yml name: test_ws_conn_python_pat type: python_feed target: https://test-feed.com credentials: type: pat pat: dummy_pat
Csatlakozás felhasználónévvel és jelszóval:
name: test_ws_conn_python_user_pass type: python_feed target: https://test-feed.com credentials: type: username_password username: <username> password: <password>
Csatlakozás nyilvános hírcsatornához (hitelesítő adatok nélkül):
name: test_ws_conn_python_no_cred type: python_feed target: https://test-feed.com3
Hozza létre az Azure Machine Learning-kapcsolatot a parancssori felületen:
az ml connection create --file connection.yaml
Container Registry
Hozzon létre kapcsolatot egy Azure Container Registry-adatbázissal az alábbi YAML-fájlok egyikével. Mindenképpen frissítse a megfelelő értékeket:
Csatlakozás felhasználónévvel és jelszóval:
name: test_ws_conn_cr_user_pass type: container_registry target: https://test-feed.com2 credentials: type: username_password username: <username> password: <password>
Hozza létre az Azure Machine Learning-kapcsolatot a parancssori felületen:
az ml connection create --file connection.yaml
API-azonosító
Az alábbi példa egy API-kulcskapcsolatot hoz létre:
from azure.ai.ml.entities import WorkspaceConnection
from azure.ai.ml.entities import UsernamePasswordConfiguration, ApiKeyConfiguration
name = "my_api_key"
target = "https://L6mN7oP8q.core.windows.net/mycontainer"
wps_connection = WorkspaceConnection(
name=name,
type="apikey",
target=target,
credentials=ApiKeyConfiguration(key="9sT0uV1wX"),
)
ml_client.connections.create_or_update(workspace_connection=wps_connection)
Általános tárolóregisztrációs adatbázis
A GenericContainerRegistry-munkaterület kapcsolatával megadhat egy külső beállításjegyzéket, például a Nexust vagy az Artifactoryt a kép buildjeihez. A rendszer leküldi a környezeti lemezképeket a megadott beállításjegyzékből, és a rendszer figyelmen kívül hagyja az előző gyorsítótárat.
Hozzon létre egy kapcsolatot a következő YAML-fájlokkal. Mindenképpen frissítse a megfelelő értékeket:
#myenv.yml
$schema: https://azuremlschemas.azureedge.net/latest/environment.schema.json
name: docker-image-plus-conda-example
image: mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04
type: python_feed
conda_file: conda_dep.yml
description: Environment created from a Docker image plus Conda environment
#conda_dep.yml
name: project_environment
dependencies:
- python=3.10
- pip:
- azureml-defaults
channels:
- anaconda
- conda-forge
#connection.yml
name: ws_conn_generic_container_registry
type: container_registry
target: https://test-registry.com
credentials:
type: username_password
username: <username>
password: <password>
#hello_world_job.yml
$schema: https://azuremlschemas.azureedge.net/latest/commandJob.schema.json
command: echo "hello world"
environment: azureml:<env name>@latest
Hozzon létre kapcsolatot a YAML-fájlból a hitelesítő adataival:
az ml connection create --file connection.yaml --credentials username=<username> password=<password> --resource-group my-resource-group --workspace-name my-workspace
Környezet létrehozása
az ml environment create --name my-env --version 1 --file my_env.yml --conda-file conda_dep.yml --image mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04 --resource-group my-resource-group --workspace-name my-workspace
Ellenőrizheti, hogy a környezet sikeresen létrejött-e
az ml environment show --name my-env --version 1 --resource-group my-resource-group --workspace-name my-workspace
Kapcsolódó tartalom
Ha adatkapcsolatot használ (Snowflake DB, Amazon S3 vagy Azure SQL DB), ezek a cikkek további információt nyújtanak: