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

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

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

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 サーバーにデプロイしたら、トレースを表示、拡張、分析できます。

機能参照

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