メインコンテンツまでスキップ

カスタムモデルサービス

モデルサービスは、トラフィック分割とfallbackを使用して、推論リクエストを1つ以上のモデルに変換およびルーティングするEndpointです。リアルタイムリクエストに加えて、バッチ推論をサポートします。

次のようなユースケース向けのカスタムモデルサービスを作成します:

  • アプリケーション用のモデル非依存のEndpoint。 カスタマーサポートアシスタントに production.ai.support-assistant という名前のサービスを指定します。アプリケーションが呼び出す名前を変更せずに、基盤となるモデルを変更します。
  • カスタムルーティングとfallback。 トラフィック分割を使用して、本格的なロールアウトの前にトラフィックの10%を新しいモデルに送信するか、リクエストが失敗したときのバックアップ先を設定します。
  • A budget for one workload. Tag a サービス with project=support-assistant and scope a monthly budget to that タグ, with an アラート at $1,000 of spend.
  • Access controls for a team. 法務チームとそのアプリケーションの Service Principal に legal-review サービスへのアクセス権を付与し、他のチームには別のサービスを使用します。
  • ワークロードのレート制限。 サービスのレート制限を使用して、1分あたり100リクエストのテストサービスと、1分あたり1,000リクエストの**本番運用**サービスを構成します。
  • Separate モニタリング and Logs. Send a support assistant's requests and responses to a dedicated inference table so its traffic can be inspected separately from coding-agent traffic.

サービスを作成せずに Databricks が提供する基盤モデルをクエリーするには、system.ai の システム提供モデルサービス を使用します。

サービスでは、トークン単位の従量課金またはプロビジョニング済みthroughputを使用してDatabricksで提供されるモデルにルーティングすることも、モデルプロバイダーを介して外部モデルにルーティングすることもできます。1つのサービスでこれらの送信先を混在させることができます。

カスタムモデルサービスは Unity Catalog のセキュアラブルです。呼び出し元は、ワークスペース間または Databricks の外部から、完全修飾名 (catalog.schema.name) を使用してこれらを呼び出します。ガバナンスと権限を参照してください。

要件​

  • Unity Gateway サポート対象リージョンの Databricks ワークスペース。
  • ワークスペースでUnity Catalog有効化されていること。 Unity Catalog のワークスペースを有効にする方法をご覧ください。
  • モデルサービスを作成するには、次の条件を満たしている必要があります:
    • USE CATALOG、モデルサービスを作成するカタログおよびスキーマにおける USE SCHEMA および CREATE SERVICE。
    • EXECUTE on each model that the model サービス references as a destination.
    • EXECUTE、モデルサービスが宛先として参照する各モデルプロバイダー上の USE CATALOG および USE SCHEMA。
    • USE CATALOG推論ロギングを有効にした場合、推論テーブルが作成されるカタログおよびスキーマにおける USE SCHEMA および CREATE TABLE。

カスタムモデルサービスの作成 ​

Unity Gateway UI または Catalog Explorer でモデルサービスを作成します。To create one programmatically, use the REST API, the Databricks SDKs, the Databricks CLI, Terraform, or Declarative Automation Bundles (DABs).

モデルサービスとモデルプロバイダーは、Unity Catalogスキーマ内で単一の名前空間を共有します。スキーマ内のモデルプロバイダーがすでに使用している名前をモデルサービスに使用することはできません(逆の場合も同様です)。

  1. 以下のいずれかを実行します。

    • ワークスペースのサイドバーで、 AI Gateway をクリックし、 Create をクリックします。
    • カタログエクスプローラーで、モデルサービスを作成するスキーマに移動し、[ 作成 ] > [ サービス ] > [ モデルサービス ] の順にクリックします。
  2. モデルサービスの名前を入力し、作成先のカタログとスキーマを選択します。カタログエクスプローラーから起動する場合、カタログエクスプローラーによってカタログとスキーマが事前に入力されます。

  3. サービングするプライマリ宛先を選択します。この宛先には、EXECUTE が構成され Unity Gateway がサービングできる Databricks 提供モデル、または EXECUTE、USE CATALOG、USE SCHEMA が構成されているモデルプロバイダーを指定できます。

  4. 作成 をクリックします。

モデルサービスを作成すると、Databricks に概要ページが表示され、そこで作業を開始したり、推論ロギングなどの追加機能を構成したりできます。

モデルサービスへのアクセス権を付与する ​

defaultでは、モデルサービスの所有者のみがクエリーを実行できます。他のユーザーにモデルサービスのクエリーを許可するには、そのモデルサービスに対する EXECUTE と、そのカタログおよびスキーマに対する USE CATALOG および USE SCHEMA を付与します。モデルサービスが推論テーブルにLogsする場合、ログに記録されたリクエストとレスポンスを読み取ることができるように、テーブルに対する SELECT を付与します。

  1. カタログエクスプローラーでモデルサービスを開くか、 AI Gateway に移動してサービスを選択します。
  2. 権限 タブに移動します。
  3. 付与 をクリックします。
  4. アクセス権を付与するユーザー、グループ、またはService Principalを選択します。
  5. EXECUTE 権限を選択します。
  6. 付与 をクリックします。

アクセス権の付与と検出の詳細については、モデルサービスのアクセスの検出とガバナンスを参照してください。

モデルサービスで機能を設定する ​

Unity Gateway UIからモデルサービスのレート制限、推論ロギング、およびサービスポリシーで実装されたガードレールを設定します。以下を参照してください:

推論ロギング ​

When you enable inference logging, Databricks creates a new, empty Unity Catalog table with a predefined schema at the location you specify.Note the following:

  • ターゲットカタログとスキーマに対する USE CATALOG、USE SCHEMA、および CREATE TABLE 権限が必要です。
  • モデルサービスの作成者が推論テーブルの所有者になります。アクセス権を付与しない限り、他のユーザーはアクセスできません。
  • 指定した場所にすでにテーブルが存在する場合、モデルサービスの作成は失敗します。
  • 推論テーブルのライフサイクルは、モデルサービスとは独立しています。テーブルを削除しても、モデルサービスは稼働を続けますが、ログの記録は停止します。

推論テーブルの詳細については、推論テーブルへのリクエストと応答の Logs を参照してください。

Update a model サービス ​

所有者であるか、MANAGE を持っている必要があります。

Unity Gateway UI またはカタログエクスプローラーからモデルサービスの構成を編集します。変更はインプレースで適用されます。

モデルサービスを削除する ​

所有者であるか、MANAGE を持っている必要があります。system.ai 内のシステム提供モデルサービスは削除できません。

Unity Gateway UI または Catalog Explorer でモデルサービスを開き、ケバブメニューから [ 削除 ] を選択します。

ガバナンスと権限 ​

Unity Catalog のセキュリティ保護可能なオブジェクトとして、モデルサービスは次を行います:

  • カタログとスキーマに存在し 、ワークスペースのバインディングなどのスキーマ設定が継承されます。
  • 名前、所有者、コメント、タグなど、標準的な Unity Catalog メタデータ を保持しています。
  • Unity Catalogの権限によって管理される ため、テーブル、関数、およびモデルに使用するのと同じGRANTとREVOKEステートメントを使用してアクセスを付与します。
  • Unity Catalog の他のアセットと同様に、Catalog Explorer で検出可能です。

次の権限が適用されます。

権限

説明

USE CATALOG, USE SCHEMA

モデルサービスを含むカタログとスキーマにアクセスします。すべてのオペレーションに必要です。

CREATE SERVICE

スキーマでモデルサービスを作成します。カタログまたはスキーマに付与されます。

EXECUTE

モデルサービスにクエリを実行します。

MANAGE

モデルサービスを変更または削除し、その権限を管理します。所有者はMANAGEのスーパーセットです。

権限

説明

USE CATALOG, USE SCHEMA

モデルサービスを含むカタログとスキーマにアクセスします。すべてのオペレーションに必要です。

CREATE SERVICE

スキーマでモデルサービスを作成します。カタログまたはスキーマに付与されます。

EXECUTE

モデルサービスにクエリを実行します。

MANAGE

モデルサービスを変更または削除し、その権限を管理します。所有者はMANAGEのスーパーセットです。

モデルサービスは、定義者の権限を使用します。Databricks は、呼び出し元の権限ではなく、 所有者 の権限に対してクエリーを評価します。ユーザーがモデルサービスをクエリーすると、Databricks は、基盤となるモデルや任意のモデルプロバイダーなどの参照される宛先に対して、所有者が EXECUTE を持っていることを確認します。呼び出し元は、それらの宛先への直接アクセスを必要としません。

制限事項​

以下の機能はサポートされていません:

  • SQL を使用したモデルサービスの作成と管理。
  • BROWSE権限のみでのモデルサービスの検出。
  • モデルサービスのグローバル検索。

その他のリソース ​