Partilhar via


Criar um hub usando o SDK e a CLI do Azure Machine Learning

Observação

Este documento refere-se ao portal Microsoft Foundry (clássico).

🔍 Consulte a documentação (nova) da Microsoft Foundry para saber mais sobre o novo portal.

Importante

Os itens marcados como (pré-visualização) neste artigo estão neste momento em pré-visualização pública. Esta pré-visualização é fornecida sem um acordo de nível de serviço, e não a recomendamos para trabalhos em produção. Algumas funcionalidades poderão não ser suportadas ou poderão ter capacidades limitadas. Para obter mais informações, veja Termos Suplementares de Utilização para Pré-visualizações do Microsoft Azure.

Neste artigo, aprende como criar os seguintes recursos do Microsoft Foundry usando o Azure Machine Learning SDK e Azure CLI (com extensão de aprendizagem automática):

  • Um centro de fundição
  • Uma ligação à Microsoft Foundry

Observação

Um hub é usado apenas para um projeto baseado em hub. Um projeto Foundry não utiliza um hub. Para obter mais informações, consulte Tipos de projetos.

Pré-requisitos

Configurar o ambiente

Use as guias a seguir para selecionar se você está usando o SDK do Python ou a CLI do Azure:

  1. Instale pacotes. (Se estiver numa célula de um bloco de notas, use %pip install em vez disso.)

    pip install azure-ai-ml
    pip install azure-identity
    
  2. Forneça os detalhes da sua subscrição:

    # Enter details of your subscription
    subscription_id = "<SUBSCRIPTION_ID>"
    resource_group = "<RESOURCE_GROUP>"
  3. Obtenha um identificador para a assinatura. Todo o código Python neste artigo usa ml_client:

    # get a handle to the subscription
    
    from azure.ai.ml import MLClient
    from azure.identity import DefaultAzureCredential
    
    ml_client = MLClient(DefaultAzureCredential(), subscription_id, resource_group)
  4. (Opcional) Se tiveres várias contas, adiciona a ID do tenant da Microsoft Entra ID que desejas usar no DefaultAzureCredential. Encontre sua ID de locatário no portal do Azure em Microsoft Entra ID, Identidades Externas.

    DefaultAzureCredential(interactive_browser_tenant_id="<TENANT_ID>")
    
  5. (Opcional) Se estiver a trabalhar nas regiões Azure Government - US ou Azure China 21Vianet , especifique a região na qual pretende autenticar. Você pode especificar a região com DefaultAzureCredential. O exemplo a seguir autentica-se na região Azure Government nos EUA:

    from azure.identity import AzureAuthorityHosts
    DefaultAzureCredential(authority=AzureAuthorityHosts.AZURE_GOVERNMENT)
    

Criar o hub Foundry e a ligação Microsoft Foundry

Use os exemplos a seguir para criar um novo hub. Substitua valores de cadeia de caracteres de exemplo por seus próprios valores:

from azure.ai.ml.entities import Hub

my_hub_name = "myexamplehub"
my_location = "East US"
my_display_name = "My Example Hub"

# construct a basic hub
my_hub = Hub(name=my_hub_name, 
            location=my_location,
            display_name=my_display_name)

created_hub = ml_client.workspaces.begin_create(my_hub).result()

Criar uma ligação à Foundry

Depois de criares o teu próprio recurso Foundry ou Azure OpenAI no mesmo grupo de recursos, podes ligá-lo ao teu hub. Também pode ligar o Azure AI Search a partir de qualquer grupo de recursos na sua mesma subscrição.

  1. Sua ml_client conexão agora precisa incluir seu hub:

    • Forneça os detalhes da sua subscrição. Para <AML_WORKSPACE_NAME>, use o nome do hub:

      # Enter details of your AML workspace
      subscription_id = "<SUBSCRIPTION_ID>"
      resource_group = "<RESOURCE_GROUP>"
      workspace = "<AML_WORKSPACE_NAME>"
    • Pegue um identificador para o hub:

      # get a handle to the workspace
      from azure.ai.ml import MLClient
      from azure.identity import DefaultAzureCredential
      
      ml_client = MLClient(
          DefaultAzureCredential(), subscription_id, resource_group, workspace
      )
  2. Use ml_client para criar a ligação às suas ferramentas Foundry. Você pode encontrar pontos de extremidade no portal do Azure em >. Para um recurso de Foundry, use o endpoint Foundry Tools. Para a Pesquisa de IA do Azure, use a URL do ponto de extremidade.

    from azure.ai.ml.entities import AzureAIServicesConnection
    
    # construct a Foundry connection
    my_connection_name = "myaiservivce" # any name you want
    aiservices_resource_name = <resource_name> # copy from Azure portal
    my_endpoint = "<endpoint>" # copy from Azure portal
    my_api_keys = None # leave blank for Authentication type = AAD
    my_ai_services_resource_id = f"/subscriptions/{subscription_id}/resourceGroups/{resource_group}/providers/Microsoft.CognitiveServices/accounts/{aiservices_resource_name}"
    
    my_connection = AzureAIServicesConnection(name=my_connection_name,
                                        endpoint=my_endpoint, 
                                        api_key= my_api_keys,
                                        ai_services_resource_id=my_ai_services_resource_id)
    
    # Create the connection
    ml_client.connections.create_or_update(my_connection)
    

Criar um hub Foundry usando recursos de dependência existentes

Você também pode criar um hub usando recursos existentes, como o Armazenamento do Azure e o Cofre da Chave do Azure. Nos exemplos a seguir, substitua os valores de cadeia de caracteres de exemplo por seus próprios valores:

Sugestão

Você pode recuperar a ID do recurso da conta de armazenamento e do cofre de chaves do portal do Azure acessando a visão geral do recurso e selecionando o modo JSON. O ID do recurso está localizado no campo id . Você também pode usar a CLI do Azure para recuperar a ID do recurso. Por exemplo, az storage account show --name {my_storage_account_name} --query "id" e az keyvault show --name {my_key_vault_name} --query "id".

from azure.ai.ml.entities import Hub

my_hub_name = "myexamplehub"
my_location = "East US"
my_display_name = "My Example Hub"
my_resource_group = "myresourcegroupname"
my_storage_account_id = "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myresourcegroupname/providers/Microsoft.Storage/storageAccounts/mystorageaccountname"
my_key_vault_id = "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myresourcegroupname/providers/Microsoft.KeyVault/vaults/mykeyvaultname"

# construct a basic hub
my_hub = Hub(name=my_hub_name, 
            location=my_location,
            display_name=my_display_name,
            resource_group=my_resource_group,
            storage_account_id=my_storage_account_id,
            key_vault_id=my_key_vault_id)

created_hub = ml_client.workspaces.begin_create(my_hub).result()