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

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

エージェント フレームワーク Python APIdeploy()関数を使用して、Mosaic AI Model Serving に AI エージェントをデプロイします。導入により、スケーラビリティ、モニタリング、コラボレーション ツールが組み込まれたサービス エンドポイントが作成されます。

導入されたエージェントは、進行トレース、関係者フィードバック用のレビュー アプリ、モニタリングなどのMLflow 3 評価およびモニタリング機能と自動的に統合されます。

必要条件

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

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

Python
# 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()

エージェントを展開するには deploy()

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

Python
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機能と統合します。

警告

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

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

deploy() 関数は、デフォルトで次のアクションを実行します。

  • 自動スケーリングと負荷分散を備えたエージェントをホストするための モデルビングサー エンドポイントを作成します
  • エージェントが基礎となるリソースにアクセスするための 安全な認証をプロビジョニングする
  • MLflowエクスペリメントのトレースと本番運用トラフィックの自動品質評価を通じて 、モニタリングを有効にします。
  • フィードバック収集のためのレビュー アプリを使用して 関係者のコラボレーションを設定します

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

デプロイのカスタマイズ

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

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

エージェントの展開を取得および削除する

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

Python
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 分かかる場合があります。

deploy() 操作

説明

モデルサービングエンドポイントの作成

自動負荷分散を使用して、ユーザー向けアプリケーションにエージェントを提供するスケーラブルな REST API エンドポイントを作成します。

安全な認証のプロビジョニング

エージェントが必要最小限のアクセス許可でDatabricksで管理されるリソース(一括検索インデックス、 Unity Catalog機能など) にアクセスできるようにする、有効期間の短い資格情報を自動的に提供します。

Databricks は、資格情報を発行する前にエンドポイント所有者が適切な権限を持っていることを確認し、不正アクセスを防止します。

Databricks 以外のリソースの場合は、シークレットを含む環境変数をdeploy()に渡します。「モデルサービングエンドポイントからリソースへのアクセスを構成する」を参照してください。

レビューアプリを有効にする

関係者がエージェントと対話し、フィードバックを提供できる Web インターフェースを提供します。「ドメイン エキスパートのフィードバックを収集する」を参照してください。

リアルタイムトレースを有効にする

すべてのエージェントの対話をMLflowエクスペリメントに 1 回で記録し、モニタリングとデバッグを即座に可視化します。

  • エンドポイントからのトレースは、現在アクティブなMLflowエクスペリメント ( mlflow.set_experiment()で設定) に書き込まれます。
  • エンドポイント内のすべてのエージェントはトレース保存のために同じエクスペリメントを共有します
  • トレースは推論テーブルにも書き込まれ、長期保存が可能

本番運用モニタリングを有効にする (ベータ版)

本番運用トラフィックでスコアラーを実行する自動品質評価を構成します。 「本番運用モニタリング」を参照してください。

推論テーブルを有効にする

監査と分析のために、要求の入力と応答を記録するテーブルを作成します。

警告: リクエスト ログと評価ログは非推奨であり、将来のリリースで削除される予定です。代わりに MLflow 3 リアルタイム トレースを使用してください。移行ガイダンスについては、リクエスト ログと評価ログの廃止を参照してください。

  • すべてのエージェントはログ記録にAIゲートウェイ推論テーブルを使用します
  • ストリーミング応答では、 ResponsesAgentChatAgentChatCompletionスキーマと互換性のあるフィールドのみがログに記録されます。

REST API 要求のログ記録とアプリのフィードバックの確認

API 要求とフィードバックを推論テーブルに記録します。

警告: フィードバック モデルは非推奨であり、将来のリリースで削除される予定です。MLflow 3 にアップグレードし、代わりにlog_feedback API を使用してください。「ユーザーフィードバックの収集」を参照してください。

  • レビュー アプリからのフィードバックを受け入れて記録するためのフィードバック モデルを作成します。
  • このモデルは、デプロイされたエージェントと同じ CPU モデルサービングエンドポイントで提供されます。

次のステップ