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

モデルサービングエンドポイントからリソースへのアクセスを構成する

この記事では、モデルサービング エンドポイントから外部リソースとプライベート リソースへのアクセスを構成する方法について説明します。 モデルサービングは、プレーンテキストの環境変数と、Databricksシークレットを使用したシークレットベースの環境変数をサポートしています。

必要条件

シークレットベースの環境変数の場合、

  • エンドポイント作成者は、構成で参照されている Databricks シークレットへの読み取りアクセス権を持っている必要があります。
  • API キーやその他のトークンなどの資格情報は、Databricks シークレットとして保存する必要があります。

プレーンテキスト環境変数の追加

非表示にする必要のない変数を設定するには、プレーンテキスト環境変数を使用します。エンドポイントを作成または更新するときに、Serving UI、REST API、または SDK で変数を設定できます。

Serving UI から、 Advanced configurations で環境変数を追加できます。

モデルサービングエンドポイントを作成する

推論テーブルへの特徴量検索 データフレームの記録

エンドポイントで推論テーブルが有効になっている場合は、ENABLE_FEATURE_TRACINGを使用して、自動特徴ルックアップデータフレームをその推論テーブルに記録できます。これには MLflow 2.14.0 以降が必要です。

エンドポイントを作成または更新するときに、Serving UI、REST API、または SDK でENABLE_FEATURE_TRACING環境変数として設定します。

  1. 詳細構成 で、** + 環境変数の追加** を選択します。
  2. 環境名として「 ENABLE_FEATURE_TRACING 」と入力します。
  3. 右側のフィールドに「 true」と入力します。

モデルサービングエンドポイントを作成する

シークレットベースの環境変数を追加する

Databricksシークレットを使用して認証情報を安全に保存し、シークレットベースの環境変数を使用してモデルサービングでそれらのシークレットを参照できます。これにより、サービス時にモデルサービングエンドポイントから資格情報を取得できます。

たとえば、OpenAI やその他の外部モデルエンドポイントを呼び出したり、モデルサービングから直接外部データストレージの場所にアクセスしたりするために、認証情報を渡すことができます。

Databricks では、 OpenAILangChain MLflow モデル フレーバーをサービスにデプロイするために、この機能を推奨しています。 また、アクセスパターンが環境変数とAPIキーおよびトークンの使用に基づいていることを理解した上で、資格情報を必要とする他のSaaSモデルにも適用できます。

ステップ 1: シークレットスコープを作成する

モデルサービング中、シークレットスコープとキーによって Databricks シークレットからシークレットが取得されます。 これらは、モデル内で使用できるシークレット環境変数名に割り当てられます。

まず、シークレットスコープを作成します。 シークレットスコープの管理を参照してください。

次に、CLI コマンドを示します。

Bash

databricks secrets create-scope my_secret_scope

その後、以下に示すように、シークレットを目的のシークレットスコープとキーに追加できます。

Bash

databricks secrets put-secret my_secret_scope my_secret_key

シークレット情報と環境変数の名前は、エンドポイントの作成時にエンドポイント設定に渡すことも、既存のエンドポイントの設定の更新として渡すこともできます。

ステップ 2: エンドポイント設定にシークレットスコープを追加する

シークレットスコープを環境変数に追加し、エンドポイントの作成時または設定の更新時にその変数をエンドポイントに渡すことができます。 「カスタム モデルサービング エンドポイントの作成」を参照してください。

Serving UI から、 詳細設定 で環境変数を追加できます。 シークレットベースの環境変数は、 {{secrets/scope/key}}の構文を使用して指定する必要があります。 それ以外の場合、環境変数はプレーンテキスト環境変数と見なされます。

モデルサービングエンドポイントを作成する

エンドポイントが作成または更新されると、モデルサービングは Databricks シークレットスコープからシークレットキーを自動的にフェッチし、モデル推論コードが使用する環境変数を入力します。

ノートブックの例

シークレットベースの環境変数を使用してモデルサービングエンドポイントの背後にデプロイされたLangChainのRetrieval QA チェーン の OpenAI APIキーを設定する方法の例については、次のノートブックを参照してください。

モデルサービングエンドポイントからリソースへのアクセスを設定するノートブック

Open notebook in new tab

追加のリソース