Skip to content

アプリケーション内で をクリックすると、お使いのDataRobotバージョンに関する全プラットフォームドキュメントにアクセスできます。

カスタムモデルのポータブル予測サーバー

カスタムモデルのポータブル予測サーバー(PPS)は、カスタムモデルを外部予測環境にデプロイするためのソリューションです。PPSは、メインのインストール環境に接続せずに構築および実行できます。PPSは、デプロイされたカスタムモデル、カスタム環境、およびMLOpsエージェントを含むダウンロード可能なバンドルとして利用できます。起動すると、カスタムモデルPPSインストールは、DataRobot REST APIを使用して予測を提供します。

カスタムモデルPPSバンドルのダウンロードと設定

カスタムモデルPPSバンドルは、デプロイインベントリ内に外部予測環境があることを示すタグが付けられたカスタムモデルがある場合に提供されます。

備考

続行する前に、DataRobotはPPS向けのLinuxベースの予測環境をサポートしていることに留意してください。他のUnixベースの予測環境を使用できますが、検定済みで公式にサポートされているのはLinuxベースのシステムのみです。

使用するカスタムモデルを選択し、デプロイの予測 > ポータブル 予測タブに移動して、ポータブル予測パッケージをダウンロードを選択します。

または、コンテンツを1つのバンドルでダウンロードする代わりに、カスタムモデル、カスタム環境、またはMLOpsエージェントを個別のコンポーネントとしてダウンロードすることもできます。

.zipファイルをダウンロードした後、解凍コマンドを使用してローカルに抽出します。

unzip <cm_pps_installer_*>.zip

次に、インストールスクリプト(バンドルから解凍)にアクセスして、MLOpsエージェントをサポートするカスタムモデルPPSを構築します。このためには、手順2で表示されたコマンドを実行します。

MLOpsエージェントのDockerイメージのインストールをスキップする機能など、その他の構築オプションについては、次を実行します。

bash ./cm_pps_installer.sh --help

構築がエラーなしで合格すると、ローカルのDockerレジストリに2つの新しいDockerイメージが追加されます。

  • cm_pps_XYZはカスタムモデルとカスタム環境を組み合わせたイメージです。

  • datarobot/mlops-tracking-agentはMLOpsエージェントのDockerイメージであり、予測統計をDataRobotに報告するために使用されます。

PPSを使用した予測の実施

カスタムモデルPPSの使用を開始できるよう、DataRobotにはバンドル内に2つのDocker構成設定の例が用意されています。

  • docker-compose-fs.yml:モデルコンテナとMLOpsエージェントコンテナの間でファイルシステムベースのスプーラーを使用します。単一モデルに推奨されます。

  • docker-compose-rabbit.yml:モデルコンテナとMLOpsエージェントコンテナの間でRabbitMQベースのスプーラーを使用します。この設定を使用して、単一のMLOpsエージェントインスタンスで複数のモデルを実行できます。

使用する設定を選択したら、Docker構成ファイルを編集して、対応するフィールドにデプロイIDとAPIキーを含めます。

設定が完了したら、予測サーバーを起動します。

  • ファイルシステムベースのスプーラーを使用する単一モデルの場合、次のコマンドを実行します。

    docker-compose -f docker-compose-fs.yml up

  • 単一のMLOpsエージェントインスタンスを持つ複数モデルの場合は、RabbitMQベースのスプーラーを使用します。

    docker-compose -f docker-compose-rabbit.yml up

PPSが実行している場合、Dockerイメージは3つのHTTPエンドポイントを公開します。

  • POST /predictionsは、所定のデータセットをスコアリングします。
  • GET /infoは、ロードされたモデルに関する情報を返します。
  • GET /pingは、技術スタックが起動していることを確認します。

備考

予測ルートは、スコアリングデータセットとしてカンマ区切りのCSVおよびJSONレコードのみサポートしています。最大ペイロードサイズは50 MBです。

以下に、サンプルの予測リクエストを示します。

curl -X POST http://localhost:6788/predictions/ -H "Content-Type: text/csv" --data-binary @path/to/scoring.csv

{
    "data": [{
            "prediction": 23.03329917456927,
            "predictionValues": [{
                "label": "MEDV",
                "value": 23.03329917456927
            }],
            "rowId": 0
        },
        {
            "prediction": 33.01475956455371,
            "predictionValues": [{
                "label": "MEDV",
                "value": 33.01475956455371
            }],
            "rowId": 1
        },
    ]
}

MLOps環境変数

次の表に、PPSを使用するすべてのカスタムモデルでサポートされているMLOpsサービス環境変数を示します。使用する実行環境に基づいて、これらの設定を調整することをお勧めします。

特徴量 説明 デフォルト
MLOPS_SERVICE_URL 実行中のDataRobotアプリケーションのアドレス。 自動生成された値
MLOPS_API_TOKEN DataRobot APIトークン。 未定義。指定する必要があります。
MLOPS_SPOOLER_TYPE カスタムモデルおよびMLOpsエージェントで使用されるスプーラーのタイプ。 自動生成された値
MLOPS_FILESYSTEM_DIRECTORY MLOpsエージェントのファイルシステムスプーラー設定。 自動生成された値
MLOPS_RABBITMQ_QUEUE_URL MLOpsエージェントのRabbitMQスプーラー設定。 自動生成された値
MLOPS_RABBITMQ_QUEUE_NAME MLOpsエージェントのRabbitMQスプーラー設定。 自動生成された値
START_DELAY MLOpsエージェントを開始する前に遅延をトリガーします。 自動生成された値

DRUMベースの環境変数

次の表に、DRUMベースのカスタム環境でサポートされている環境変数を示します。

特徴量 説明 デフォルト
ADDRESS 予測サーバーの開始アドレス。 0.0.0.0:6788
MODEL_ID デプロイされたモデルのID(監視に必要)。 自動生成された値
DEPLOYMENT_ID デプロイのID。 未定義。指定する必要があります。
MONITOR MLOpsの監視を有効にするフラグ。 True。空の値を指定するか、この特徴量を削除して監視を無効にします。
MONITOR_SETTINGS MLOpsエージェントスプーラーの設定。 自動生成された値

RabbitMQサービスの環境変数

特徴量 説明 デフォルト
RABBITMQ_DEFAULT_USER デフォルトのRabbitMQユーザー。 自動生成された値
RABBITMQ_DEFAULT_PASS デフォルトのRabbitMQパスワード。 自動生成された値

更新しました February 22, 2022
Back to top