Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
SE APLICA A:
SDK de Azure Machine Learning v1 para Python
Importante
En este artículo se proporciona información sobre el uso del SDK de Azure Machine Learning v1. EL SDK v1 está en desuso a partir del 31 de marzo de 2025. El soporte técnico finalizará el 30 de junio de 2026. Puede instalar y usar SDK v1 hasta esa fecha. Los flujos de trabajo existentes que usan SDK v1 seguirán funcionando después de la fecha de finalización del soporte técnico. Sin embargo, podrían estar expuestos a riesgos de seguridad o cambios significativos si se producen cambios de arquitectura en el producto.
Se recomienda realizar la transición al SDK v2 antes del 30 de junio de 2026. Para más información sobre SDK v2, consulte ¿Qué es la CLI de Azure Machine Learning y el SDK de Python v2? y la referencia del SDK v2.
Advertencia
La integración de Azure Synapse Analytics con Azure Machine Learning, disponible en el SDK de Python v1, está en desuso. Los usuarios todavía pueden usar el área de trabajo de Synapse, registrada con Azure Machine Learning, como servicio vinculado. Sin embargo, ya no se puede registrar una nueva área de trabajo de Synapse con Azure Machine Learning como servicio vinculado. Se recomienda usar el proceso de Spark sin servidor y los grupos de Synapse Spark conectados, disponibles en la CLI v2 y el SDK de Python v2. Para más información, visite https://aka.ms/aml-spark.
En este artículo, aprenderá a crear un servicio vinculado que vincule el área de trabajo de Azure Synapse Analytics y el área de trabajo de Azure Machine Learning.
Con un área de trabajo de Azure Machine Learning, vinculada a un área de trabajo de Azure Synapse, puede adjuntar un grupo de Apache Spark, con tecnología de Azure Synapse Analytics, como un recurso de proceso dedicado. Puede usar este recurso para la limpieza y transformación de datos a escala, o bien puede realizar el entrenamiento del modelo, todo ello desde el mismo cuaderno de Python.
Puede vincular ambas áreas de trabajo mediante el SDK de Python o el Estudio de Azure Machine Learning. También puede vincular áreas de trabajo, y adjuntar un grupo de Spark de Synapse, con una sola plantilla de Azure Resource Manager (ARM).
Requisitos previos
Instale el SDK de Azure Machine Learning para Python.
Creación de un grupo de Apache Spark mediante Azure Portal, herramientas web o Synapse Studio
Vinculación de áreas de trabajo con el SDK de Python
Importante
Para vincular correctamente el área de trabajo de Synapse, debe tener el rol Propietario en ella. Compruebe el acceso en Azure Portal.
Si solo es colaborador del área de trabajo de Synapse y no tiene un propietario para ese área de trabajo de Synapse, solo puede usar los servicios vinculados existentes. Para obtener más información, visite Recuperar y usar un servicio vinculado existente.
Este código emplea las clases LinkedService y SynapseWorkspaceLinkedServiceConfiguration, para
- Vincular el área de trabajo de Machine Learning
wscon el área de trabajo de Azure Synapse - Registrar el área de trabajo de Synapse con Azure Machine Learning como servicio vinculado
import datetime
from azureml.core import Workspace, LinkedService, SynapseWorkspaceLinkedServiceConfiguration
# Azure Machine Learning workspace
ws = Workspace.from_config()
#link configuration
synapse_link_config = SynapseWorkspaceLinkedServiceConfiguration(
subscription_id=ws.subscription_id,
resource_group= 'your resource group',
name='mySynapseWorkspaceName')
# Link workspaces and register Synapse workspace in Azure Machine Learning
linked_service = LinkedService.register(workspace = ws,
name = 'synapselink1',
linked_service_config = synapse_link_config)
Importante
Se crea una identidad administrada system_assigned_identity_principal_id para cada servicio vinculado. Debe conceder a esta identidad administrada el rol Administrador de Apache Spark de Synapse del área de trabajo de Synapse antes de iniciar la sesión de Synapse. Para más información, visite Administración de asignaciones de RBAC de Azure Synapse en Synapse Studio.
Utilice LinkedService.get('<your-mlworkspace-name>', '<linked-service-name>') para localizar el valor system_assigned_identity_principal_id de un servicio vinculado específico.
Administración de servicios vinculados
Consulte todos los servicios vinculados asociados con el área de trabajo de Machine Learning:
LinkedService.list(ws)
Para desvincular las áreas de trabajo, use el método unregister():
linked_service.unregister()
Vinculación de áreas de trabajo por medio de Estudio
Vincule el área de trabajo de Machine Learning y el área de trabajo de Synapse mediante Estudio de Azure Machine Learning:
Inicie sesión en Azure Machine Learning Studio.
Seleccione Servicios vinculados en la sección Administrar del panel izquierdo
Seleccione Agregar integración
Rellene los campos del formulario Vincular área de trabajo.
Campo Descripción Nombre Indique un nombre para el servicio vinculado. Las referencias a este servicio vinculado específico usan este nombre Nombre de suscripción Seleccione el nombre de la suscripción asociada al área de trabajo de Machine Learning Área de trabajo de Synapse Seleccione el área de trabajo de Synapse a la que desea vincular Seleccione Siguiente para abrir el formulario Selección de los grupos de Spark (opcional). En este formulario, seleccione el grupo de Spark de Synapse que se va a asociar al área de trabajo.
Seleccione Siguiente para abrir el formulario Revisar y comprobar las selecciones
Seleccione Crear para completar el proceso de creación del servicio vinculado
Obtención de un servicio vinculado existente
Para poder adjuntar un proceso dedicado para la limpieza de datos, debe tener un área de trabajo de Machine Learning vinculada a un área de trabajo de Azure Synapse Analytics. Nos referimos a este área de trabajo como un servicio vinculado. La recuperación y el uso de un servicio vinculado existente requieren permisos de Usuario o Colaborador en el área de trabajo de Azure Synapse Analytics.
En este ejemplo se recupera un servicio vinculado existente ( synapselink1 ) del área de trabajo ws, con el método get():
from azureml.core import LinkedService
linked_service = LinkedService.get(ws, 'synapselink1')
Asociación de un grupo de Spark de Synapse como proceso
Después de recuperar el servicio vinculado, conecte un grupo de Apache Spark de Synapse como recurso de proceso dedicado para las tareas de limpieza y transformación de datos. Puede asociar grupos de Apache Spark con
- Azure Machine Learning Studio
- Plantillas de Azure Resource Manager (ARM)
- El SDK de Azure Machine Learning para Python
Conexión de un grupo mediante el Estudio de Azure Machine Learning
- Inicie sesión en Azure Machine Learning Studio.
- Seleccione Servicios vinculados en la sección Administrar del panel izquierdo
- Seleccione el área de trabajo de Synapse
- Seleccione grupos de Spark conectados en la parte superior izquierda
- Seleccione Attach (Asociar).
- Seleccione el grupo de Spark de Synapse en la lista y proporcione un nombre
- Esta lista identifica los grupos de Synapse Spark disponibles que se pueden asociar al proceso
- Para crear un nuevo grupo de Synapse Spark, consulte Inicio rápido: creación de un nuevo grupo de Apache Spark sin servidor mediante Azure Portal
- Seleccione Asociar selección
Conexión de un grupo mediante el SDK para Python
También puede emplear el SDK de Python para adjuntar un grupo de Apache Spark, como se muestra en este ejemplo de código:
from azureml.core.compute import SynapseCompute, ComputeTarget
attach_config = SynapseCompute.attach_configuration(linked_service, #Linked synapse workspace alias
type='SynapseSpark', #Type of assets to attach
pool_name=synapse_spark_pool_name) #Name of Synapse spark pool
synapse_compute = ComputeTarget.attach(workspace= ws,
name= synapse_compute_name,
attach_configuration= attach_config
)
synapse_compute.wait_for_completion()
Compruebe que el grupo de Apache Spark está conectado.
ws.compute_targets['Synapse Spark pool alias']
Este código
Configura el
SynapseComputecon- El
LinkedService,linked_serviceque creó o recuperó en el paso anterior - El tipo de destino de proceso que desea adjuntar, en este caso,
SynapseSpark - Nombre del grupo de Apache Spark. El nombre debe coincidir con un grupo de Apache Spark existente en el área de trabajo de Azure Synapse Analytics
- El
Crea un
ComputeTargetde aprendizaje automático pasando- El área de trabajo de Machine Learning que desea usar,
ws. - El nombre que desea usar para hacer referencia al proceso en el área de trabajo de Azure Machine Learning
- El attach_configuration que especificó al configurar el proceso de Synapse
- La llamada a ComputeTarget.attach() es asincrónica, por lo que la ejecución de ejemplo se bloquea hasta que se completa la llamada
- El área de trabajo de Machine Learning que desea usar,
Pasos siguientes
- Limpieza y transformación de datos con grupos de Apache Spark (en desuso)
- Cómo usar Apache Spark (con tecnología de Azure Synapse Analytics) en la canalización de aprendizaje automático (en desuso)
- Configuración y envío de trabajos de entrenamiento.
- Integración segura de Azure Machine Learning y Azure Synapse