Compartir a través de


Creación de un centro mediante el SDK y la CLI de Azure Machine Learning

Importante

Los elementos marcados (versión preliminar) en este artículo se encuentran actualmente en versión preliminar pública. Esta versión preliminar se ofrece sin acuerdo de nivel de servicio y no se recomienda para las cargas de trabajo de producción. Es posible que algunas características no sean compatibles o que tengan sus funcionalidades limitadas. Para más información, consulte Términos de uso complementarios para las versiones preliminares de Microsoft Azure.

En este artículo, aprenderá a crear los siguientes recursos de Azure AI Foundry mediante el SDK de Azure Machine Learning y la CLI de Azure (con la extensión de aprendizaje automático):

  • Un centro de Fundición de IA de Azure
  • Una conexión de Servicios de Azure AI

Nota:

Un hub solo se usa para un proyecto centrado en el hub. Un proyecto Foundry no usa un hub. Para más información, vea Tipos de proyectos.

Prerrequisitos

Configuración del entorno

Use las pestañas siguientes para seleccionar si usa el SDK de Python o la CLI de Azure:

  1. Instalar paquetes. (Si está en una celda del cuaderno, use %pip install en su lugar).

    pip install azure-ai-ml
    pip install azure-identity
    
  2. Proporcione los detalles de la suscripción:

    # Enter details of your subscription
    subscription_id = "<SUBSCRIPTION_ID>"
    resource_group = "<RESOURCE_GROUP>"
  3. Obtenga un identificador para la suscripción. Todo el código de Python de este artículo 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) Si tiene varias cuentas, añada el ID de inquilino de Microsoft Entra ID que desea usar en DefaultAzureCredential. Busque el id. de inquilino en Azure Portal en Microsoft Entra ID, Identidades externas.

    DefaultAzureCredential(interactive_browser_tenant_id="<TENANT_ID>")
    
  5. (Opcional) Si va a trabajar en las regiones de Azure Government: Estados Unidos o Azure China 21Vianet, especifique la región en la que se quiere autenticar. Puede especificar la región con DefaultAzureCredential. En el ejemplo siguiente se realiza la autenticación en la región Azure Government - EE. UU.:

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

Creación de la conexión de Fundición de IA de Azure Hub y Servicios de IA

Use los ejemplos siguientes para crear un centro. Reemplace los valores de cadena de ejemplo por valores propios:

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()

Creación de una conexión de AI Foundry

Después de crear su propio recurso de AI Foundry o de Azure OpenAI en el mismo grupo de recursos, puede conectarlo al centro. También puede conectar Azure AI Search desde cualquier grupo de recursos de la misma suscripción.

  1. La conexión ml_client ahora debe incluir el centro:

    • Proporcione los detalles de la suscripción. Para <AML_WORKSPACE_NAME>, use el nombre del centro:

      # Enter details of your AML workspace
      subscription_id = "<SUBSCRIPTION_ID>"
      resource_group = "<RESOURCE_GROUP>"
      workspace = "<AML_WORKSPACE_NAME>"
    • Obtenga un manipulador para el centro:

      # 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 crear la conexión a los servicios de IA. Puede encontrar puntos de conexión en Azure Portal en Administración de recursos > Claves y puntos de conexión. Para un recurso de la Fundición de IA, use el punto de conexión de Servicios de IA. Para Azure AI Search, use la dirección URL del punto de conexión.

    from azure.ai.ml.entities import AzureAIServicesConnection
    
    # construct an AI Services 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)
    

Creación de un centro de Fundición de IA de Azure mediante recursos de dependencia existentes

También puede crear un centro mediante recursos existentes, como Azure Storage y Azure Key Vault. En los ejemplos siguientes, reemplace los valores de cadena de ejemplo por sus propios valores:

Sugerencia

Puede recuperar el identificador de recurso de la cuenta de almacenamiento y el almacén de claves desde Azure Portal; para ello, vaya a la información general del recurso y seleccione vista JSON. El identificador de recurso se encuentra en el campo id. También puede usar la CLI de Azure para recuperar el identificador de recurso. Por ejemplo, az storage account show --name {my_storage_account_name} --query "id" y 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()