# 外部モデルのカスタムモデルプロキシを作成

> 外部モデルのカスタムモデルプロキシを作成 - ワークショップで外部モデルのカスタムモデルプロキシを作成します。

This Markdown file sits beside the HTML page at the same path (with a `.md` suffix). It summarizes the topic and lists links for tools and LLM context.

Companion generated at `2026-07-23T18:01:59.881869+00:00` (UTC).

## Primary page

- [外部モデルのカスタムモデルプロキシを作成](https://docs.datarobot.com/ja/docs/workbench/nxt-registry/nxt-model-workshop/nxt-ext-model-proxy.html.md): Full documentation for this topic (Markdown sidecar).

## Sections on this page

- [プロキシコードを追加](https://docs.datarobot.com/ja/docs/workbench/nxt-registry/nxt-model-workshop/nxt-ext-model-proxy.html.md#add-proxy-code): In-page section heading.
- [プロキシモデルの作成](https://docs.datarobot.com/ja/docs/workbench/nxt-registry/nxt-model-workshop/nxt-ext-model-proxy.html.md#create-a-proxy-model): In-page section heading.
- [プロキシモデルの構築](https://docs.datarobot.com/ja/docs/workbench/nxt-registry/nxt-model-workshop/nxt-ext-model-proxy.html.md#assemble-a-proxy-model): In-page section heading.

## Documentation content

外部モデルのプロキシとしてカスタムモデルを作成するには、新しいプロキシモデルを [ワークショップ](https://docs.datarobot.com/ja/docs/workbench/nxt-registry/nxt-model-workshop/index.html.md) に追加します。 プロキシモデルには、外部モデルと接続するために作成されたプロキシコードが含まれており、DataRobotの外部のインフラストラクチャで動作するモデルで [コンプライアンスドキュメント](https://docs.datarobot.com/ja/docs/workbench/nxt-registry/nxt-model-directory/nxt-compliance-doc.html.md) 、 [チャレンジャー分析](https://docs.datarobot.com/ja/docs/workbench/nxt-console/nxt-mitigation/nxt-challengers.html.md) 、 [カスタムモデルテスト](https://docs.datarobot.com/ja/docs/workbench/nxt-registry/nxt-model-workshop/nxt-test-custom-model.html.md) などの機能を利用できます。

プロキシモデルを作成するには、次の操作を行います。

1. （オプション）モデルメタデータ（model-metadata.yaml）を介してカスタムモデルにランタイムパラメーターを追加します。
2. カスタムモデルファイル（custom.py）を使用して、カスタムモデルにプロキシコードを追加します。
3. ワークショップでプロキシモデルを作成し、モデルファイルを構築します。

## プロキシコードを追加

外部モデル用のプロキシとして作成するカスタムモデルでは、 `custom.py` ファイルに [プロキシモデル](https://docs.datarobot.com/ja/docs/workbench/nxt-registry/nxt-model-workshop/nxt-ext-model-proxy.html.md#create-a-proxy-model) と外部でホストされたモデルを接続するためのカスタムコードを含める必要があります。このコードが プロキシコード です。 カスタムモデルコードの記述の詳細については、 [カスタムモデル構築](https://docs.datarobot.com/ja/docs/api/code-first-tools/drum/index.html.md) のドキュメントを参照してください。

`custom.py` ファイル内のプロキシコードは、次のことを行う必要があります。

- 必要なモジュールと、オプションでランタイムパラメーターをmodel-metadata.yamlからインポートします。
- HTTPS接続または外部モデルで必要とされるネットワークプロトコルを介して、カスタムモデルを外部モデルに接続します。
- 予測をリクエストし、必要に応じて予測データを変換します。

プロキシコードの再利用を簡素化するために、 `model-metadata.yaml` ファイルのモデルメタデータによって [ランタイムパラメーター](https://docs.datarobot.com/ja/docs/api/code-first-tools/drum/custom-model-runtime-parameters.html.md) を追加できます。

```
# model-metadata.yaml
name: runtime-parameter-example
type: inference
targetType: regression
runtimeParameterDefinitions:
- fieldName: endpoint
  type: string
  description: The name of the endpoint.
- fieldName: API_KEY
  type: credential
  description: The HTTP basic credential containing the endpoint's API key in the password field (the username field is ignored). 
```

モデルメタデータでランタイムパラメーターを定義した場合、それらを `custom.py` ファイルにインポートしてプロキシコードで使用できます。 これらのパラメーターをインポートした後、それらをプロキシコードの変数に割り当てることができます。 これにより、外部モデルに接続して予測データを取得する予測リクエストを作成できます。 次の例では、 `custom.py` ファイルの基本構造の概要を説明します。

```
# custom.py
# Import modules required to make a prediction request.
import json
import ssl
import urllib.request
import pandas as pd
# Import SimpleNamespace to create an object to store runtime parameter variables.
from types import SimpleNamespace
# Import RuntimeParameters to use the runtime parameters set in the model metadata.
from datarobot_drum import RuntimeParameters

# Override the default load_model hook to read the runtime parameters.
def load_model(code_dir):
    # Assign runtime parameters to variables.
    api_key = RuntimeParameters.get("API_KEY")["password"]
    endpoint = RuntimeParameters.get("endpoint")

    # Create scoring endpoint URL.
    url = f"https://{endpoint}.example.com/score"

    # Return an object containing the variables necessary to make a prediction request.
    return SimpleNamespace(**locals())

# Write proxy code to request and convert scoring data from the external model.
def score(data, model, **kwargs):
    # Call make_remote_prediction_request.
    # Convert prediction data as necessary.

def make_remote_prediction_request(payload, url, api_key):
    # Connect to the scoring endpoint URL.
    # Request predictions from the external model. 
```

## プロキシモデルの作成

外部モデルのプロキシとしてカスタムモデルを作成するには、新しいプロキシモデルを [ワークショップ](https://docs.datarobot.com/ja/docs/workbench/nxt-registry/nxt-model-workshop/index.html.md) に追加します。 プロキシモデルには、外部モデルと接続するために作成したプロキシコードが含まれます。

モデルワークショップを介してプロキシモデルを追加するには：

1. レジストリ > ワークショップをクリックします。
2. ワークショップタブで、+ モデルを追加をクリックします。
3. モデルを追加パネルで、プロキシを選択し、モデル情報を追加します。 フィールド説明モデル名カスタムモデルのわかりやすい名前。ターゲットタイプモデルが行っている予測のタイプ。 予測タイプに応じて、追加の設定を行う必要があります。二値：二値分類モデルの場合は、PositiveクラスラベルとNegativeクラスラベルを入力します。 次に、必要に応じて予測しきい値を入力します。連続値：追加設定なし。時系列（二値）：プレビュー機能。 二値分類モデルの場合は、PositiveクラスラベルとNegativeクラスラベルを入力し、時系列設定を行います。 次に、必要に応じて予測しきい値を入力します。時系列（連続値）：プレビュー機能Configure the時系列設定を行います。多クラス：多クラス分類モデルでは、ターゲットのターゲットクラスを1行に1クラスずつ入力またはアップロード（.csv、.txt）します。 クラスがモデルの予測に正しく適用されるように、モデルが予測したクラスの確率と同じ順序でクラスを入力してください。多ラベル：多ラベル分類モデルでは、ターゲットのターゲットラベルを1行に1ラベルずつ入力またはアップロード（.csv、.txt）します。 ラベルがモデルの予測に正しく適用されるように、モデルが予測したラベルの確率と同じ順序でラベルを入力してください。テキスト生成：プレミアム機能。 No additional settings.Anomaly Detection: No additional settings.Vector Database:Preview featureNo additional settings.Location:Premium feature. 追加設定はありません。エージェントのワークフロー：プレミアム機能。 追加設定はありません。MCPサーバー：プレミアム機能。 追加設定なし。 MCPサーバーは、DataRobot APIをエージェントが利用できるツールとして公開するためのツールです。ターゲット名モデルが予測するデータセット列。 多クラスや多ラベルなど、ターゲット列を使用するターゲットタイプに必要です。 このフィールドは、異常検知モデルでは使用できません。オプション設定予測しきい値二値分類モデルの場合、0から1までの10進数値です。この値を超える予測スコアは、すべてPositiveクラスに割り当てられます。言語モデルの構築に使用されるプログラミング言語。説明モデルのコンテンツと目的の説明。
4. フィールドに入力したら、モデルを追加をクリックします。

## プロキシモデルの構築

プロキシモデルを構築するには、外部モデルと接続するために作成したプロキシコードをワークショップに持ち込み、プロキシモデルがネットワークにアクセスできることを確認します。

1. アセンブルタブで、環境セクションに移動し、基本環境ドロップダウンメニューからモデル環境を選択します。 モデル環境モデル環境は、カスタムモデルのテストとデプロイに使用されます。基本環境ドロップダウンリストには、ドロップインモデル環境と、作成可能なカスタム環境が含まれています。 デフォルトでは、カスタムモデルは、正常に構築され、選択された環境の最新バージョンを使用します。
2. 依存関係セクションに入力するために、ファイルセクションでrequirements.txtファイルをアップロードし、DataRobotが最適なイメージを構築できるようにします。
3. ファイルセクションで、必要なプロキシモデルファイルを追加します。 モデルとドロップイン環境をペアリングしていない場合、これにはカスタムモデル環境要件とstart_server.shファイルが含まれます。 ファイルの追加方法はいくつかあります。 要素説明1ファイルファイルをグループボックスにドラッグしてアップロードします。2ソースから選択クリックしてローカルファイルまたはローカルフォルダーを参照します。リモートリポジトリからファイルをプルするには、アップロードメニューを使用します。3アップロードクリックしてローカルファイルまたはローカルフォルダーを参照するか、リモートリポジトリからファイルをプルします。4作成空のファイルまたはテンプレートとして新しいファイルを作成し、カスタムモデルに保存します。model-metadata.yamlを作成：ランタイムパラメーターファイルの基本的で編集可能な例を作成します。空白ファイルを作成：空のファイルを作成します。名称未設定の横にある編集アイコン（）をクリックしてファイル名と拡張子を入力し、カスタムコンテンツを追加します。 ファイルに関する注意事項既存のファイルと同じ名前の新しいファイルを追加する場合、保存をクリックすると、ファイルセクションで古いファイルが置き換えられます。ローカルフォルダーからファイルを追加する場合は、モデルファイルがすでにカスタムモデルのルートにあることを確認してください。 アップロードされたフォルダーは、モデル自体ではなく、モデルに必要な依存ファイルおよび追加のアセット用です。 モデルファイルがフォルダーに含まれている場合でも、ファイルがルートレベルに存在しない限り、DataRobotからモデルファイルにアクセスすることはできません。 ルートにあるファイルは、フォルダー内の依存関係を指定することができます。
4. アセンブルタブの設定セクションで、リソースの横にある（）編集をクリックし、ネットワークアクセスを公開に設定します。
5. モデルメタデータでランタイムパラメーターを提供した場合、環境を構築し、新しいバージョンを作成すると、ランタイムパラメーターセクションでそれらのパラメーターを設定できます。
6. 最後に、カスタムモデルを登録して、デプロイ可能なプロキシモデルを作成できます。
