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

外部モデルプロバイダー(モデルプロバイダーサービス)の作成と管理

外部モデルプロバイダーをモデルプロバイダーサービスとして登録し、アクセス権を付与し、Unity AI Gateway機能を構成し、削除します。

要件

  • CREATE SERVICE モデルプロバイダーサービスを作成するスキーマ上、そのカタログとスキーマに対するUSE CATALOGUSE SCHEMAの権限。
  • 登録する外部プロバイダーの認証情報(例:OpenAI API キーまたはAWSアクセスキーペア)。
  • アクセスキーペアの代わりにサービス資格情報を使用して Amazon Bedrock を認証するには、既存のサービス資格情報と、それに対する ACCESS が必要です。サービス資格情報を使用して Amazon Bedrock を認証するを参照してください。

モデルプロバイダーサービスを作成

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

UIを使用してください

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

    • ワークスペースのサイドバーで [ AI Gateway ] をクリックし、[ Providers tab] を開いて [ Provider ] をクリックします。
    • カタログエクスプローラーで、モデルプロバイダーサービスを作成したいスキーマに移動し、 作成 > サービス をクリックしてから、 サービスの作成 ダイアログで モデルプロバイダーサービス を選択します。
  2. モデルプロバイダーサービスの名前を入力し、作成するカタログとスキーマを選択します。Catalog Explorerから起動すると、Catalog Explorerがカタログとスキーマを事前に設定します。

  3. プロバイダータイプを選択し、プロバイダーの接続の詳細と資格情報を入力します。

  4. 作成 をクリックします。Databricksは資格情報を暗号化して保存します。この時点以降はUIに表示しません。

プロバイダーの全リストとその認証方法については、外部モデルプロバイダー(モデルプロバイダーサービス)のガバナンスを参照してください。

サービス資格情報を使用して Amazon Bedrock を認証する

AWS アクセスキーペアを保存する代わりに、サービス資格情報を使用して Amazon Bedrock プロバイダーを認証できます。サービス資格情報は、Unity Catalog が管理する ID およびアクセス管理 (IAM) ロールを保持するため、長期的な AWS キーがモデルプロバイダーサービスにコピーされることはありません。Databricks は、各リクエストを認証するために、そのロールから有効期間の短い資格情報を取得します。

モデルプロバイダーサービスを作成するで説明されているように、モデルプロバイダーサービスを作成します。プロバイダータイプとして Amazon Bedrock を選択し、 認証方法サービス資格情報 に設定して、アクセスキーペアを入力する代わりに資格情報を選択します。

次の要件を確認してください:

  • モデルプロバイダーサービスの 所有者 は、サービス認証情報に対して ACCESS を持っています。Databricksはリクエストの処理時に所有者のアクセス権を再確認するため、プロバイダーの使用中は所有者がそのアクセス権を保持している必要があります。それを取り消すと、プロバイダーに対して EXECUTE を保持している呼び出し元を含め、すべてのユーザーのクエリーが停止します。所有者に認証情報へのアクセス権を付与するには:

    SQL
    GRANT ACCESS ON SERVICE CREDENTIAL <service-credential-name> TO `<model-provider-service-owner>`;
  • この資格情報の目的はストレージではなく、 サービス です。

  • その認証情報は、リクエストの発信元であるワークスペースで使用可能です。そのワークスペースのバインドは引き続き適用されるため、モデルプロバイダーサービス自体はメタストアを共有するどのワークスペースからでも到達可能であっても、認証情報がバインドされていないワークスペースからのリクエストは失敗します。

  • サービス資格情報の IAM ロールは、クエリーを実行する予定の Bedrock モデルを呼び出すことができます。作成方法については、サービス資格情報の作成を参照してください。

プロバイダーに対してクエリーを実行する呼び出し元には、他のプロバイダーと同様の権限が必要です。彼らはサービス資格情報に対する権限を必要としません。これにより、資格情報自体が彼らの手の届かないところに保持されます。

モデルプロバイダーサービスは内部識別子によって資格情報を追跡するため、クエリーを失敗させることなく資格情報の名前を変更できます。

認証情報を削除するとクエリーは失敗しますが、モデルプロバイダーサービスがそれを参照しているという警告は表示されません。認証情報を削除する前に、この認証情報への参照がないことを確認してください。

既存のモデルプロバイダーサービスを、サービス資格情報認証とアクセスキーペア認証の間で切り替えることはできません。代わりに、新しいモデルプロバイダーサービスを作成してください。

カスタムプロバイダーの API キーをヘッダーで送信する

カスタムプロバイダーは、default で API キーをベアラートークンとして送信します。Endpoint が特定のヘッダーでキーを要求する場合は、API キーヘッダー認証を使用し、ヘッダー名を指定してください。その後、Databricks は各送信リクエストでキーを <header name>: <header value> として送信します。

モデルプロバイダーサービスを作成するで説明されているように、モデルプロバイダーサービスを作成します。プロバイダータイプとして Custom を選択し、 Auth methodAPI key header に設定して、Endpoint が期待する Header name (X-API-KeyOcp-Apim-Subscription-Key など) と Header value を指定します。

これら2つのメソッドは相互に排他的です。カスタムプロバイダーは、ベアラートークンまたは名前付きヘッダーのいずれかを使用し、両方を使用することはできません。ヘッダー認証には、ヘッダーが1つ必要です。

ヘッダー名は有効なHTTPヘッダー名である必要があります(英数字および!#$%&'*+-.^_`|~の文字、最大255文字)。スペース、コロン、スラッシュ、改行など、その他の文字はすべて拒否されます。

アクセス権を付与

他のユーザーがモデルプロバイダーサービスをクエリーできるようにするには、モデルプロバイダーサービスに対してEXECUTEを付与し、そのカタログとスキーマに対してUSE CATALOGUSE SCHEMAを付与します。モデルプロバイダーサービスが推論テーブルにLogsを記録する場合は、テーブルに対してSELECTを付与して、Logsに記録されたリクエストとレスポンスを読み取れるようにします。

カタログエクスプローラーでアクセス権を付与するには

  1. カタログエクスプローラーで、モデルプロバイダーサービスを開きます。
  2. アクセス許可 タブで、 許可 をクリックします。
  3. アクセスを付与するユーザーまたはグループを選択し、EXECUTE権限を選択して、 付与 をクリックします。

同じプリンシパルが、モデルプロバイダーサービスのカタログとスキーマに対してUSE CATALOGUSE SCHEMAも保持していることを確認してください。ログに記録されたリクエストと応答を読み取れるようにするには、推論テーブルのSELECT **[権限]**tabから を付与します。

アクセス権の付与と検出の詳細については、外部モデルプロバイダー(モデルプロバイダーサービス)へのアクセスの検出と管理を参照してください。

機能の構成

モデルプロバイダーサービスは Unity AI Gateway を介してルーティングされるため、他の Unity AI Gateway トラフィックで利用するものと同じガバナンスと可観測性機能をご利用ください。

モデルプロバイダーサービスの削除

モデルプロバイダーサービスを削除するには、そのサービスに対する少なくともMANAGE権限が必要です。所有者はMANAGEのスーパーセットを持っています。

モデルプロバイダーサービスを削除するには、Catalog Explorerで開き、ケバブメニューから「 削除 」を選択します。モデルプロバイダーサービスを削除すると、保存されている資格情報が削除されます。

次のステップ