カスタムアプリケーションの管理¶
レジストリのアプリケーションページには、アプリケーションページから使用可能なすべてのカスタムアプリケーションが一覧表示されます。 次の表は、このページの要素と使用可能なアクションを示します。
| 要素 | 説明 | |
|---|---|---|
| 1 | アプリケーション名 | アプリケーション名。 |
| 2 | バージョン | アプリケーションまたはソースのバージョン番号を一覧表示します。 |
| 3 | 開く | クリックすると、アプリケーションまたはソースが開きます。 |
| 4 | アクションメニュー | アプリケーションを共有、制御、または削除します。 |
| 5 | 検索 | リスト内の特定のアプリケーションを検索するために使用します。 |
| 6 | 「アプリケーション」タブ | 構築されたアプリケーションまたはアプリケーションソースの表示を選択します。 |
| 7 | ドロップダウンを追加 | 追加ドロップダウンを使用して、カスタムアプリケーションをアップロードするか、または新しいアプリケーションソースを作成します。 |
アプリケーションの共有¶
共有機能は権限を管理し、ユーザー、グループ、組織、およびDataRobot以外の受信者とアプリケーションを共有できます。 この機能は、アプリケーションを作成するための専門知識のないユーザーに既存のアプリケーションの使用を許可する場合などに便利です。
注意
複数のユーザーが同じアプリケーションにアクセスできる場合、各ユーザーは、別のユーザーが行った変更や予測を表示、編集、上書きしたり、アップロードしたデータセットを見たりすることができます。 この動作は、カスタムアプリケーションの性質によって異なります。
アプリケーションページから共有機能にアクセスするには、共有したいアプリの横にあるアクションメニュー をクリックし、共有()を選択します。
これにより共有ウィンドウが開き、ユーザーとその役割がリストされます。 エディターは、1つ以上のユーザーまたはグループ、組織全体でアプリケーションを共有できます。 さらに、共有リンクを使ってアプリケーションを外部と共有できます。
DataRobot以外のユーザーとカスタムアプリケーションを共有するには、外部共有を有効にするをオンに切り替えます。 トグルの下に表示されるリンクを使用すると、DataRobotにアクセスできないエンドユーザーとカスタムを共有できます。 そのリンクをエンドユーザーと共有する前に、アプリケーションへのアクセスを許可するEメールドメインとアドレスを指定する必要があります。 招待メールは、ユーザーに送信されてから1時間後に有効期限が切れます。 ユーザーが認証を受け入れると、作成された認証トークンは30日後に失効します。 このリストを変更することで、共有リンクへのアクセスを取り消すことができます。 アプリケーションにアクセスしなくなったドメインまたはアドレスを削除します。
DRApps CLIを使用して、カスタムアプリケーションをプログラムで共有することもできます。
共有ダイアログでは、次のアクションも使用できます。
- ユーザーを削除するには、削除するユーザーの役割の右側にある「X」ボタンをクリックします。
-
ユーザーの役割を再度割り当てるには、割り当てられた役割をクリックして、ドロップダウンから新しい役割を割り当てます。
アプリケーションのAPIキー¶
カスタムアプリケーションの共有時に、アプリケーション内からデータにアクセスして使用する機能をユーザーに付与することもできます。 アプリケーションのAPIキーは、DataRobotのパブリックAPIに対して必要なアクセス権をアプリケーションに付与します。 共有ロールは、DataRobot内のエンティティとしてアプリケーションの制御を許可し、アプリケーションのAPIキーは、ユーザーがアクセスしたときにアプリが実行できるリクエストの制御を許可します。
ユーザーがアプリケーションにアクセスすると、アプリケーションはAPIキーを生成するためにユーザーの同意を求めます。 そのキーには、アプリケーションソースによって制御されるアクセスレベルが設定されます。
認可されると、そのアプリケーションによって行われたリクエストのヘッダーにアプリケーションAPIキーが含まれます。 アプリケーションは、WebリクエストヘッダーからAPIキーを取得し、たとえば、ユーザーがアクセスできるデプロイを調べ、API キーを使用して予測を行うことができます。
アプリケーションのAPIキーを設定するには、以下の手順に従います。
アプリケーションのAPIキーは、カスタムアプリケーションを構築する際に自動的に作成されます。 キーが付与するアクセスのスコープを編集するには、アプリケーションソースに移動し、新しいバージョンを作成します。 リソースセクションで、編集をクリックします。
リソースを更新モーダルから、必要なキースコープレベルドロップダウンを使用して、アプリケーションAPIキーのアクセスレベルを編集できます。 キーの使用時にアプリケーションがDataRobotのパブリックAPIにアクセスできるレベルを定義するロールを選択します。
各ロールタイプには、次のアクセス権があります。
| 役割 | アクセス |
|---|---|
| なし | アクセス権がない。 このロールを選択すると、アプリケーションユーザーにはアプリケーションAPIキーが作成されず、代わりにオーナーのキーが使われます。 |
| 閲覧者 | 読み取り専用アクセス権。 |
| ユーザー | 作成、読み取り、書き込みのアクセス権。 予測もできます。 |
| 管理 | 作成、読み取り、書き込み、削除のアクセス権。 |
ロールを選択したら、更新をクリックします。 設定したソースからカスタムアプリケーションを構築すると、選択したロールで定義されたアクセス範囲を持つアプリケーションAPIキーが自動的に提供されます。
ユーザーがアプリケーションにアクセスして使用すると、そのアプリケーションによって行われたリクエストのヘッダーにアプリケーションAPIキーが含まれます。
ユースケースへのリンク¶
カスタムアプリケーションをワークベンチの ユースケースにリンクするには、アプリケーションのアクションメニュー で、 ユースケースへのリンクをクリックします。
ユースケースへのリンクモーダルで、次のいずれかのオプションを選択します。
| オプション | 説明 |
|---|---|
| ユースケースの選択 | ユースケース名ドロップダウンリストをクリックして既存のユースケースを選択してから、ユースケースへのリンクをクリックします。 |
| ユースケースの作成 | 新しいユースケース名とオプションの説明を入力し、ユースケースの作成をクリックして、ワークベンチで新しいユースケースを作成します。 |
| リンクされたユースケースの管理 | ユースケースの横にあるマイナスアイコン をクリックしてアセットとのリンクを解除してから、選択されたリンクを解除をクリックします。 |
アプリケーションの削除¶
適切な権限がある場合、アクションメニュー をクリックし、削除()をクリックすることで、アプリケーションを削除できます。
アプリケーションのソース¶
アプリケーションソースには、カスタムアプリケーションを構築できるファイル、依存関係、および環境が含まれます。 アプリケーションページで、アプリケーションソースタブを選択して、カスタムアプリケーションを構築できるすべてのソースを表示します。
特定のアプリケーションのアプリケーションソースを表示するには、アプリケーションのアクションメニューを選択し、ソースに移動をクリックします。
アプリケーションソースの追加¶
アプリケーションページから新しいアプリケーションソースを作成するには、追加 > 新しいアプリケーションソースをクリックします。
新しいアプリケーションソースが、直ちにページに追加されます。 新しいアプリケーションソースを選択して、設定を開始します。
アプリケーションソースの設定¶
アプリケーションソースを選択後、その基本環境を選択し、ソースにファイルをアップロードして、ランタイムパラメーターを作成できます。
アプリケーションソースのこれらのコンポーネントのいずれかを編集する場合、ソースの新しいバージョンを作成します。 バージョンドロップダウンから、ソースの任意のバージョンを選択できます。
アプリケーションのバージョンに加えられた変更の履歴を表示するには、左側の列のリストからアプリケーションのバージョンを選択します。 次に、履歴アイコン()の横にある右側の列を展開して、変更履歴を表示します。
環境¶
カスタムアプリケーションは、環境(Dockerコンテナ)内で実行されます。 環境には、カスタムアプリケーションで使用されるパッケージ、言語、およびシステムライブラリが含まれます。 環境ヘッダーの下にあるドロップダウンから、DataRobotが提供するアプリケーションソースの環境を選択します。 DataRobotは、[Experimental] Python 3.9 Streamlitという名前の事前定義済み基本環境を提供します。
ファイル¶
ファイルセクションでは、カスタムアプリケーションソースを構成するファイルを構築できます。 ボックスにファイルをドラッグするか、このセクションのオプションを使用して、カスタムジョブの構築に必要なファイルを作成またはアップロードします。
| オプション | 説明 |
|---|---|
| ソース/アップロードから選択 | 既存のカスタムジョブファイル(run.sh、metadata.yaml、など)をローカルファイルまたはローカルフォルダーとしてアップロードします。 |
| 作成 | 空のファイルまたはテンプレートを含んだファイルとして新しいファイルを作成し、カスタムジョブに保存します。
|
空白のテキストファイル作成を選択する場合、ファイルに情報を入力し、完全なパス(そのファイルに属するフォルダおよびファイル拡張子を含む)を使用して名前を付け、保存をクリックします。
アプリスクリプトの構築¶
アプリケーションソースにrequirements.txtファイルを提供すると、アプリ構築時にPythonの依存関係がインストールされます。 ただし、Python以外の依存関係をインストールすることもできます。 これらの依存関係をインストールするために、アプリケーションソースにbuild-app.shスクリプトを含めることができます。このスクリプトは、初めてアプリケーションを構築するときにDataRobotによって呼び出されます。 build-app.shスクリプトはnpm installまたはyarn buildを実行できるため、カスタムアプリケーションはJavaScriptベースのアプリケーションでの依存関係のインストールに対応できます。
以下の例は、カスタムノードアプリケーション用のサンプルbuild-app.shスクリプトの概要を示しています。
#!/usr/bin/env sh
cd client
echo "Installing React dependencies from package.json..."
npm install
echo "Building React app..."
yarn run build && rm ./build/index.html
リソース¶
プレビュー
カスタムアプリケーションのリソースバンドルは、デフォルトではオフになっています。 この機能を有効にする方法については、DataRobotの担当者または管理者にお問い合わせください。
機能フラグ:リソースのバンドルを有効にする
アプリケーションソースを作成した後、アプリケーションが消費するリソースを設定して、本番環境での潜在的な環境エラーを最小限に抑えることができます。 DataRobotでは、リソース制限とレプリカ数をカスタマイズできます。 リソースバンドルを編集するには:
-
アプリケーションソースを選択します。 リソースセクションで () 編集をクリックします。
-
リソースを更新ダイアログボックスで、次の設定を行います。
設定 説明 バンドル ドロップダウンからリソースバンドルを選択し、カスタムアプリケーションに割り当てることができるメモリーとCPUの最大量を決定します。 レプリカ カスタムアプリケーションの実行時にワークロードのバランスを取るために、並行して実行するレプリカの最大数を設定します。 デフォルト値は 1 で、最大値は4です。 セッションアフィニティを有効にする 同じレプリカにリクエストを送信します。 たとえば、チャット履歴をドキュメントに保存し、それを参照できるアプリのような、ローカルファイルシステムやメモリーにデータを保存するステートフルなアプリでは、これを有効にする必要があります。 複数のレプリカが使用可能な場合、file_uploaderなどの一部のStreamlitコンポーネントは、この設定を有効にしないとエラーをスローします。 ルートパスでアプリを内部実行 アプリを /custom_applications/{ID}の代わりに/で実行できるようにします。 アプリが(GunicornやStreamlitを使用するなどして)自動的にパス設定を処理する場合、この設定は必要ありません。 すべてのルートを/custom_applications/{ID}/で動作させるソリューションがないWebフレームワーク(R-Shinyなど)には便利です。 -
アプリケーションソースのリソース設定が完了したら、保存をクリックします。
ランタイムパラメーター¶
実行時にカスタムアプリケーションで使用されるスクリプトとタスクにさまざまな値を供給するためのランタイムパラメーターを作成して定義します。
metadata.yamlファイルに含めることで、ランタイムパラメーターをカスタムアプリケーションに追加でき、カスタムアプリケーションの再利用を容易にします。 このファイルのテンプレートは、ファイル > 作成ドロップダウンから使用できます。
ランタイムパラメーターを定義するには、以下のruntimeParameterDefinitionsをmetadata.yamlに追加できます。
| キー | 説明 |
|---|---|
fieldName |
ランタイムパラメーターの名前を定義します。 |
type |
ランタイムパラメーターに含まれるデータ型(string、boolean、numeric、credential、deployment、modelPackage)を定義します。 |
defaultValue |
(オプション)ランタイムパラメーターのデフォルト文字列値(credentialタイプはデフォルト値をサポートしません) defaultValueを指定せずにランタイムパラメーターを定義した場合、デフォルト値はNoneです。 |
minValue |
(オプション)numericランタイムパラメーターには、ランタイムパラメーターで使用可能な最小数値を設定します。 |
maxValue |
(オプション)numericランタイムパラメーターには、ランタイムパラメーターで使用可能な最大数値を設定します。 |
credentialType |
(オプション)credentialランタイムパラメーターの場合、パラメーターに含める資格情報のタイプを設定します。 |
allowEmpty |
(オプション)ランタイムパラメーターに空のフィールドポリシーを設定します。
|
description |
(オプション)ランタイムパラメーターの目的または内容の説明を入力します。 |
name: runtime-parameter-example
runtimeParameterDefinitions:
- fieldName: my_first_runtime_parameter
type: string
description: My first runtime parameter.
- fieldName: runtime_parameter_with_default_value
type: string
defaultValue: Default
description: A string-type runtime parameter with a default value.
- fieldName: runtime_parameter_boolean
type: boolean
defaultValue: true
description: A boolean-type runtime parameter with a default value of true.
- fieldName: runtime_parameter_numeric
type: numeric
defaultValue: 0
minValue: -100
maxValue: 100
description: A boolean-type runtime parameter with a default value of 0, a minimum value of -100, and a maximum value of 100.
- fieldName: runtime_parameter_for_credentials
type: credential
allowEmpty: false
description: A runtime parameter containing a dictionary of credentials.
credentialランタイムパラメータータイプは、DataRobot REST APIで使用可能な任意のcredentialType値をサポートします。 以下の例に示すように、含まれる資格情報はcredentialTypeに依存します。
備考
サポートされている資格情報タイプの詳細については、 資格情報のAPIリファレンスドキュメントを参照してください。
| 資格情報タイプ | 例 |
|---|---|
basic |
basic:
credentialType: basic
description: string
name: string
password: string
user: string
|
azure |
azure:
credentialType: azure
description: string
name: string
azureConnectionString: string
|
gcp |
gcp:
credentialType: gcp
description: string
name: string
gcpKey: string
|
s3 |
s3:
credentialType: s3
description: string
name: string
awsAccessKeyId: string
awsSecretAccessKey: string
awsSessionToken: string
|
api_token |
api_token:
credentialType: api_token
apiToken: string
name: string
|
Codespaceでのアプリケーションソースの管理¶
Codespaceでアプリケーションソースを開いて管理し、ソースのファイルを直接編集したり、新しいファイルをアップロードしたりできます。
Codespaceでアプリケーションソースを開くには、アプリケーション > アプリケーションのソースページでソースに移動します。 ソースを選択してその内容を表示し、Codespaceで開くをクリックします。
アプリケーションソースがcodespaceで開き、既存のファイルを直接編集したり、新しいファイルをアップロードしたり、 codespaceの機能を使用したりできます。
Codespaceでアプリケーションソースの変更作業が終了したら、保存をクリックします。 アプリケーションソースバージョンは、変更で更新されます。 変更するアプリケーションソースのバージョンを以前にデプロイしている場合、保存すると新しいソースバージョンが作成されます。 それ以外の場合、同じソースバージョンを維持したまま保存します。 保存したくない場合は、キャンセルをクリックします。 それ以外の場合は、続行をクリックします。
Codespaceを保存すると、アプリケーションのソースページに戻り、新しいソースバージョンがバージョンドロップダウンに表示されます。
アプリケーションソースの置換¶
アプリケーションを使用した後、そのソースを置き換えることができます。 アプリケーションソースを置換すると、元のアプリケーションから以下のものが引き継がれます。
- アプリケーションコード
- 基盤となる実行環境
- レプリカの数
- ランタイムパラメーターとシークレットのコピー
- コンテナのサイズ(small、medium、large)
アプリケーションソースを置換するには、アプリケーションページでアプリケーションを検索して、アクションメニュー を開き、ソースの置換を選択します。
モーダルで、ドロップダウンからアプリケーションソースを選択して、アプリケーションが現在使用しているものを置き換えます。 各ソースはそのソースバージョンを示します。 検索バーを使用して、アプリケーションソースを指定できます。 置換ソースを選択後、確認をクリックします。
ソースが置換される際、アプリケーションにアクセスできるすべてのユーザーは、置換中に開くボタンが無効になっていても、引き続きアプリケーションを使用できます。
アプリケーションログ¶
DataRobotでは、カスタムアプリケーションのために2種類のログを記録します。ビルドおよびランタイムログとアクセスログです。 これらのログを通じて、アプリケーションのビルドおよびランタイムタスクを監視し、アプリケーションのユーザーアクセス履歴を確認できます。
ログの閲覧権限
アプリケーションのログにアクセスするには、カスタムアプリケーションのオーナーまたはエディター権限が必要です。
ビルドログとランタイムログ¶
カスタムアプリケーションのビルドおよびランタイムタスクの履歴を詳細に記録したログを閲覧できます。 アプリケーションページから、ログを表示したいアプリのアクションメニュー を開き、ログを表示をクリックします。
ログモーダルには、カスタムアプリケーションのコンパイル、構築、および実行の履歴の詳細が表示されます。 これには、依存関係のチェック、パッケージ化、および発生した警告やエラーが含まれます。
アクセスログ¶
アクセスログを閲覧して、カスタムアプリケーションを開いたり操作したりしたユーザーの履歴を監視します。 アクセスログを表示するには、アプリケーションページに移動して、ログを表示したいアプリのアクションメニュー を開き、アクセスログを表示をクリックします。
また、アプリケーションソースから直接アクセスログを表示することもできます。 アプリケーションのソースページに移動して、カスタムアプリケーションのアプリケーションソースを見つけ、ドロップダウンを展開して、ソースから構築されたアプリケーションを表示します。 次に、アクセスログを表示したいカスタムアプリケーションをクリックすると、詳細表示にアクセスできます。
カスタムアプリケーションの詳細表示から、アクセスログセクションまでスクロールダウンします。
アクセスログには、メールアドレス、ユーザーID、アクセス日時、アプリケーションに対するユーザーのロールなど、ユーザーによるアプリケーションへのアクセスの詳細が記録されます。
利用状況のロギング間隔
最初のアクセスイベントに加えて、アプリケーションへのアクセスまたは使用が、24時間ごとに個別のアクセスとして記録されます。 たとえば、ユーザーがアプリケーションを開くとアクセスイベントがログに記録され、そのユーザーセッションが24時間を超えて継続的にアクセスまたは使用されると、別のアクセスイベントがログに記録されます。 これにより、カスタムアプリケーションを24時間1分アクセスすると、2つのアクセスイベントが記録されます。 セルフマネージドAIプラットフォーム環境では、この間隔はアプリケーション設定のCUSTOM_APP_USAGE_METRIC_PUBLISH_MAX_FREQによって変更可能です。
次のステップ¶
Once you know how to manage, share, and monitor custom applications, learn how to build new ones or work with their underlying sources.
- Create applications: Build a new custom application from an application source to add to Registry.
- Host custom applications: Learn how DataRobot hosts custom applications, including the DRApps CLI for programmatic management.
- Codespaces: Open an application source in a codespace to directly edit its files and dependencies.




































