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

Databricks の外部にデプロイされたエージェントのトレース

MLflow Tracing は、実行の詳細をキャプチャして Databricks ワークスペースに送信し、MLflow UI で表示できるようにすることで、Databricks 外部にデプロイされた本番運用 生成AI エージェントに包括的な可観測性を提供します。

外部デプロイメントに対するMLflow 本番運用トレース

このページでは、トレースを有効にして Databricks の外部にエージェントをデプロイする方法について説明します。エージェントが Databricks モデルサービングを使用して展開されている場合は、「 エージェント フレームワークを使用した展開 (推奨)」を参照してください。

前提 条件

必要なパッケージをインストールします。次の表に、オプションを示します。

パッケージ

推奨される使用例

利点

mlflow-tracing Python SDK または TypeScript SDK

本番運用のデプロイメント

無駄のない迅速な展開のための最小限の依存関係

大量のトレースに最適化されたパフォーマンス

本番運用 モニタリングのクライアント側トレースに着目

mlflow[databricks]

開発と実験

完全な MLflow 実験機能セット (UI、LLM-as-a-judge、開発ツールなど)

すべての開発ツールとユーティリティが含まれています

Python
## Install mlflow-tracing for production deployment tracing
%pip install --upgrade mlflow-tracing

## Install mlflow for experimentation and development
%pip install --upgrade "mlflow[databricks]>=3.1"

基本的なトレース設定

Databricks がトレースを収集できるように、Databricks ワークスペースに接続するようにアプリケーション デプロイを構成します。

次の環境変数を設定します。

Bash
# Required: Set the Databricks workspace host and authentication token
export DATABRICKS_HOST="https://your-workspace.cloud.databricks.com"
export DATABRICKS_TOKEN="your-databricks-token"

# Required: Set MLflow Tracking URI to "databricks" to log to Databricks
export MLFLOW_TRACKING_URI=databricks

# Required: Configure the experiment name for organizing traces (must be a workspace path)
export MLFLOW_EXPERIMENT_NAME="/Shared/production-genai-app"

デプロイの例

環境変数を設定したら、それらをアプリケーションに渡します。タブをクリックすると、接続の詳細をさまざまなフレームワークに渡す方法が表示されます。

Docker デプロイの場合は、コンテナー構成を介して環境変数を渡します。

Dockerfile
# Dockerfile
FROM python:3.11-slim

# Install dependencies
COPY requirements.txt .
RUN pip install -r requirements.txt

# Copy application code
COPY . /app
WORKDIR /app

# Set default environment variables (can be overridden at runtime)
ENV DATABRICKS_HOST=""
ENV DATABRICKS_TOKEN=""
ENV MLFLOW_TRACKING_URI=databricks
ENV MLFLOW_EXPERIMENT_NAME="/Shared/production-genai-app"

CMD ["python", "app.py"]

環境変数を使用してコンテナを実行します。

Bash
docker run -d \
-e DATABRICKS_HOST="https://your-workspace.cloud.databricks.com" \
-e DATABRICKS_TOKEN="your-databricks-token" \
-e MLFLOW_TRACKING_URI=databricks \
-e MLFLOW_EXPERIMENT_NAME="/Shared/production-genai-app" \
-e APP_VERSION="1.0.0" \
your-app:latest

トレース収集の検証

アプリをデプロイした後、トレースが適切に収集されていることを確認します。

Python
import mlflow
from mlflow.client import MlflowClient
import os

# Ensure MLflow is configured for Databricks
mlflow.set_tracking_uri("databricks")

# Check connection to MLflow server
client = MlflowClient()
try:
# List recent experiments to verify connectivity
experiments = client.search_experiments()
print(f"Connected to MLflow. Found {len(experiments)} experiments.")

# Check if traces are being logged
traces = mlflow.search_traces(
experiment_names=[os.getenv("MLFLOW_EXPERIMENT_NAME", "/Shared/production-genai-app")],
max_results=5
)
print(f"Found {len(traces)} recent traces.")
except Exception as e:
print(f"Error connecting to MLflow: {e}")
print(f"Check your authentication and connectivity")

次のステップ

トレース ログを使用してエージェントを Databricks MLflow サーバーにデプロイしたら、トレースを表示、拡張、分析できます。

機能参照

このガイドの概念と機能の詳細については、以下を参照してください。