Skip to content

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

カスタム環境

カスタムタスクは、DataRobotにアップロードされると、Kubernetes上で動作するDockerコンテナという環境の中で実行されます。つまり、DataRobotは、カスタムタスクを定義するアップロードされたファイルをコンテナにコピーします。

DataRobotにはさまざまなビルトイン環境が用意されているので、ほとんどの場合、カスタム環境を追加する必要はありません。タスクのコードを記載したrequirements.txtファイルをアップロードすることにより、これらの環境にPythonやRのパッケージを容易に追加できます。カスタム環境が必要なのは、カスタムタスクが次の状況にある場合だけです。

  • 追加のLinuxパッケージが必要な状況。
  • 別のオペレーティングシステムが必要な状況。
  • Python、R、Java以外の言語を使用する状況。

このドキュメントでは、これらのケースでカスタム環境を構築する方法について説明します。

必要条件

カスタム環境をローカルでテストするには、DRUMのインストールドキュメントに記載されている通りに、Docker DesktopとDataRobotの両方のユーザーモデル(DRUM)のCLIツールをマシンにインストールします。

環境の作成

DRUMのインストールが完了したら、GitHubにある例の1つをコピーして環境作成を開始します。 このリンクをクリックする前にGitHub にログインしてください。 以下を確認してください。

  1. 環境コードは単一のフォルダーに保存されます。
  2. env_info.jsonファイルを削除します。

Linuxパッケージの追加

Linuxパッケージを環境に追加するには、dockerfileの先頭の、FROM datarobot…の行の直後にコードを追加します。

Ubuntuベース用のdockerfile構文を使用します。 例えば、次のコマンドはDataRobotにどのベースを使用するかを指示し、そしてDockerイメージ内にパッケージfooboomooをインストールするよう指示します。

FROM datarobot/python3-dropin-env-base 
RUN apt-get update --fix-missing && apt-get install foo boo moo

Python/Rパッケージの追加

場合によっては、Python/Rのパッケージを環境に含めたい場合があります。その場合は、以下の点に注意してください。

  • インストールするパッケージをrequirements.txtに表示します。Rパッケージの場合、バージョンはリストに含めません。

  • PythonとRのパッケージを同じrequirements.txtファイルに混在させないでください。その代わり、複数のファイルを作成し、dockerfileを調整して、DataRobotがそれらを見つけて使用できるようにします。

カスタムタスクのドキュメントで、requirements.txtファイルの説明と例を参照してください。

ローカルで環境をテストする

次の例では、DockerツールとDRUMを使って環境をすばやくテストする方法を示しています。

  1. カスタムタスクをカスタム環境と一緒にテストするには、タスクの内容が保存されているローカルフォルダーに移動します。

  2. 以下を実行し、< >ブラケットの中のプレースホルダー名を実際の名前に置き換えてください。

    drum fit --code-dir <path_to_task_content> --docker <path_to_a_folder_with_environment_code> --input <path_to_test_data.csv> --target-type <target_type> --target <target_column_name> --verbose
    

新しい環境を使用する

テストした環境を使用するには、その環境をDataRobotにアップロードしてタスクに適用します。作成した環境を共有してダウンロードすることもできます。

DataRobotにアップロードする

モデルレジストリ> カスタムモデルワークショップ > 環境 > 新しい環境を追加から、DataRobotにカスタム環境をアップロードします。環境をアップロードすると、他の個人と共有しない限り、その環境は自分だけが利用できます。

既存の環境に変更を加える場合は、新しいバージョンを作成します。

タスクに追加

新しい環境をカスタムタスクで使用するには、次のようにします。

  1. モデルレジストリ > カスタムモデルワークショップ > タスク に移動し、クリックして既存のタスクを選択します。

  2. 基本環境のドロップダウンから新しい環境を選択します。

環境での作業

各カスタム環境およびビルトイン環境に関連するさまざまな情報を閲覧できるほか、コンテンツのダウンロードも可能です。_カスタム_環境では、コンテンツを共有したり削除したりすることもできます。

注意

環境を削除すると、その環境が共有されていた全ユーザーについて、その環境が削除されます。

環境情報の表示

各カスタム環境およびビルトイン環境用のさまざな情報が用意されています。表示方法:

  1. モデルレジストリ > カスタムモデルワークショップ > 環境 に移動します。表示されるリストには、ユーザーのアカウントで利用できるすべての環境が、サマリー情報とともに表示されます。

  2. 個々の環境の詳細については、クリックして選択します。

    バージョンタブには、バージョン固有のさまざまな情報が表示され、そのバージョンの環境コンテキストファイルをダウンロードするためのリンクが表示されます。

  3. 現在のデプロイをクリックすると、現在の環境が使用されているすべてのデプロイのリストが表示されます。

  4. 環境情報をクリックすると、バージョン情報を含まない一般的な環境に関する情報が表示されます。

共有とダウンロード

カスタム環境は、右のメニューオプションから組織内の誰とでも共有することができます。これらのオプションは、組織のすべてのメンバーがアクセスするので、ビルトイン環境では使用できません。これらの環境オプションは削除しないでください。

モデルレジストリ > カスタムモデルワークショップ > 環境 から、メニューを使用して、ユーザーが適切な権限を持つカスタム環境を共有および/または削除することができます。(リンク先はカスタムモデルのアクションですが、カスタムのタスクと環境でのオプションは同じであることに注意してください。)

暗黙の共有

タスクまたは環境は、明示的に共有されていない限り、モデル登録で他のユーザーが利用することはできません。しかし、それは、ユーザーがそのタスクを含むブループリントを使用することを制限するものではありません。これは_暗黙の共有_です。

例えば、ユーザーAとユーザーBが共有しているプロジェクトを考えてみましょう。ユーザーAが新しいタスクを作成し、そのタスクを使用したブループリントを作成した場合、ユーザーBはそのブループリント内のカスタムタスク(または環境)への読み取りアクセスを有しているかどうかにかかわらず、そのブループリントを操作(クローン、修正、再実行など)することができます。


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