APLICA-SE A:
CLI do Azure ML Extensão v2 (atual)
Python SDK azure-ai-ml v2 (atual)
Aviso
Importar dados de fontes externas (pré-visualização) e Conexões de Dados (pré-visualização) em Azure Machine Learning estão obsoletas e não estarão disponíveis após 30 de setembro de 2026. Até lá, pode continuar a usar estas funcionalidades sem interrupções. Após essa data, quaisquer cargas de trabalho que dependam deles serão interrompidas.
Ação recomendada: Migrar importações externas de dados para Microsoft Fabric e usar Azure Machine Learning datastores para disponibilizar os dados em Azure Machine Learning.
Neste artigo, aprende como ligar-se a fontes de dados externas para disponibilizar os seus dados ao Azure Machine Learning. Também aprendes a ligar-te a vários serviços externos que não são de dados. Pode usar o Azure Machine Learning CLI, o Azure Machine Learning SDK para Python ou o Machine Learning Studio para criar estas ligações.
Uma ligação Azure Machine Learning armazena de forma segura nomes de utilizador e palavras-passe como segredos num cofre de chaves. As ligações Azure funcionam como proxies de cofres de chaves, e as interações com essas ligações são interações diretas com o Azure Key Vault. O controlo de acesso baseado em funções (RBAC) do Key Vault gere o acesso aos recursos de dados. Não precisas de lidar diretamente com as credenciais depois de estarem guardadas no cofre de chaves.
O Azure suporta ligações às seguintes fontes externas para disponibilidade de dados:
- Snowflake
- Base de Dados SQL do Azure
- Amazon S3
Importante
Esta funcionalidade está atualmente em pré-visualização pública. Esta versão de pré-visualização é fornecida sem um acordo de nível de serviço, e não a recomendamos para cargas de trabalho em produção. Certas funcionalidades podem não ser suportadas ou podem ter capacidades limitadas.
Para mais informações, consulte Termos de Utilização Suplementares para Microsoft Azure Pré-visualizações.
Pré-requisitos
Uma subscrição Azure com a versão gratuita ou paga do Azure Machine Learning.
Um espaço de trabalho de Azure Machine Learning.
O CLI do Azure com a extensão ml versão 2.15.1 ou posterior instalada.
Se tiver uma versão ou extensão antiga da CLI do Azure, use o seguinte código para a desinstalar e instalar a nova.
az extension remove -n ml
az extension add -n ml --yes
az extension show -n ml 2.15.1
Uma subscrição Azure com a versão gratuita ou paga do Azure Machine Learning.
Um espaço de trabalho de Azure Machine Learning.
O SDK Azure Machine Learning para Python com o pacote azure-ai-ml versão 1.5.0 ou posterior instalado.
Se tiver um pacote SDK antigo, use o código seguinte para o desinstalar e instalar o novo.
pip uninstall azure-ai-ml
pip install azure-ai-ml
pip show azure-ai-ml 1.5.0
Criar uma ligação de dados Snowflake
Pode usar o Azure Machine Learning CLI, o Azure Machine Learning SDK para Python ou o Machine Learning Studio para criar uma ligação de dados Snowflake que utilize autenticação por nome de utilizador/palavra-passe.
Também podes usar o CLI do Azure ou o Python SDK para criar uma ligação Snowflake que use o OAuth com um principal de serviço. O Machine Learning Studio não suporta a criação de ligações OAuth.
Crie uma ligação que use autenticação por nome de utilizador/palavra-passe
Para criar a ligação Snowflake, primeiro monta um ficheiro YAML que define a ligação e depois executa um comando ou script que chama o ficheiro YAML. Para o SDK Python, também pode especificar diretamente a informação de ligação sem usar um ficheiro YAML.
Podes guardar as credenciais no ficheiro YAML e sobrepor as credenciais armazenadas na linha de comandos do CLI do Azure quando criares a ligação. No entanto, é melhor evitar armazenar credenciais num ficheiro, pois uma violação de segurança pode levar a uma fuga de credenciais. Em vez disso, podes deixar os credentials valores em branco e fornecê-los na linha de comandos.
O ficheiro YAML seguinte define uma ligação Snowflake que utiliza autenticação por nome de utilizador/palavra-passe. Para criar o ficheiro, forneça um <connection-name>, e substitua os <account>, <database>, <warehouse>, e <role> os marcadores de posição pelos valores da sua conta Snowflake. Se não fornecer um <role>, o valor padrão é PUBLIC. Guarda o ficheiro com um nome como my_snowflake_connection.yaml.
$schema: http://azureml/sdk-2-0/Connection.json
type: snowflake
name: <connection-name>
target: jdbc:snowflake://<account>.snowflakecomputing.com/?db=<database>&warehouse=<warehouse>&role=<role>
credentials:
type: username_password
username: <snowflake-username>
password: <snowflake-password>
Pode criar uma ligação de dados a uma base de dados Snowflake no Machine Learning Studio e usar essa ligação para executar trabalhos de importação de dados. As credenciais de nome de utilizador/palavra-passe são armazenadas de forma segura no cofre de chaves associado ao espaço de trabalho.
Para criar uma ligação de dados no Estúdio do Azure Machine Learning:
No seu espaço de trabalho Machine Learning, selecione Data em Assets no menu de navegação à esquerda.
Na página de Dados , selecione o separador Ligações de Dados e depois selecione Conectar.
Para criar a ligação, execute uma das seguintes linhas de comandos, fornecendo o nome do ficheiro YAML para o <yaml-filename> marcador de lugar.
Para usar o nome de utilizador e a palavra-passe que guardaste no ficheiro YAML, executa o seguinte comando:
az ml connection create --file <yaml-filename>.yaml
Para fornecer o nome de utilizador e a palavra-passe como parte da linha de comandos, execute o seguinte comando, introduzindo os seus <username> e <password> para os marcadores de posição:
az ml connection create --file <yaml-filename>.yaml --set credentials.username="<username>" credentials.password="<password>"
Para criar a ligação Snowflake chamando o ficheiro YAML, execute o seguinte script Python, substituindo o marcador <yaml-filename> pelo nome do ficheiro YAML.
from azure.ai.ml import MLClient, load_workspace_connection
ml_client = MLClient.from_config()
wps_connection = load_workspace_connection(source="./<yaml-filename>.yaml")
wps_connection.credentials.username="<snowflake-username>"
wps_connection.credentials.password="<snowflake-password>"
ml_client.connections.create_or_update(workspace_connection=wps_connection)
Criar diretamente
Para especificar diretamente a informação de ligação sem usar um ficheiro YAML, execute o seguinte script Python. Forneça um <connection-name> e substitua os marcadores <account>, <database>, <warehouse> e <role> com os valores da sua conta Snowflake.
Se não fornecer um <role>, o valor assume automaticamente PUBLIC. Para o tipo de autenticação nome de utilizador e palavra-passe, os valores nome/palavra-passe devem ser codificados por URL.
from azure.ai.ml import MLClient
from azure.ai.ml.entities import WorkspaceConnection
from azure.ai.ml.entities import UsernamePasswordConfiguration
import urllib.parse
username = urllib.parse.quote(os.environ["SNOWFLAKEDB_USERNAME"], safe="")
password = urllib.parse.quote(os.environ["SNOWFLAKEDB_PASSWORD"], safe="")
target= "jdbc:snowflake://<account>.snowflakecomputing.com/?db=<database>&warehouse=<warehouse>&role=<role>"
name= <connection-name>
wps_connection = WorkspaceConnection(name= name,
type="snowflake",
target= target,
credentials= UsernamePasswordConfiguration(username=username, password=password)
)
ml_client.connections.create_or_update(workspace_connection=wps_connection)
No ecrã Criar ligação , complete a seguinte informação:
-
Serviço: Select Snowflake.
-
Alvo: Introduza o seguinte alvo, usando os valores da sua conta Snowflake para os marcadores de lugar:
jdbc:snowflake://<account>.snowflakecomputing.com/?db=<database>&warehouse=<warehouse>&role=<role>
-
Tipo de autenticação: Selecione palavra-passe por nome de utilizador.
-
Nome de utilizador: Introduza o seu nome de utilizador Snowflake.
-
Palavra-passe: Introduza a sua palavra-passe do Floco de Neve.
-
Nome da ligação: Introduza um nome para a ligação Floco de Neve.
Opcionalmente, selecione Testar Ligação para testar a ligação e depois selecione Guardar.
Use o CLI do Azure ou o SDK Python para criar uma ligação com autenticação OAuth
Pode usar o CLI do Azure ou o Python SDK para criar uma ligação Snowflake que utiliza um serviço principal para autenticação através do OAuth.
Para criar uma ligação OAuth para Azure Machine Learning, precisa da seguinte informação:
-
ID do cliente: o ID do principal de serviço
-
Segredo do Cliente: O segredo principal do serviço
-
ID do Locatário: O ID do locatário Microsoft Entra ID
Para criar a ligação, primeiro monta um ficheiro YAML que define a ligação e depois executa um comando ou script que chama o ficheiro YAML. Para o SDK Python, também pode especificar diretamente a informação de ligação sem usar um ficheiro YAML.
Crie o seguinte ficheiro YAML para definir uma ligação Snowflake que use OAuth. Forneça um <connection-name>, e substitua os <account>, <database>, <warehouse>, e <service-principal-scope> os marcadores de posição pelos valores da sua conta Snowflake. Para credenciais, forneça os seus <client-id>, <client-secret>, e <tenant_id>.
name: <connection-name>
type: snowflake
target: jdbc:snowflake://<account>.snowflakecomputing.com/?db=<database>&warehouse=<warehouse>&scope=<service-principal-scope>
credentials:
type: service_principal
client_id: <client-id>
client_secret: <client-secret>
tenant_id: <tenant-id>
O Machine Learning Studio não suporta a criação de ligações de dados que utilizem autenticação OAuth.
Para criar a ligação usando a informação de credenciais armazenada no ficheiro YAML, execute o seguinte comando, substituindo o <yaml-filename> marcador pelo nome do ficheiro YAML.
az ml connection create --file <yaml-filename>.yaml
Para sobrepor a informação de credenciais no ficheiro YAML ou fornecer credenciais na linha de comandos, execute o seguinte comando, introduzindo os seus valores <client-id>, <client-secret> e <tenant-id> nos marcadores de posição.
az ml connection create --file <yaml-filename>.yaml --set credentials.client_id="<client-id>" credentials.client_secret="<client-secret>" credentials.tenant_id="<tenant-id>"
Para criar a ligação OAuth chamando o ficheiro YAML, execute o seguinte script Python, substituindo o marcador <yaml-filename> pelo nome do ficheiro YAML. Podes, opcionalmente, fornecer ou sobrepor os <wps_connection.credentials> valores.
from azure.ai.ml import MLClient, load_workspace_connection
ml_client = MLClient.from_config()
wps_connection = load_workspace_connection(source="./<yaml-filename>.yaml")
wps_connection.credentials.client_id="<client-id>"
wps_connection.credentials.client_secret="<client-secret>"
wps_connection.credentials.tenant_id="<tenant-id>"
ml_client.connections.create_or_update(workspace_connection=wps_connection)
Criar diretamente
Execute o seguinte script Python para especificar diretamente a informação de ligação OAuth sem usar um ficheiro YAML. Forneça um <connection-name>, e substitua os <account>, <database>, <warehouse>, e <role> os marcadores de posição pelos valores da sua conta Snowflake. Introduza os valores em <client-id>, <client-secret> e <tenant-id> nos marcadores de posição correspondentes.
from azure.ai.ml import MLClient
from azure.ai.ml.entities import WorkspaceConnection
from azure.ai.ml.entities import ServicePrincipalConfiguration
target= "jdbc:snowflake://<account>.snowflakecomputing.com/?db=<database>&warehouse=<warehouse>&role=<role>"
name= <connection-name>
auth = ServicePrincipalConfiguration(client_id="<client-id>", client_secret="<client-secret>", tenant_id="<tenant-id>")
wps_connection = WorkspaceConnection(name= name,
type="snowflake",
target=target,
credentials=auth
)
ml_client.connections.create_or_update(workspace_connection=wps_connection)
Pode criar uma ligação Snowflake com autenticação por nome de utilizador/palavra-passe, ou usar CLI do Azure ou Python SDK para criar a ligação com autenticação OAuth.
Criar uma ligação de dados do Base de Dados SQL do Azure
Pode usar o Azure Machine Learning CLI, o Azure Machine Learning SDK para Python ou o Machine Learning Studio para criar uma ligação de dados ao Base de Dados SQL do Azure.
Para criar uma ligação à base de dados SQL do Azure, primeiro monta um ficheiro YAML que define a ligação e depois executa um comando ou script CLI do Azure ou Python SDK que chama o ficheiro YAML. Para o SDK Python, também pode especificar diretamente a informação de ligação sem usar um ficheiro YAML.
Crie o ficheiro YAML seguinte para definir a ligação Base de Dados SQL do Azure e guarde o ficheiro com um nome como my_azuresqldb_connection.yaml. Forneça um <connection-name> e substitua os marcadores <server>, <port> e <database> pelos valores apropriados da sua base de dados de SQL do Azure.
Para credentials, podes guardar o nome de utilizador e a palavra-passe da base de dados SQL do Azure neste ficheiro, mas é mais seguro deixar os valores em branco e fornecê-los na linha de comandos que cria a ligação.
$schema: http://azureml/sdk-2-0/Connection.json
type: azure_sql_db
name: <connection-name>
target: Server=tcp:<server>,<port>;Database=<database>;Trusted_Connection=False;Encrypt=True;Connection Timeout=30
credentials:
type: sql_auth
username: <username>
password: <password>
Pode criar uma ligação de dados para uma base de dados SQL do Azure no Machine Learning Studio e usar essa ligação para executar trabalhos de importação de dados. As credenciais de nome de utilizador/palavra-passe são armazenadas de forma segura no cofre de chaves associado ao espaço de trabalho.
Para criar uma ligação de dados no Estúdio do Azure Machine Learning:
No seu espaço de trabalho Machine Learning, selecione Data em Assets no menu de navegação à esquerda.
Na página de Dados , selecione o separador Ligações de Dados e depois selecione Conectar.
Para criar a ligação, execute uma das seguintes linhas de comando CLI, fornecendo o nome do ficheiro YAML para o <yaml-filename> marcador de lugar.
Para usar o nome de utilizador e a palavra-passe armazenados no ficheiro YAML, execute o seguinte comando:
az ml connection create --file <yaml-filename>.yaml
Para fornecer o nome de utilizador e a palavra-passe como parte da linha de comandos, execute o seguinte comando, introduzindo os seus <username> e <password> para os marcadores de posição:
az ml connection create --file <yaml-filename>.yaml --set credentials.username="<username>" credentials.password="<password>"
Para criar a ligação Base de Dados SQL do Azure chamando o ficheiro YAML, execute o seguinte script Python, substituindo o marcador <yaml-filename> pelo nome do ficheiro YAML.
from azure.ai.ml import MLClient, load_workspace_connection
ml_client = MLClient.from_config()
wps_connection = load_workspace_connection(source="./<yaml-filename>.yaml")
wps_connection.credentials.username="<username>"
wps_connection.credentials.password="<password>"
ml_client.connections.create_or_update(workspace_connection=wps_connection)
Criar diretamente
Para especificar diretamente a informação de ligação sem usar um ficheiro YAML, execute o seguinte script Python. Fornece um <connection-name> e substitui os marcadores de <server>, <port> e <database> pelos valores da tua base de dados de SQL do Azure. Para o tipo de autenticação nome de utilizador e palavra-passe, os valores de nome e palavra-passe devem ser codificados por URL.
from azure.ai.ml import MLClient
from azure.ai.ml.entities import WorkspaceConnection
from azure.ai.ml.entities import UsernamePasswordConfiguration
import urllib.parse
username = urllib.parse.quote(os.environ["MYSQL_USERNAME"], safe="")
password = urllib.parse.quote(os.environ["MYSQL_PASSWORD"], safe="")
target= "Server=tcp:<server>,<port>;Database=<database>;Trusted_Connection=False;Encrypt=True;Connection Timeout=30"
# add the sql servername, port address and database
name= <connection-name>
wps_connection = WorkspaceConnection(name= name,
type="azure_sql_db",
target= target,
credentials= UsernamePasswordConfiguration(username=username, password=password)
)
ml_client.connections.create_or_update(workspace_connection=wps_connection)
No ecrã Criar ligação , complete a seguinte informação:
-
Service: Select AzureSqlDb.
-
Target: Introduza o seguinte alvo, usando os valores da sua base de dados de SQL do Azure para os marcadores de posição:
Servidor=tcp:<servidor>,<porta>; Base de dados=<base de dados>; Trusted_Connection=Falso; Encriptar=True; Tempo de Expiração da Ligação=30
-
Tipo de autenticação: Selecione palavra-passe por nome de utilizador.
-
Nome de utilizador: Introduza o seu nome de utilizador Base de Dados SQL do Azure.
-
Password: Introduza a sua palavra-passe Base de Dados SQL do Azure.
-
Nome da ligação: Insira um nome para a ligação Base de Dados SQL do Azure.
Opcionalmente, selecione Testar Ligação para testar a ligação e depois selecione Guardar.
Criar uma ligação de dados Amazon S3
Pode usar o Azure Machine Learning CLI, o Azure Machine Learning SDK para Python ou o Machine Learning Studio para criar uma ligação de dados Amazon S3.
Para criar uma ligação de dados Amazon S3, primeiro monta um ficheiro YAML que define a ligação e depois executa um comando ou script CLI do Azure ou Python SDK que chama o ficheiro YAML. Para o SDK Python, também pode especificar diretamente a informação de ligação sem usar um ficheiro YAML.
Para usar o Azure Machine Learning CLI para criar uma ligação de dados Amazon S3, primeiro monta um ficheiro YAML que define a ligação e depois executa um comando CLI do Azure que chama o ficheiro YAML.
Crie o seguinte ficheiro YAML que define a ligação Amazon S3. Fornece um <connection-name> e substitui os <s3-bucket-name>, <access-key-id>, e <secret-access-key> os marcadores de posição pelos valores da tua conta Amazon S3. Guarde o ficheiro com um nome como my_amazons3_connection.yaml.
$schema: http://azureml/sdk-2-0/Connection.json
type: s3
name: <connection-name>
target: <s3-bucket-name>
credentials:
type: access_key
access_key_id: <access-key-id>
secret_access_key: <secret-access-key>
Pode criar uma ligação aos dados do Amazon S3 no Machine Learning Studio e usar essa ligação para executar trabalhos de importação de dados. As credenciais de nome de utilizador/palavra-passe são armazenadas de forma segura no cofre de chaves associado ao espaço de trabalho.
Para criar uma ligação de dados no Estúdio do Azure Machine Learning:
No seu espaço de trabalho Machine Learning, selecione Data em Assets no menu de navegação à esquerda.
Na página de Dados , selecione o separador Ligações de Dados e depois selecione Conectar.
Para criar a ligação, execute o seguinte comando CLI, fornecendo o nome do ficheiro YAML para o <yaml-filename> marcador de lugar.
az ml connection create --file <yaml-filename>.yaml
Para criar a ligação Amazon S3 chamando o ficheiro YAML, execute o seguinte script Python, substituindo o marcador <yaml-filename> pelo nome do ficheiro YAML.
from azure.ai.ml import MLClient, load_workspace_connection
ml_client = MLClient.from_config()
wps_connection = load_workspace_connection(source="./<yaml-filename>.yaml")
ml_client.connections.create_or_update(workspace_connection=wps_connection)
Criar diretamente
Para especificar diretamente a informação de ligação sem usar um ficheiro YAML, execute o seguinte script em Python. Forneça um <connection-name> e substitua os marcadores de posição <s3-bucket-name>, <access-key-id> e <secret-access-key> pelos valores na sua conta Amazon S3.
from azure.ai.ml import MLClient
from azure.ai.ml.entities import WorkspaceConnection
from azure.ai.ml.entities import AccessKeyConfiguration
target=<s3-bucket-name>
name=<connection-name>
wps_connection=WorkspaceConnection(name=name,
type="s3",
target= target,
credentials= AccessKeyConfiguration(access_key_id="<access-key-id>",secret_access_key="<secret-access-key>")
)
ml_client.connections.create_or_update(workspace_connection=wps_connection)
No ecrã Criar ligação , complete a seguinte informação:
-
Serviço: Selecionar S3.
-
Target: Introduza o nome do seu bucket Amazon S3.
-
Tipo de autenticação: Selecionar chave de acesso.
-
ID da chave de acesso: Introduza o ID da chave de acesso Amazon S3.
-
Chave de Acesso Secreto: Insira a sua Chave de Acesso Secreto Amazon S3.
-
Nome da ligação: Introduza um nome para a ligação Amazon S3.
Opcionalmente, selecione Testar Ligação para testar a ligação e depois selecione Guardar.
Criar ligações externas não relacionadas com dados
Também pode criar ligações Azure Machine Learning sem dados para serviços externos que utiliza no seu código. Esta secção mostra como criar as seguintes ligações não relacionadas com dados:
- Git
- Alimentação Python
- Azure Container Registry
- Registo genérico de contentores
- chave de API
Criar uma ligação Git
Podes criar uma ligação Git usando CLI do Azure, Python SDK ou Machine Learning Studio.
Para criar uma ligação Git usando CLI do Azure, defina a ligação usando um dos seguintes ficheiros YAML. Dá um nome ao ficheiro de algo como git-connection.yml.
Para se conectar usando um token de acesso pessoal (PAT), forneça um `<connection-name>` e substitua os `<account>`, `<repo>` e `<PAT>` pelos valores da sua conta Git, repositório e PAT.
name: <connection-name>
type: git
target: https://github.com/<account>/<repo>
credentials:
type: pat
pat: <PAT>
Para se ligar a um repositório público sem usar credenciais, forneça um <connection-name>, e substitua o <account>, e <repo> os marcadores de posição pelos seus valores.
name: <connection-name>
type: git
target: https://github.com/<account>/<repo>
Crie a ligação Azure Machine Learning executando o seguinte comando, fornecendo o seu nome de ficheiro YAML para o marcador <yaml-filename>.
az ml connection create --file <yaml-filename>.yaml
Para criar uma ligação a um repositório Git usando o SDK Python, use o seguinte script. Utiliza-se um token de acesso pessoal do GitHub (PAT) para autenticar a ligação. Forneça um <connection-name>, e substitua os <account>, <repo> e <PAT> placeholders pelos teus valores.
from azure.ai.ml.entities import WorkspaceConnection
from azure.ai.ml.entities import UsernamePasswordConfiguration, PatTokenConfiguration
name = "<connection-name>"
target = "https://github.com/<account>/<repo>"
wps_connection = WorkspaceConnection(
name=name,
type="git",
target=target,
credentials=PatTokenConfiguration(pat="<PAT>"),
)
ml_client.connections.create_or_update(workspace_connection=wps_connection)
Para criar uma ligação Git no Machine Learning Studio:
Em Estúdio do Azure Machine Learning, selecione Connections em Gerir na navegação à esquerda, e depois selecione Conectar.
No ecrã Adicionar uma ligação a ativos externos , desça até Outros tipos de recurso e selecione Git.
Na ecrã de Ligar um repositório Git, introduza o caminho para o seu repositório Git em Endpoint e o seu token pessoal de acesso (PAT) em token pessoal de acesso. Fornece um nome de ligação e depois seleciona Adicionar ligação.
Alimentação Python
Pode criar uma ligação a um feed Python usando CLI do Azure, Python SDK ou Machine Learning Studio.
Defina uma ligação de feed Python usando um dos seguintes ficheiros YAML. Dá um nome ao ficheiro de algo como python-feed-connection.yml.
Para conectar usando um PAT, forneça um <connection-name> e substitua os marcadores <feed-url> e <PAT> pelos valores do seu feed.
name: <connection-name>
type: python_feed
target: https://<feed-url>
credentials:
type: pat
pat: <PAT>
Para se ligar usando um nome de utilizador e palavra-passe, forneça um <connection-name>, e substitua os <feed-url>, <username>, e <password> os marcadores de posição pelos valores do seu feed.
name: <connection-name>
type: python_feed
target: https://<feed-url>
credentials:
type: username_password
username: <username>
password: <password>
Para se ligar a um feed público sem usar credenciais, forneça um <connection-name> e substitua o marcador <feed-url> pelo URL do seu feed Python.
name: <connection-name>
type: python_feed
target: https://<feed-url>
Crie a ligação Azure Machine Learning executando o seguinte comando, fornecendo o seu nome de ficheiro YAML para o marcador <yaml-filename>.
az ml connection create --file <yaml-filename>.yaml
Use o script seguinte para criar uma ligação de feed Python usando o Python SDK. Fornece um <connection-name> e substitui o <feed-url> pelo URL do teu feed de Python.
Pode usar um PAT ou nome de utilizador e palavra-passe para autenticar a ligação, ou ligar-se a um feed público sem credenciais. Para o tipo de autenticação PAT, forneça o seu PAT para o espaço reservado <PAT>. Para o tipo de autenticação nome de utilizador e palavra-passe, os valores nome/palavra-passe devem ser codificados por URL.
Para usar nome de utilizador/palavra-passe ou sem autenticação em vez de um PAT, remova o comentário da linha ou linhas apropriadas no script seguinte e coloque um comentário na linha credentials=PatTokenConfiguration(pat="<PAT>"),.
from azure.ai.ml.entities import WorkspaceConnection
from azure.ai.ml.entities import UsernamePasswordConfiguration, PatTokenConfiguration
# import urllib.parse
# username = urllib.parse.quote(os.environ["FEED_USERNAME"], safe="")
# password = urllib.parse.quote(os.environ["FEED_PASSWORD"], safe="")
name = "<connection-name>"
target = "https://<feed-url>"
wps_connection = WorkspaceConnection(
name=name,
type="python_feed",
target=target,
#credentials=UsernamePasswordConfiguration(username=username, password=password),
credentials=PatTokenConfiguration(pat="<PAT>"),
#credentials=None
)
ml_client.connections.create_or_update(workspace_connection=wps_connection)
Para criar uma ligação a um feed Python no Machine Learning Studio:
No seu espaço de trabalho Estúdio do Azure Machine Learning, selecione Connections em Gerir na navegação à esquerda, e depois selecione Conectar.
No ecrã Adicionar uma ligação a assets externos, desça até Outros tipos de recursos e selecione Python feed.
No ecrã Liga um feed Python:
- Introduza o caminho para o seu repositório Git em Endpoint.
- Selecione Nenhum, PAT ou palavra-passe de nome de utilizador para Autenticação e forneça os valores apropriados.
- Forneça um nome de Ligação.
Selecionar Adicionar ligação.
Azure Container Registry
Pode criar uma ligação ao Azure Container Registry usando CLI do Azure, Python SDK ou Machine Learning Studio.
Use o seguinte ficheiro YAML para definir uma ligação ao Azure Container Registry com autenticação de nome de utilizador/palavra-passe.
name: <connection-name>
type: container_registry
target: https://<container-registry-url>
credentials:
type: username_password
username: <username>
password: <password>
Para criar a ligação, execute o seguinte comando:
az ml connection create --file connection.yaml
O exemplo seguinte cria uma ligação ao Azure Container Registry:
from azure.ai.ml.entities import WorkspaceConnection
from azure.ai.ml.entities import UsernamePasswordConfiguration
# If using username/password, the name/password values should be url-encoded
import urllib.parse
username = os.environ["REGISTRY_USERNAME"]
password = os.environ["REGISTRY_PASSWORD"]
name = "my_acr_conn"
target = "https://iJ5kL6mN7.core.windows.net/mycontainer"
wps_connection = WorkspaceConnection(
name=name,
type="container_registry",
target=target,
credentials=UsernamePasswordConfiguration(username=username, password=password),
)
ml_client.connections.create_or_update(workspace_connection=wps_connection)
Para criar uma ligação ao Azure Container Registry no Machine Learning Studio:
No seu espaço de trabalho Azure Machine Learning, selecione Connections em Gerir na navegação à esquerda, e depois selecione Conectar.
No ecrã Adicionar uma ligação a ativos externos , desça até Outros tipos de recursos e selecione Registo de Contentores.
Introduza o caminho para o seu registo de contentores de Azure em Endpoint, selecione Nenhum ou Nome de utilizador para Autenticação com os valores apropriados, e introduza um nome Ligação.
Selecionar Adicionar ligação.
Registo Genérico de Contentores
A ligação ao espaço de trabalho GenericContainerRegistry especifica um registo externo, como Nexus ou Artifactory, para compilações de imagens. As imagens do ambiente são enviadas a partir do registo especificado, e a cache anterior é ignorada. Pode criar uma ligação a um registo genérico de contentores usando CLI do Azure, Python SDK ou Machine Learning Studio.
Para CLI do Azure e Python SDK, os seguintes ficheiros YAML de exemplo definem uma ligação genérica de registo de contentores. Atualize os valores de exemplo com os seus próprios valores.
#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: myusername
password: <password>
#hello_world_job.yml
$schema: https://azuremlschemas.azureedge.net/latest/commandJob.schema.json
command: echo "hello world"
environment: azureml:myenv@latest
Também pode criar uma ligação ao Generic Container Registry (pré-visualização) no Studio.
Em Estúdio do Azure Machine Learning, selecione Connections em Gerir na navegação à esquerda, e depois selecione Conectar.
No ecrã Adicionar uma ligação a ativos externos , selecione Registo Genérico de Contentores (PRÉ-visualização) em Outros tipos de recursos.
Execute o seguinte comando para criar a ligação usando os ficheiros YAML anteriores e as suas credenciais. Atualize os valores de exemplo com os seus próprios valores.
az ml connection create --file connection.yml --credentials username=myusername password=<password> --resource-group my-resource-group --workspace-name my-workspace
Para criar o ambiente, execute o seguinte comando:
az ml environment create --name docker-image-plus-conda-example --version 1 --file myenv.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
Execute o seguinte comando para verificar se o ambiente foi criado com sucesso.
az ml environment show --name docker-image-plus-conda-example --version 1 --resource-group my-resource-group --workspace-name my-workspace
O seguinte script de exemplo em Python cria uma ligação Genérica de Registo de Contentores usando os ficheiros de exemplo anteriores. Atualize os valores de exemplo com os seus próprios valores.
import os
from azure.ai.ml import MLClient
from azure.identity import DefaultAzureCredential
from azure.ai.ml.entities import Environment
from azure.ai.ml.entities import WorkspaceConnection
from azure.ai.ml.entities import UsernamePasswordConfiguration
from azureml.core.conda_dependencies import CondaDependencies
from azure.ai.ml import command
username = os.environ["REGISTRY_USERNAME"]
password = os.environ["REGISTRY_PASSWORD"]
# Enter details of Azure Machine Learning workspace
subscription_id = "00000000-0000-0000-0000-000000000000"
resource_group = "my-resource-group"
workspace = "my-workspace"
ml_client = MLClient( DefaultAzureCredential(), subscription_id, resource_group, workspace)
credentials = UsernamePasswordConfiguration(username=username, password=password)
# Create GenericContainerRegistry workspace connection for a generic registry
ws_connection = WorkspaceConnection(name="ws_conn_generic_container_registry", target="https://test-registry.com", type="GenericContainerRegistry", credentials=credentials)
ml_client.connections.create_or_update(ws_connection)
# Create an environment
env_docker_conda = Environment(image="mcr.microsoft.com/azureml/openmpi4.1.0-ubuntu20.04", conda_file="conda_dep.yml", name="docker-image-plus-conda-example", description="Environment created from a Docker image plus Conda environment.")
ml_client.environments.create_or_update(env_docker_conda)
job = command(command="echo 'hello world'", environment=env_docker_conda,display_name="v2-job-example")
returned_job = ml_client.create_or_update(job)
No ecrã Conectar um registo de contentores:
- Introduza o caminho para o seu registo de contentores em Endpoint.
- Introduza o seu nome de utilizador e palavra-passe.
- Forneça um nome de Ligação.
Selecionar Adicionar ligação.
chave de API
Crie o ficheiro YAML seguinte para definir uma ligação a uma chave API. Atualize os valores de exemplo com os seus próprios valores.
name: my_api_key
type: api_key
api_base: "https://myapi.core.windows.net/mycontainer"
api_key: "aAbBcCdD"
Para criar a ligação, execute o seguinte comando:
az ml connection create --file connection.yaml
Para maior segurança, deixe o api_key valor fora do ficheiro YAML e forneça-o na linha de comandos:
az ml connection create --file connection.yml --set api_key="aAbBcCdD"
O exemplo seguinte do SDK Python cria uma ligação de chave API. Atualize os valores de exemplo com os seus próprios valores.
from azure.ai.ml.entities import WorkspaceConnection
from azure.ai.ml.entities import UsernamePasswordConfiguration, ApiKeyConfiguration
name = "my_api_key"
target = "https://myapi.core.windows.net/mycontainer"
wps_connection = WorkspaceConnection(
name=name,
type="apikey",
target=target,
credentials=ApiKeyConfiguration(key="aAbBcCdD"),
)
ml_client.connections.create_or_update(workspace_connection=wps_connection)
Para criar uma ligação a uma chave API no Machine Learning Studio:
No seu espaço de trabalho Azure Machine Learning, selecione Connections em Gerir na navegação à esquerda, e depois selecione Conectar.
No ecrã Adicionar uma ligação a ativos externos , desça até Outros tipos de recursos e selecione a chave API.
Introduz o caminho para a sua chave API em Endpoint, introduza o segredo da chave API em Key, introduza um nome de Ligação e depois selecione Adicionar ligação.
Conteúdo relacionado