Skip to content

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

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

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

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

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

備考

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

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

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

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

unzip <cm_pps_installer_*>.zip

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

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

bash ./cm_pps_installer.sh --help

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

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

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

PPSを使用した予測の実施

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

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

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

備考

提供されているDocker Composeファイルを利用するには、モデルのrequirements.txtファイルにdatarobot-mlopsパッケージ (必要に応じて追加の依存関係を使用して)を追加してください。

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

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

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

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

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

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

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

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

備考

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

以下は、予測リクエストとJSON応答の例を示しています。

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_FILESYSTEM_DIRECTORY モニタリングエージェントのファイルシステムスプーラー設定。 自動生成された値
MLOPS_RABBITMQ_QUEUE_URL モニタリングエージェントのRabbitMQスプーラー設定。 自動生成された値
MLOPS_RABBITMQ_QUEUE_NAME モニタリングエージェントのRabbitMQスプーラー設定。 自動生成された値
START_DELAY 監視エージェントを開始する前に遅延をトリガーします。 自動生成された値

DRUMベースの環境特徴量

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

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

RabbitMQサービスの環境特徴量

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

更新しました April 8, 2024