Compartir vía


Adición de un recurso de experimento de MLflow a una aplicación de Databricks

Agregue experimentos de MLflow como recursos de Databricks Apps para habilitar el seguimiento de experimentos de aprendizaje automático dentro de las aplicaciones. Los experimentos de MLflow proporcionan una manera estructurada de organizar y registrar ejecuciones de entrenamiento, realizar un seguimiento de los parámetros, las métricas y los artefactos a lo largo del ciclo de vida de desarrollo del modelo.

Al agregar un experimento de MLflow como un recurso, la aplicación puede hacer lo siguiente:

  • Registrar las ejecuciones de entrenamiento con parámetros y métricas
  • Recuperación de datos de experimentos y comparación del rendimiento del modelo
  • Acceso a metadatos del experimento y historial de ejecución
  • Administración del ciclo de vida de ML mediante programación

Adición de un recurso de experimento de MLflow

Antes de agregar un experimento de MLflow como recurso, revise los requisitos previos de los recursos de la aplicación.

  1. Al crear o editar una aplicación, vaya al paso Configurar .
  2. En la sección Recursos de la aplicación, haga clic en + Agregar recurso.
  3. Seleccione Experimento de MLflow como tipo de recurso.
  4. Elija un experimento de MLflow en la lista de experimentos disponibles en el área de trabajo.
  5. Seleccione el nivel de permiso adecuado para la aplicación:
    • Puede leer: Concede permiso a la aplicación para ver los metadatos del experimento, las ejecuciones, los parámetros y las métricas. Se usa para aplicaciones que muestran los resultados del experimento.
    • Puede editar: Concede permiso a la aplicación para modificar la configuración y los metadatos del experimento.
    • Puede administrar: Concede a la aplicación acceso administrativo completo al experimento.
  6. (Opcional) Especifique una clave de recurso personalizada, que es la forma en que hace referencia al experimento en la configuración de la aplicación. La clave predeterminada es experiment.

Al agregar un recurso de experimento de MLflow:

  • Azure Databricks otorga a la principal de servicio de la aplicación los permisos definidos para el experimento seleccionado.
  • La aplicación puede registrar ejecuciones de entrenamiento y acceder a los datos del experimento a través de la API de seguimiento de MLflow.
  • El acceso está limitado únicamente al experimento seleccionado. La aplicación no puede acceder a otros experimentos a menos que los agregue como recursos independientes.

Variables de entorno

Al implementar una aplicación con un recurso de experimento de MLflow, Azure Databricks expone el identificador del experimento a través de variables de entorno, a las cuales puede referirse usando el campo valueFrom en su configuración app.yaml.

Configuración de ejemplo:

env:
  - name: MLFLOW_EXPERIMENT_ID
    valueFrom: experiment # Use your custom resource key if different

Con el identificador del experimento en tu aplicación:

import os
import mlflow

# Access the experiment using the injected environment variable
experiment_id = os.getenv("MLFLOW_EXPERIMENT_ID")

# Set the experiment for tracking
mlflow.set_experiment(experiment_id=experiment_id)

# Log parameters and metrics
with mlflow.start_run():
    mlflow.log_param("learning_rate", 0.01)
    mlflow.log_metric("accuracy", 0.95)
    mlflow.log_artifact("model.pkl")

Para obtener más información, consulte Access environment variables from resources (Acceso a variables de entorno desde recursos).

Eliminación de un recurso de experimento de MLflow

Al quitar un recurso de experimento de MLflow de una aplicación, la entidad de servicio de la aplicación pierde el acceso al experimento. El propio experimento permanece sin cambios y sigue estando disponible para otros usuarios y aplicaciones que tienen los permisos adecuados.

procedimientos recomendados

Siga estos procedimientos recomendados al trabajar con recursos del experimento de MLflow:

  • Organice los experimentos lógicamente por proyecto o tipo de modelo para mejorar la detectabilidad.
  • Use convenciones de nomenclatura coherentes para ejecuciones y parámetros en toda la organización.
  • Considere la posibilidad de usar directivas de retención de experimentos y administración de almacenamiento para proyectos de ejecución prolongada.