Nota
L'accés a aquesta pàgina requereix autorització. Pots provar d'iniciar sessió o canviar de directori.
L'accés a aquesta pàgina requereix autorització. Pots provar de canviar directoris.
Puede usar Paquetes de recursos de Databricks, la CLI de Databricks y el repositorio Databricks MLOps Stack en GitHub para crear pilas de MLOps. Una pila MLOps es un proyecto MLOps en Azure Databricks que sigue los procedimientos recomendados de producción listos para usar. Consulte ¿Qué son las agrupaciones de recursos de Databricks?
Esto muestra cómo crear, implementar y ejecutar un proyecto de agrupación de MLOps Stacks.
Requisitos
- Asegúrese de que el área de trabajo remota de destino tiene habilitados los archivos del área de trabajo. Consulte ¿Qué son los archivos del área de trabajo?
- En el equipo de desarrollo, asegúrese de que está instalada la versión 0.212.2 o posterior de la CLI de Databricks. Para comprobar la versión de la CLI de Databricks instalada, ejecute el comando
databricks -v. Para actualizar su versión de la CLI de Databricks, consulte Instalar o actualizar la CLI de Databricks. (Los paquetes no funcionan con la CLI de Databricks, versión 0.18 o inferior).
Paso 1 Configuración de la autenticación
Configure la CLI de Databricks para la autenticación.
En este artículo se da por supuesto que quiere usar la autenticación de usuario a máquina (U2M) de OAuth y un perfil de configuración de Azure Databricks correspondiente denominado DEFAULT para la autenticación.
Nota:
La autenticación U2M es adecuada para probar estos pasos en tiempo real. Para flujos de trabajo totalmente automatizados, Databricks recomienda usar la autenticación de máquina a máquina (M2M) de OAuth en su lugar. Consulte las instrucciones de configuración de autenticación M2M en Autorizar el acceso a Azure Databricks del principal de servicio con OAuth.
Use el CLI de Databricks para iniciar la administración de tokens de OAuth localmente mediante la ejecución del siguiente comando para cada área de trabajo de destino.
En el comando siguiente, reemplace
<workspace-url>por la dirección URL de Azure Databricks por área de trabajo, por ejemplo,https://adb-1234567890123456.7.azuredatabricks.net.databricks auth login --host <workspace-url>La CLI de Databricks le pide que guarde la información que especificó como un perfil de configuración de Azure Databricks. Presione
Enterpara aceptar el nombre del perfil sugerido o escriba el nombre de un perfil nuevo o existente. Cualquier perfil existente con el mismo nombre se sobrescribe con la información que especificó. Puede usar perfiles para cambiar rápidamente el contexto de autenticación entre varias áreas de trabajo.Para obtener una lista de los perfiles existentes, en un terminal o símbolo del sistema independiente, use la CLI de Databricks para ejecutar el comando
databricks auth profiles. Para ver la configuración existente de un perfil específico, ejecute el comandodatabricks auth env --profile <profile-name>.En el explorador web, complete las instrucciones en pantalla para iniciar sesión en el área de trabajo de Azure Databricks.
Para ver el valor actual del token de OAuth de un perfil y la próxima marca de tiempo de expiración del token, ejecute uno de los siguientes comandos:
databricks auth token --host <workspace-url>databricks auth token -p <profile-name>databricks auth token --host <workspace-url> -p <profile-name>
Si tiene varios perfiles con el mismo valor de
--host, es posible que tenga que especificar las opciones--hosty-ppara ayudar a la CLI de Databricks a encontrar la información correcta del token de OAuth coincidente.
Paso 2: Crear el proyecto de agrupación
Use plantillas de Conjunto de Recursos de Databricks para crear los archivos iniciales del proyecto MLOps Stacks. Para ello, ejecute el siguiente comando:
databricks bundle init mlops-stacksResponda a las preguntas en pantalla. Para obtener instrucciones sobre cómo responder a estas solicitudes, consulte Inicio de un nuevo proyecto en el repositorio de Databricks MLOps Stacks en GitHub.
La primera solicitud ofrece la opción de configurar los componentes de código de ML, los componentes de CI/CD o ambos. Esta opción simplifica la configuración inicial, ya que puede optar por crear solo los componentes que sean pertinentes inmediatamente. (Para configurar los otros componentes, vuelva a ejecutar el comando de inicialización.) Seleccione uno de los siguientes:
-
CICD_and_Project(valor predeterminado): configure tanto el código de ML como los componentes de CI/CD. -
Project_Only: Configurar solo componentes de código de ML. Esta opción es para que los científicos de datos empiecen a trabajar. -
CICD_Only: Configure solo componentes de CI/CD. Esta opción es para que los ingenieros de ML configuren la infraestructura.
Después de responder a todos los mensajes en pantalla, la plantilla crea los archivos de inicio del proyecto de MLOps Stacks y los agrega al directorio de trabajo actual.
-
Personalice los archivos de inicio del proyecto de MLOps Stacks según sea necesario. Para ello, siga las instrucciones de los siguientes archivos dentro del nuevo proyecto:
Rol Objetivo Documentación Primeros usuarios de este repositorio Descripción de la canalización de ML y la estructura de código en este repositorio README.mdCientífico de datos Introducción a la escritura de código de ML para un proyecto nuevo <project-name>/README.mdCientífico de datos Actualizar el código de ML de producción (por ejemplo, lógica de entrenamiento del modelo) para un proyecto existente docs/ml-pull-request.mdCientífico de datos Modificar los recursos de ML del modelo de producción (por ejemplo, entrenamiento de modelos o trabajos de inferencia) <project-name>/resources/README.mdMLOps/DevOps Configurar CI/CD para el proyecto de ML actual docs/mlops-setup.mdPara personalizar experimentos, las asignaciones dentro de una declaración de experimento corresponden a la carga de solicitud de la operación de creación del experimento, tal como se define en POST /api/2.0/mlflow/experiments/create en la referencia de la API REST, expresada en formato YAML.
Para personalizar trabajos, las asignaciones dentro de una declaración de trabajo corresponden a la carga de solicitud de la operación de creación del trabajo, tal como se define en POST /api/2.1/jobs/create en la referencia de la API REST, expresada en formato YAML.
Sugerencia
Puede definir, combinar e invalidar la configuración de los nuevos clústeres de trabajos en agrupaciones mediante las técnicas descritas en Invalidación con la configuración de destino.
Para personalizar modelos, las asignaciones dentro de una declaración de modelo corresponden a la carga de solicitud para la operación de creación del modelo en el Catálogo de Unity, tal como se define en POST /api/2.1/unity-catalog/models en la referencia de la API REST, expresada en formato YAML.
Para personalizar las canalizaciones, los mapeos dentro de la declaración de una canalización corresponden a la carga útil de solicitud de la operación para crear canalización, según se define en POST /api/2.0/pipelines en la referencia de la API REST, expresada en formato YAML.
Paso 3: Validar el proyecto de agrupación
Compruebe si la configuración de la agrupación es válida. Para ello, ejecute la CLI de Databricks desde la raíz del proyecto, donde databricks.yml se encuentra , como se indica a continuación:
databricks bundle validate
Si se devuelve un resumen de la configuración de la agrupación, indica que la validación se ha realizado correctamente. Si se devuelven errores, corrija los errores y repita este paso.
Paso 4: Implementar la agrupación
Implemente los recursos y artefactos del proyecto en el área de trabajo remota deseada. Para ello, ejecute la CLI de Databricks desde la raíz del proyecto, donde databricks.yml se encuentra , como se indica a continuación:
databricks bundle deploy -t <target-name>
Reemplace <target-name> por el nombre del destino deseado en el archivo databricks.yml, por ejemplo dev, test, staging o prod.
Paso 5: Ejecución del lote implementado
Los trabajos implementados del proyecto se ejecutan automáticamente según sus programaciones predefinidas. Para ejecutar un trabajo implementado inmediatamente, ejecute la CLI de Databricks desde la raíz del proyecto, donde databricks.yml se encuentra , como se indica a continuación:
databricks bundle run -t <target-name> <job-name>
- Reemplace
<target-name>por el nombre del destino deseado dentro del archivodatabricks.ymldonde se implementó el trabajo, por ejemplodev,test,stagingoprod. - Reemplace
<job-name>por el nombre del trabajo en uno de los archivos.ymlde<project-name>/databricks-resources, por ejemplobatch_inference_job,write_feature_table_jobomodel_training_job.
Aparece un vínculo al trabajo de Azure Databricks, que puede copiar en el explorador web para abrir el trabajo en la interfaz de usuario de Azure Databricks.
Paso 6: Eliminar el lote implementado (opcional)
Para eliminar los recursos y artefactos de un proyecto implementado si ya no los necesita, ejecute la CLI de Databricks desde la raíz del proyecto, donde databricks.yml se encuentra , como se indica a continuación:
databricks bundle destroy -t <target-name>
Reemplace <target-name> por el nombre del destino deseado en el archivo databricks.yml, por ejemplo dev, test, staging o prod.
Responda a las indicaciones en pantalla para confirmar la eliminación de los recursos y artefactos implementados anteriormente.