Skip to content

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

MLOpsエージェント

本機能の提供について

MLOpsエージェントは、DataRobot MLOps専用の機能です。この機能を有効にする方法については、DataRobotの担当者にお問い合わせください。

DataRobot MLOpsは、予測に使用するモデルの追跡および管理を行うための強力なツールを提供します。しかし、独自の環境でデプロイを既に実行している場合はどうでしょうか。これらのツールを使用して、断続する接続(または接続のない)外部モデルをモニタして、予測を必要な時にレポートすることはできるのでしょうか。

MLOpsエージェントを使用すると、外部モデルを監視および管理できます(DataRobot MLOpsの外部で実行されているモデルなど)。この機能を使用すると、これらのモデルからの予測と情報をMLOpsデプロイの一部として報告できます。同じ強力なモデル管理ツールを使用して、モデルが実行される場所に関係なく、精度、データドリフト、予測分布、レイテンシーなどをモニタできます。DataRobot MLOpsに提供されたデータは、外部でデプロイされたモデルのパフォーマンスおよび正常性に関する有用なインサイトを提供します。

MLOpsエージェントは以下を提供します。

  • 単一のシステムにデプロイされたすべてのモデルのインサイトを管理、モニタ、および取得する機能。
  • 外部モデルをモニタする際の遅延を最小限に抑えることのできるAPIおよび通信。
  • ネットワークおよびMLOpsシステムに常時接続されるデプロイに加えて、断続的に接続されるデプロイや接続されないデプロイのサポート。
  • MLOpsライブラリは、Python、Java、およびRで使用できます。これらの言語でネイティブに記述されたモデルを監視することにも、任意の言語でモデルアーティファクトの入出力をレポートすることにも使用できます。

MLOpsエージェントの使用の詳細については、次のセクションを参照してください。

MLOpsエージェントtarballのダウンロード

MLOpsエージェントのtarballは、開発者ツールページ、または外部モデルを監視するために設定されたデプロイの予測 > モニタリングタブからダウンロードできます。

MLOpsエージェントのコンポーネント

MLOpsエージェントを有効にすると、エージェントのインストール、および単一のtarファイルにパッケージ化されたMLOpsコンポーネントにアクセスできます。次の図は、DataRobot MLOpsで外部モデルを管理する際の各コンポーネントの役割を示します。

外部モデル(1)は、ユーザーの環境、つまりDataRobotの外部で実行する機械学習モデルです。デプロイ(Python、JavaまたはRで実行)はデータのスコアリングを行い、その他の情報(作成された予測の数、各予測の作成時間など)と共に予測が生成されます。

Python(v2およびv3)、Java、およびRで使用可能なMLOpsライブラリ(2)は、(デプロイIDおよびモデルIDで識別される)指定されたデプロイからの予測データおよび情報をレポートするAPIを提供します。MLOpsクライアントに対してサポートされているライブラリ呼び出しでは、MLOpsサービスにレポートするデータを指定できます(予測時間、予測の数、その他の予測およびデプロイ統計など)。ライブラリは、設定した場所(3)にメッセージをバッファ処理するAPIを提供します。MLOpsライブラリに加えて、tarアーカイブには、以下のことを目的としたPython、JavaおよびR APIのサンプルおよび関連データセットが含まれています。

  • 連続値および分類の両方のモデルの(サンプル)予測を生成するデプロイを作成します。
  • MLOpsライブラリを使用したデプロイからの指標をレポートします。

また、以下を目的としたスクリプトも含まれています。

  • エージェントを開始および停止し、現在のエージェントステータスを取得します。
  • トレーニングデータセットをアップロードし、デプロイIDとモデルIDを返すリモートデプロイを作成します。
  • 環境変数を保存するためのファイルを作成します。

MLOpsエージェント(4)は、ターゲットバッファの場所に書き込まれたデータを検出して、MLOpsサービス(5)にレポートします。エージェントがサービスとして実行されている場合、データは使用可能になるとすぐに取得されます。そうでない場合、予測データは手動で実行されたときに取得されます。

モデルがネットワークから隔絶、切断された場所で実行されている場合、MLOpsライブラリはバッファディレクトリからネットワークにアクセスできません。そのようなデプロイでは、必要に応じてUSBドライブを使用してバッファの場所から予測データを手動でコピーできます。エージェントは、設定されたとおりにそのデータにアクセスし、MLOpsサービスにレポートします。

追加のエージェント設定では、データの読み取り元とレポート先、データをレポートする頻度などを指定できます。柔軟なMLOpsエージェントの設計により、さまざまなデプロイおよび環境の要件がサポートされます。

最後に、デプロイインベントリから、デプロイを表示し、予測統計と指標を表示および管理できます。

エージェントの仕組み

このセクションでは、さまざまな環境からMLOpsエージェントを使用するための基本的なワークフローの概要を説明します。

DataRobot MLOpsの使用:

  1. モデルレジストリを使用して、モデルのメタデータに関する情報を含むモデルパッケージを作成します。
  2. モデルパッケージをデプロイ。デプロイを作成して、実行中のモデルに関する指標を表示します。
  3. デプロイインテグレーションタブをクリックし、エージェントを使用して指標をレポートして、予測コードをインストルメント化する方法を示すコードスニペットを表示します。

リモートデプロイ環境の使用:

  1. DataRobot MLOpsエージェントをインストールします。
  2. スニペットに示されているように、MLOpsライブラリを使用して、予測コードから指標をレポートします。MLOpsライブラリは、スプーラーに指標をバッファ処理するため、デプロイを遅くすることなく高スループットを可能にします。使用するスプーラーのタイプは、環境によって異なります。現在、スプーラーはローカルファイルシステム、RabbitMQ、Amazon SQS、またはGoogle PubSubにすることができます。
  3. MLOpsエージェントは指標をDataRobot MLOpsに転送します。
  4. 報告された指標は、DataRobot MLOpsデプロイインベントリで表示されます。


更新しました December 8, 2021
Back to top