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

September 25, 2024

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

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

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

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

Databricks アカウントをお持ちでない場合は、Databricks を無料でお試しいただけます。 「Databricks の使用を開始する」を参照してください。

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

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

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

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

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

        Python
        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!
        
      • 環境変数を使用して資格情報を指定します。

        Bash
        # 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を使用して資格情報ファイルを作成します

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

        Bash
        # 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="..."
        

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

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

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

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

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