外部からの MLflow トラッキング サーバーへのアクセス Databricks

独自のアプリケーションまたは MLflow CLI から MLflow トラッキング サーバーにログを記録できます。

この記事では、必要な構成手順について説明します。 まず、MLflow をインストールし、資格情報を構成します (ステップ 1)。 その後、アプリケーションを構成する (ステップ 2) か、MLflow CLI を構成する (ステップ 3) ことができます。

オープンソースの追跡サーバーを起動してログに記録する方法については、 オープンソースのドキュメントを参照してください。

ステップ 1: 環境 を構成する

Databricks アカウントをお持ちでない場合は、Databricks を無料で試すことができます。 「 はじめに: アカウントとワークスペースの設定」を参照してください。

Databricks でホストされている MLflow 追跡サーバーにアクセスするように環境を構成するには:

  1. pip install mlflowを使用してMLflowをインストールします。

  2. Databricks サブスクリプションに従って認証を構成します。

    • Community Edition. 次のいずれかの操作を行います。

      • (推奨) mlflow.login() を使用して、資格情報の入力を求められます。

        import mlflow
        
        mlflow.login()
        

        以下は応答の例です。 認証が成功すると、"Databricks に正常にサインインしました!" というメッセージが表示されます。

        2023/10/25 22:59:27 ERROR mlflow.utils.credentials: Failed to sign in Databricks: default auth: cannot configure default credentials
        Databricks Host (should begin with https://): https://community.cloud.databricks.com/
        Username: weirdmouse@gmail.com
        Password: ··········
        2023/10/25 22:59:38 INFO mlflow.utils.credentials: Successfully signed in Databricks!
        
      • 環境変数を使用して資格情報を指定します。

        # Configure MLflow to communicate with a Databricks-hosted tracking server
        export MLFLOW_TRACKING_URI=databricks
        # Specify your Databricks username & password
        export DATABRICKS_USERNAME="..."
        export DATABRICKS_PASSWORD="..."
        
    • Databricks プラットフォーム。 次のいずれかの操作を行います。

      • REST API トークンを生成しdatabricks configure --tokenを使用して資格情報ファイルを作成します

      • 環境変数を使用して資格情報を指定します。

        # Configure MLflow to communicate with a Databricks-hosted tracking server
        export MLFLOW_TRACKING_URI=databricks
        # Specify the workspace hostname and token
        export DATABRICKS_HOST="..."
        export DATABRICKS_TOKEN="..."
        # Or specify your Databricks username & password
        export DATABRICKS_USERNAME="..."
        export DATABRICKS_PASSWORD="..."
        

ステップ 2: MLflow アプリケーション を構成する

資格情報ファイルの作成時に --profile を使用してプロファイル名を指定した場合は 、追跡 URIdatabricksまたは databricks://<profileName>に設定して、Databricks にログを記録するように MLflow アプリケーションを構成します。たとえば、 MLFLOW_TRACKING_URI 環境変数を "databricks" に設定することでこれを実現できます。

ステップ 3: MLflow CLI を設定する

MLFLOW_TRACKING_URI 環境変数を使用して Databricks トラッキング サーバーと通信するように MLflow CLI を構成します。たとえば、CLI を使用してエクスペリメントを作成し、トラッキング URI databricksを実行するには、次のコマンドを実行します。

# Replace <your-username> with your Databricks username
export MLFLOW_TRACKING_URI=databricks
mlflow experiments create -n /Users/<your-username>/my-experiment