El programa de instalación de Mlflow backend (SQLite) y artefactos (Azure Blob Storage) tiendas

0

Pregunta

Me gustaría instalación Mlflow tener los siguientes componentes :

  • Backend de la tienda (local) : el uso de una base de datos SQLite localmente para almacenar Mlflow entidades (run_id, parámetros, indicadores...)
  • Artefacto de almacén (control remoto) : el uso de un almacenamiento de blobs en mi Azure Datos Lago de Almacenamiento Gen2 para almacenar los archivos de salida (versionada conjuntos de datos, serializado modelos, imágenes, ...) relacionados con mi modelo
  • Servidor de seguimiento : mediante el uso de algo que se parece a este comando

z

mlflow server --backend-store-uri sqlite:///C:\sqlite\db\mlruns.db --default-artifact-root wasbs://container-name@storage_account_name.blob.core.windows.net/mlartifacts -h 0.0.0.0 -p 8000

Donde mlruns.db es una base de datos que he creado en SQLite (dentro de una carpeta db) y mlartifacts es la carpeta que he creado en el interior del contenedor de blobs para recibir todos los archivos de salida.

Puedo ejecutar este comando y, a continuación, hago y mlflow ejecutar (o un kedro ejecutar como estoy usando Kedro) pero casi no pasa nada. La base de datos se llena con 12 mesas, pero todos vacío mientras que nada de lo que sucede dentro de los Datos lago.

Lo que quiero debe verse como Escenario 4 en la documentación.

Para el artefacto de la tienda, no pude encontrar instrucciones detalladas. Traté de mirar en Mlflow la documentación de aquí , pero esto no es muy útil (yo todavía soy un principiante). Dicen que:

MLflow espera Azure Almacenamiento de credenciales de acceso en el AZURE_STORAGE_CONNECTION_STRING, AZURE_STORAGE_ACCESS_KEY variables de entorno o de tener sus credenciales configurada de forma tal que el DefaultAzureCredential(). la clase puede recoger.

Sin embargo, incluso cuando la adición de la env variables, nada parece ser almacenados en el data lago. He creado dos env variables (en Windows 10):

  • AZURE_STORAGE_ACCESS_KEY = wasbs://container-name@storage_account_name.blob.core.windows.net/mlartifacts

  • AZURE_STORAGE_CONNECTION_STRING = DefaultEndpointsProtocol=https;AccountName=storagesample;AccountKey=. Tengo que siguiendo este camino, en el Portal de Azure : cuenta de Almacenamiento/teclas de Acceso/Conexión de cadena (lo que llevó a la una de la tecla 2).

También afirman que :

Además, debe ejecutar el pip install azure de almacenamiento blob por separado (en ambos el cliente y el servidor) para el acceso de Azure Blob de Almacenamiento. Por último, si desea utilizar DefaultAzureCredential, debe instalar pip azure de identidad; MLflow no declarar una dependencia de estos paquetes por defecto.

He añadido en mi requerimientos del proyecto, pero ¿qué significan exactamente por la instalación en el cliente y en el servidor ? Cómo azure-identidad de ayuda en la instalación ?

Podría usted por favor me ayude con un paso a paso las instrucciones sobre cómo hacer la instalación completa ?

Gracias de antemano !

azure mlflow mlops python
2021-11-23 16:46:18
1

Mejor respuesta

2

Sólo se necesita establecer AZURE_STORAGE_CONNECTION_STRING, AZURE_STORAGE_ACCESS_KEY es opcional si la primera variable de entorno se utiliza (de todos modos, AZURE_STORAGE_ACCESS_KEY no debe ser la URL, pero real de la clave de acceso).

Con respecto a azure-storage-blob el paquete debe estar instalado en el servidor donde se ejecuta el mlflow servery en la misma máquina donde ejecuta su formación (cliente).

2021-11-27 11:41:33

Gracias por tu respuesta ! Tienes razón sobre el AZURE_STORAGE_ACCESS_KEY, no sé por qué me dio este error. En última instancia, no fue tomado en cuenta en mi caso como me AZURE_STORAGE_CONNECTION_STRING. Por fin he conseguido hacer que funcione mediante el uso de doble barra diagonal inversa y utilizando el puerto 5000 ==> mlflow server --backend-store-uri sqlite:///C:\\sqlite\\db\\mlruns.db --default-artifact-root wasbs://container-name@storage_account_name.blob.core.windows.net/mlartifacts -h 0.0.0.0 -p 5000
Downforu

En otros idiomas

Esta página está en otros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Slovenský
..................................................................................................................