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

AI エージェントと ML モデルのライフサイクルを生成するための MLflow

この記事では、Databricks上のMLflowを使用して、高品質の生成AI エージェントと機械学習モデルを開発する方法について説明します。

注記

Databricks を使い始めたばかりの場合は、 Databricks Community Edition で MLflow を試すことを検討してください。

MLflow とは何ですか?

MLflow は、モデルを開発し、アプリケーションを生成するためのオープンソース プラットフォームAI 。 これには、次の主要コンポーネントがあります。

  • トラッキング:エクスペリメントを追跡して、パラメーターと結果を記録および比較できます。
  • モデル: さまざまな ML ライブラリからさまざまなモデルサービングおよび推論プラットフォームにモデルを管理およびデプロイできます。
  • モデルレジストリ: モデルのバージョン管理とアノテーション機能を使用して、ステージングから本番運用までのモデルデプロイプロセスを管理できます。
  • AI エージェントの評価とトレース: エージェントの比較、評価、トラブルシューティングを支援することで、高品質の AI エージェントを開発できます。

MLflow は、JavaPythonR、および REST APIsをサポートしています。

Databricks マネージド MLflow

Databricks は、フルマネージドおよびホスト型の MLflow バージョンを提供し、オープンソースのエクスペリエンスに基づいて構築されているため、エンタープライズでの使用に対してより堅牢でスケーラブルなものになっています。

次の図は、Databricks が MLflow と統合して機械学習モデルをトレーニングおよびデプロイする方法を示しています。

MLflow は Databricks と統合して、ML のライフサイクルを管理します。

DatabricksマネージドMLflow は、Unity Catalog と クラウドデータレイクを基盤として構築されており、 ライフサイクル内のすべてのデータと アセットを統合します。AIML

  1. 特徴量ストア: Databricks の自動機能検索により、統合が簡素化され、ミスが減ります。
  2. モデルのトレーニング: Mosaic AIを使用してモデルをトレーニングしたり、基盤モデルをファインチューンしたりします。
  3. トラッキング : MLflow は、パラメーター、メトリクス、アーティファクトをログに記録してトレーニングを追跡し、モデルのパフォーマンスを評価および比較します。
  4. モデルレジストリ: Unity Catalogと統合されたMLflow Model RegistryはAIモデルとアーティファクトを一元管理します。
  5. モデルサービング: Mosaic AI Model Serving は、モデルを REST API エンドポイントにデプロイします。
  6. モニタリング: Mosaic AI Model Serving は、モデルの監視とデバッグのためのリクエストとレスポンスを自動的にキャプチャします。 MLflow は、要求ごとにトレース データを使用してこのデータを補強します。

モデルトレーニング

MLflow モデルは、Databricks での AI と ML 開発の中核をなすものです。 MLflow モデルは、機械学習モデルをパッケージ化し、AI エージェントを生成するための標準化された形式です。 標準化された形式により、モデルとエージェントを Databricks のダウンストリーム ツールとワークフローで使用できます。

  • MLflow のドキュメント - モデル

Databricks には、さまざまな種類の ML モデルのトレーニングに役立つ機能が用意されています。

エクスペリメント トラッキング

Databricks では MLflow エクスペリメントを組織単位として使用して、モデルの開発中に作業を追跡します。

エクスペリメント追跡を使用すると、機械学習トレーニングおよびエージェント開発中に、パラメーター、メトリクス、アーティファクト、およびコードのバージョンをログに記録および管理できます。 ログをエクスペリメントに整理して実行すると、モデルの比較、パフォーマンスの分析、反復処理が容易になります。

Unity Catalogのモデルレジストリ

MLflow Model Registry は、モデルデプロイプロセスを管理するための一元化されたモデルリポジトリ、UI、および API のセットです。

Databricks は、モデルレジストリと Unity Catalog を統合して、モデルのガバナンスを一元化します。 Unity Catalog 統合により、ワークスペース全体でモデルにアクセスしたり、モデルのリネージを追跡したり、再利用するモデルを見つけたりすることができます。

モデルサービング

Databricks モデルサービングは MLflow Model Registry と緊密に統合されており、 AI モデルのデプロイ、管理、クエリのための統一されたスケーラブルなインターフェイスを提供します。 提供する各モデルは、Web アプリケーションまたはクライアント アプリケーションに統合できる REST API として使用できます。

これらは異なるコンポーネントですが、モデルサービングは、モデルのバージョン管理、依存関係の管理、検証、ガバナンスの処理を MLflow Model Registry に大きく依存しています。

AIエージェントの開発と評価

AI エージェント開発の場合、Databricks は ML モデル開発と同様に MLflow と統合されます。 ただし、いくつかの重要な違いがあります。

  • Databricksで エージェントを作成するには、エージェント コード、パフォーマンス メトリクス、およびエージェント AIトレース を追跡するためにMLflowを活用するMosaic AI エージェント フレームワーク を使用します。
  • Databricks でエージェントを評価するには、MLflow に依存して評価結果を追跡する Mosaic AI エージェント評価を使用します。
  • エージェントの MLflow 追跡には、 MLflow トレースも含まれます。 MLflow トレースを使用すると、エージェントのサービスの実行に関する詳細情報を確認できます。 トレースでは、リクエストの各中間ステップに関連付けられた入力、出力、メタデータが記録されるため、エージェントの予期しない動作の原因をすばやく見つけることができます。

次の図は、Databricks が MLflow と統合して AI エージェントを作成およびデプロイする方法を示しています。

MLflow は Databricks と統合して、生成AIアプリのライフサイクルを管理します。

Databricksマネージド MLflow は、 Unity Catalog と クラウドデータレイクに基づいて構築されており、生成AI アプリのライフサイクル内のすべてのデータと AI アセットを統合します。

  1. ベクトル&フィーチャストア: Databricks のベクトルと特徴の自動ルックアップにより、統合が簡素化され、ミスが減ります。
  2. AIエージェントの作成と評価: Mosaic AI Agent Framework と Agent Evaluation は、エージェントを作成し、その出力を評価するのに役立ちます。
  3. トラッキングとトレーシング: MLflowトレーシングは、生成AIオブザーバビリティを強化するための詳細なエージェント実行情報をキャプチャします。
  4. モデルレジストリ: Unity Catalogと統合されたMLflow Model RegistryはAIモデルとアーティファクトを一元管理します。
  5. モデルサービング: Mosaic AI Model Serving は、モデルを REST API エンドポイントにデプロイします。
  6. モニタリング: MLflow は、モデルを監視およびデバッグするための要求と応答を自動的にキャプチャします。

オープンソース vs. DatabricksマネージドのMLflowの機能

一般的な MLflow の概念、 API、およびオープンソース版と Databricksマネージド版で共有される機能については、 MLflow ドキュメントを参照してください。 Databricksマネージド MLflow専用の機能については、Databricksドキュメントを参照してください。

次の表は、オープンソース MLflow と Databricksマネージド MLflow の主な違いと、詳細の学習に役立つドキュメント リンクを示しています。

機能

オープンソース MLflow で入手可能

Databricks マネージド MLflow での可用性

セキュリティ

ユーザーは、独自のセキュリティガバナンスレイヤーを提供する必要があります

Databricks のエンタープライズグレードのセキュリティ

災害復旧

利用不可

Databricks のディザスタリカバリ

実験の追跡

MLflow Tracking API

MLflow Tracking APIはDatabricksの高度なエクスペリメントトラッキングと統合されています

モデルレジストリ

MLflow Model Registry

Databricks Unity Catalogと統合されたMLflow Model Registry

Unity Catalogの統合

Unity Catalog とのオープンソース統合

Databricks Unity Catalog

モデルのデプロイ

外部サービスソリューション(SageMaker、Kubernetes、コンテナサービスなど)とのユーザー設定の統合

Databricks モデルサービング と外部サービングソリューション

AIエージェント

MLflow LLM 開発

MLflow LLM 開発と Mosaic AI エージェント フレームワークおよびエージェント評価の統合

暗号化

利用不可

顧客管理のキーを使用した暗号化