カスタム モデルサービスを作成
ベータ版
この機能はベータ版です。アカウント管理者は、アカウント コンソールの [プレビュー] ページからこの機能へのアクセスを制御できます。 Databricksのプレビューを管理するを参照してください。
このページでは、Unity Catalogでモデルサービスを作成、共有、管理する方法について説明します。
要件
- お客様のアカウントでUnity AI Gatewayのプレビュー版が有効になりました。Databricksのプレビューを管理するを参照してください。
- Unity AI Gateway がサポートされているリージョン内の Databricks ワークスペース。
- ワークスペースでUnity Catalog有効化されていること。 Unity Catalog のワークスペースを有効にする方法をご覧ください。
- モデルサービスを作成するには、以下が必要です:
USE CATALOG、モデルサービスを作成するカタログとスキーマで、USE SCHEMAおよびCREATE SERVICE。EXECUTEモデルサービスが宛先として参照する各モデルで。USE CATALOG推論ログを有効にした場合、推論テーブルが作成されるカタログとスキーマ上のUSE SCHEMAおよびCREATE TABLE。
モデルサービスを作成
Unity AI Gateway UI、カタログエクスプローラ、または Unity Catalog REST API を使用してモデルサービスを作成できます。
UIを使用する
-
以下のいずれかを実行します。
- ワークスペースサイドバーで、 AI Gateway をクリックし、次に 作成 をクリックします。
- カタログエクスプローラーで、モデルサービスを作成したいスキーマに移動し、次に**作成**> **モデルサービス** をクリックします。
-
モデルサービスの名前を入力し、作成するカタログとスキーマを選択します。カタログエクスプローラーから開始すると、カタログエクスプローラーがカタログとスキーマを事前に設定します。
-
Unity AI Gateway が提供できる、
EXECUTEを実施した Databricks ホストのモデルの中から、主要なモデルを選択してください。 -
作成 をクリックします。
モデルサービスを作成すると、Databricks はその概要ページを開き、そこで開始したり、推論ログなどの追加機能を構成したりできます。
REST API を使用する
Unity Catalog REST API の model-services エンドポイントに POST リクエストを送信します。以下の例は、推論ロギングとレート制限が有効になっている、プライマリモデルにルーティングし、セカンダリモデルにフォールバックするモデルサービスを作成します。
curl https://<workspace-url>/api/2.2/unity-catalog/model-services \
-X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $DATABRICKS_TOKEN" \
-H "x-databricks-workspace-id: <workspace-id>" \
-d '{
"catalog_name": "main",
"schema_name": "default",
"name": "team-chat",
"comment": "Shared chat endpoint with fallback.",
"destinations": [
{ "name": "primary", "model": "system.ai.databricks-claude-opus-4-6" },
{ "name": "fallback", "model": "system.ai.databricks-gpt-5-2" }
],
"routes": {
"strategy": "fallback",
"destinations": ["primary", "fallback"]
},
"inference_table": "main.logging.team_chat_payload",
"rate_limits": {
"tpm": 10000,
"qpm": 1000
}
}'
以下を置き換えます。
<workspace-url>: Databricks ワークスペースの URL。<workspace-id>:リクエストを関連付けるワークスペースのID。このワークスペースの料金はトークン単位の従量課金に基づいて請求されます。
モデルサービスへのアクセスを許可する
他のユーザーがモデルサービスをクエリできるようにするには、モデルサービスにEXECUTEを、そのカタログとスキーマにUSE CATALOGとUSE SCHEMAを付与します。モデルサービスが推論テーブルにログを記録する場合、ログに記録されたリクエストとレスポンスを読み取れるように、テーブルに対してSELECTを付与します。
GRANT USE CATALOG ON CATALOG main TO ai_team;
GRANT USE SCHEMA ON SCHEMA main.default TO ai_team;
GRANT EXECUTE ON MODEL SERVICE main.default.team_chat TO ai_team;
-- Optional: grant access to the inference table
GRANT SELECT ON TABLE main.logging.team_chat_payload TO ai_team;
アクセスを許可および検出する方法の詳細については、モデルサービスへのアクセスの検出と管理を参照してください。
モデルサービスで機能を設定する
Unity AI Gateway UIから、レート制限、推論ログ記録、ガードレールなどの機能をモデルサービスで構成します。これはUnity AI Gatewayエンドポイントで構成するのと同じ方法です。以下を参照してください:
推論ロギング
推論ロギングを有効にすると、Databricksは、指定した場所に事前定義されたスキーマを持つ新しい空のUnity Catalogテーブルを作成します。次の点に注意してください:
- ターゲットカタログとスキーマに対して、
USE CATALOG、USE SCHEMA、およびCREATE TABLEを持っている必要があります。 - モデルサービスの作成者が推論テーブルの所有者です。あなたが許可しない限り、他のユーザーはアクセスできません。
- 指定された場所にテーブルがすでに存在する場合、モデルサービスの作成は失敗します。
- 推論テーブルは、モデルサービスとは独立したライフサイクルを持ちます。テーブルを削除すると、モデルサービスは動作し続けますが、ログの記録は停止します。
推論テーブルの詳細については、「推論テーブルを使用してモデルサービスを監視する」を参照してください。
モデルサービスを削除
モデルサービスを削除するには、それに対する少なくともMANAGEの権限が必要です。所有者はMANAGEのスーパーセットを持っています。
DROP MODEL SERVICE main.default.team_chat;
system.ai のシステム提供のモデルサービスは削除できません。