Megosztás a következőn keresztül:


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

Ha adatkapcsolatot használ (Snowflake DB, Amazon S3 vagy Azure SQL DB), ezek a cikkek további információt nyújtanak: