モデルサービング エンドポイント リソースをDatabricksアプリに追加する
モデルサービング エンドポイントをDatabricks Apps リソースとして追加して、アプリが推論のために機械学習モデルをクエリできるようにします。 モデルサービング エンドポイントはモデル予測を処理し、デプロイされたモデルにアクセスするための一貫したインターフェイスを提供します。
モデルサービングエンドポイントリソースを追加する
モデルサービング エンドポイントをリソースとして追加する前に、アプリのリソースの前提条件を確認してください。
-
アプリの作成時または編集時に App リソース セクションで、 + Add resource > Model をクリックします。
-
リソースピッカーで、 [Serving Endpoint] セクションからモデルサービングエンドポイントを選択します。また、ピッカーには、Unity Gateway セクションの下に Unity Gatewayモデルサービス がリストされます。
-
アプリに適切な権限レベルを選択します。
- 表示可能: モデル名、バージョン、ワークロード構成などのエンドポイント メタデータを表示します。推論リクエストを送信できません。
- クエリ可能: 推論リクエストを送信し、メタデータを表示します。モデル予測を必要とするほとんどのアプリにこれを使用します。
- 管理可能: 表示、編集、クエリ、削除、管理権限を含む完全な管理制御。
-
(オプション) カスタム リソース キーを指定します。これは、アプリ構成でモデルサービング エンドポイントを参照する方法です。 デフォルトのキーは
modelです。
アプリからの推論リクエストを処理するには、モデルサービング エンドポイントがREADY状態である必要があります。
Databricks管理の基盤モデルサービングエンドポイント(databricks- で始まる名前)は、ピッカーで Legacy (レガシー)とマークされます。基盤モデルを提供するには、代わりに Unity Gatewayモデルサービス を接続します。
環境変数
モデルサービング エンドポイント リソースを使用してアプリをデプロイすると、 Databricks valueFromフィールドを使用して参照できる環境変数を通じてサービス提供エンドポイント名を公開します。
例えば:
SERVING_ENDPOINT=<your-serving-endpoint-name>
詳細については、 「環境変数を使用してリソースにアクセスする」を参照してください。
モデルサービングエンドポイントリソースを削除する
モデルサービング エンドポイント リソースをアプリから削除すると、アプリのサービスプリンシパルはエンドポイントにアクセスできなくなります。 モデルサービング エンドポイント自体は変更されず、適切な権限を持つ他のユーザーやアプリケーションが引き続き利用できます。
ベストプラクティス
モデルサービング エンドポイント リソースを使用する場合は、次の点を考慮してください。
- 最小限の権限を付与します。アプリがエンドポイントで管理タスクを特に実行する必要がない限り、最小限のアクセスには
Can viewを使用し、推論リクエストを送信する必要のあるほとんどのアプリにはCan query使用します。 - 推論リクエストがタイムアウトする可能性があるため、可能な限り長時間実行されるクエリを避けてください。
- リクエストを送信する前にエンドポイントのステータスを確認してください。クエリを処理するには、エンドポイントが
READY状態である必要があります。 - 特にトラフィック量が多い期間にエンドポイントに過負荷がかからないように、推論リクエストのレート制限を検討してください。