次の方法で共有


生成 AI アプリケーション用のエージェントをデプロイする

deploy()関数を使用して、モザイク AI モデル サービスに AI エージェントをデプロイします。 デプロイでは、スケーラビリティ、監視、コラボレーション ツールが組み込まれたサービス エンドポイントが作成されます。

デプロイされたエージェントは、 MLflow 3 の評価および監視 機能 (リアルタイム トレース、関係者からのフィードバックのレビュー アプリ、監視など) と自動的に統合されます。

Requirements

MLflow 3

  • Unity カタログにエージェントを登録します
  • deploy()から databricks.agents API を使用してエージェントをデプロイするには、MLflow 3.1.3 以降をインストールします。
  • Databricks ノートブックの外部からエージェントをデプロイするには、 SDK バージョン 1.1.0 以降が必要です。

前提条件をインストールします。

# Install prerequisites
%pip install mlflow>=3.1.3 databricks-agents>=1.1.0

# Restart Python to make sure the new packages are picked up
dbutils.library.restartPython()

MLflow 2.x

Important

Databricks では、MLflow 2 ログ機能の一部が非推奨となるので、MLflow 3 を使用してエージェントをデプロイすることをお勧めします。 詳細なデプロイ アクションを参照してください。

  • Unity カタログにエージェントを登録します
  • deploy()から databricks.agents API を使用してエージェントをデプロイするには、MLflow 2.13.1 以降をインストールします。
  • Databricks ノートブックの外部からエージェントをデプロイするには、databricks-agents SDK バージョン 0.12.0 以降が必要です。

前提条件をインストールします。

# Install prerequisites
%pip install mlflow>=2.13.1 databricks-agents>=0.12.0

# Restart Python to make sure the new packages are picked up
dbutils.library.restartPython()

を使用してエージェントをデプロイする deploy()

エージェントをモデル サービス エンドポイントにデプロイします。

from databricks import agents

deployment = agents.deploy(uc_model_name, uc_model_info.version)

# Retrieve the query endpoint URL for making API requests
deployment.query_endpoint

deploy()を呼び出すと、Databricks は運用環境のインフラストラクチャを自動的に設定し、次の手順を実行してエージェントを MLflow Gen AI 機能と統合します。

Warnung

Databricks Git フォルダーに格納されているノートブックからエージェントをデプロイする場合、MLflow 3 リアルタイム トレースは既定では機能しません。

リアルタイム トレースを有効にするには、mlflow.set_experiment()を実行する前に、agents.deploy()を使用して実験を Git に関連付けられていない実験に設定します。

deploy()関数は、既定で次のアクションを実行します。

  • 自動スケーリングと負荷分散を使用してエージェントをホストするモデル サービス エンドポイントを作成します
  • エージェントが基になるリソースにアクセスするためのセキュリティで保護された認証をプロビジョニングします
  • MLflow 実験トレースと運用トラフィックに対する自動品質評価によるリアルタイム監視が可能
  • フィードバック収集用のレビュー アプリを使用して利害関係者の共同作業を設定する

詳細については、「 詳細なデプロイ アクション」を参照してください。

デプロイをカスタマイズする

デプロイをカスタマイズするために、 deploy() に追加の引数を渡します。 たとえば、アイドル状態のエンドポイントに対して 0 にスケールを有効にするには、 scale_to_zero_enabled=Trueを渡します。 これにより、コストは削減されますが、初期クエリを処理する時間が長くなります。

その他のパラメーターについては、「 Databricks Agents Python API」を参照してください。

エージェントのデプロイを取得および削除する

既存のエージェントデプロイを取得または管理します。 Databricks Agents Python API を参照してください。

from databricks.agents import list_deployments, get_deployments, delete_deployment

# Print all current deployments
deployments = list_deployments()
print(deployments)

# Get the deployment for a specific agent model name and version
agent_model_name = ""    # Set to your Unity Catalog model name
agent_model_version = 1  # Set to your agent model version
deployment = get_deployments(model_name=agent_model_name, model_version=agent_model_version)

# List all deployments
all_deployments = list_deployments()

# Delete an agent deployment
delete_deployment(model_name=agent_model_name, model_version=agent_model_version)

依存リソースの認証

エージェントは、多くの場合、デプロイ時にタスクを完了するために、他のリソースに対して認証を行う必要があります。 たとえば、エージェントは、非構造化データのクエリを実行するためにベクトル検索インデックスにアクセスすることが必要な場合があります。

使用するタイミングや設定方法など、認証方法の詳細については、「 AI エージェントの認証」を参照してください。

詳細なデプロイ アクション

次の表に、 deploy() 呼び出しによって発生する詳細なデプロイ アクションを示します。 デプロイの完了までに最大で 15 分かかる場合があります。

MLflow 3

deploy() アクション Description
モデル提供エンドポイントを作成する 自動負荷分散を使用してユーザー向けアプリケーションにエージェントを提供するスケーラブルな REST API エンドポイントを作成します。
セキュリティで保護された認証をプロビジョニングする エージェントが Databricks で管理されているリソース (Vector Search インデックス、Unity カタログ関数など) に最低限必要なアクセス許可でアクセスできるようにする、有効期間の短い資格情報を自動的に提供します。
Databricks は、資格情報を発行する前にエンドポイント所有者に適切なアクセス許可があることを確認し、未承認のアクセスを防ぎます。
Databricks 以外のリソースの場合は、シークレットを含む環境変数を deploy()に渡します。 「モデル提供エンドポイントからリソースへのアクセスを構成する」を参照してください。
レビューアプリを有効にする 関係者がエージェントと対話し、フィードバックを提供できる Web インターフェイスを提供します。 既存のトレースにラベルを付けることで、フィードバックと期待値を収集するを参照してください。
リアルタイム トレースを有効にする すべてのエージェント操作を MLflow 実験にリアルタイムでログに記録し、監視とデバッグをすぐに可視化します。
  • エンドポイントからのトレースは、現在アクティブな MLflow 実験に書き込まれます (mlflow.set_experiment()で設定)。
  • エンドポイント内のすべてのエージェントが、トレース ストレージに対して同じ実験を共有します
  • トレースは、データの長期保存のために推論テーブルにも記録されます。
運用環境の監視を有効にする (ベータ版) 運用環境のトラフィックでスコアラーを実行する自動品質評価を構成します。 運用環境の監視を参照してください。
推論テーブルを有効にする 監査と分析のための要求の入力と応答をログに記録するテーブルを作成します。
  • 警告: 要求ログと評価ログは非推奨となり、今後のリリースで削除される予定です。 代わりに MLflow 3 リアルタイム トレースを使用してください。 移行ガイダンスについては、 要求ログと評価ログの非推奨を 参照してください。
  • すべてのエージェントがログ記録に AI Gateway 推論テーブル を使用する
  • ストリーミング応答は、 ResponsesAgentChatAgent、および ChatCompletion スキーマと互換性のあるログ フィールドのみ
REST API 要求をログに記録し、アプリのフィードバックを確認する API の要求とフィードバックを推論テーブルに記録します。
警告:フィードバック モデルは非推奨となり、今後のリリースで削除される予定です。 MLflow 3 にアップグレードし、代わりに log_feedback API を使用します。 「 ユーザーフィードバックの収集」を参照してください。
  • レビュー アプリからのフィードバックを受け入れてログに記録するフィードバック モデルを作成します。
  • このモデルは、デプロイされたエージェントと同じ CPU モデル提供エンドポイント内で提供されます。

MLflow 2

deploy() アクション Description
モデル提供エンドポイントを作成する 自動負荷分散を使用してユーザー向けアプリケーションにエージェントを提供するスケーラブルな REST API エンドポイントを作成します。
セキュリティで保護された認証をプロビジョニングする エージェントが Databricks で管理されているリソース (Vector Search インデックス、Unity カタログ関数など) に最低限必要なアクセス許可でアクセスできるようにする、有効期間の短い資格情報を自動的に提供します。
Databricks は、資格情報を発行する前にエンドポイント所有者に適切なアクセス許可があることを確認し、未承認のアクセスを防ぎます。
Databricks 以外のリソースの場合は、シークレットを含む環境変数を deploy()に渡します。 「モデル提供エンドポイントからリソースへのアクセスを構成する」を参照してください。
レビューアプリを有効にする 関係者がエージェントと対話し、フィードバックを提供できる Web インターフェイスを提供します。 既存のトレースにラベルを付けることで、フィードバックと期待値を収集するを参照してください。
推論テーブルを有効にする 監査と分析のための要求の入力と応答をログに記録するテーブルを作成します。
警告: 要求ログと評価ログは非推奨となり、今後のリリースで削除される予定です。 移行ガイダンスについては、 要求ログと評価ログの非推奨を 参照してください。
REST API 要求をログに記録し、アプリのフィードバックを確認する (非推奨) API の要求とフィードバックを推論テーブルに記録します。
警告:フィードバック モデルは非推奨となり、今後のリリースで削除される予定です。 MLflow 3 にアップグレードし、代わりに log_feedback API を使用します。 「 ユーザーフィードバックの収集」を参照してください。
  • レビュー アプリからのフィードバックを受け入れてログに記録するフィードバック モデルを作成します。
  • このモデルは、デプロイされたエージェントと同じ CPU モデル提供エンドポイント内で提供されます。

次のステップ