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

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

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

MLflow とは

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

  • 追跡: エクスペリメントを追跡して、パラメーターと結果を記録および比較できます。

  • モデル: さまざまな ML ライブラリからさまざまなモデルサービングおよび推論プラットフォームにモデルを管理およびデプロイできます。

  • Model Registry: モデルのバージョン管理とアノテーション機能を使用して、ステージングから本番運用までのモデルデプロイプロセスを管理できます。

  • AI エージェントの評価とトレース: エージェントの比較、評価、トラブルシューティングを支援することで、高品質の AI エージェントを開発できます。

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

Databricks マネージド MLflow

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

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

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

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

  1. 機能ストア: Databricks の自動機能検索により、統合が簡素化され、ミスが減ります。

  2. トレイン モデル:Mosaic AIを使用してモデルをトレーニングしたり、基盤モデルを微調整したりします。

  3. トラッキング: MLflow は、パラメーター、メトリクス、アーティファクトをログに記録してトレーニングを追跡し、モデルのパフォーマンスを評価および比較します。

  4. Model Registry:MLflow Model Registry、Unity Catalogと統合され、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 エクスペリメントを組織単位として使用して、モデルの開発中に作業を追跡します。

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

Model RegistryとのUnity Catalog

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

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

モデルサービング

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

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

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

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

  • で エージェントを作成するには、エージェント コード、パフォーマンス メトリクス、およびエージェント トレース を追跡するために AIDatabricksMosaic AIに依存する Agent Framework を使用します。MLflow

  • Databricks でエージェントを評価するには、MLflow に依存して評価結果を追跡する Mosaic AI エージェント評価を使用します。

  • エージェントの MLflow 追跡には、 MLflow トレースも含まれます。 MLflow トレースを使用すると、エージェントのサービスの実行に関する詳細情報を確認できます。 トレースでは、リクエストの各中間ステップに関連付けられた入力、出力、メタデータが記録されるため、エージェントの予期しない動作の原因をすばやく見つけることができます。

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

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

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

  1. ベクトル&フィーチャストア: Databricks のベクトルと特徴の自動ルックアップにより、統合が簡素化され、ミスが減ります。

  2. AIエージェントの作成と評価: Mosaic AI Agent Framework と Agent Evaluation は、エージェントを作成し、その出力を評価するのに役立ちます。

  3. トラッキング&トレーシング: MLflow トレースは、詳細なエージェント実行情報をキャプチャして、genAI の可観測性を強化します。

  4. Model Registry:MLflow Model Registry、Unity Catalogと統合され、AIモデルとアーティファクトを一元化します。

  5. モデルサービング: Mosaic AI Model Serving は、モデルを REST API エンドポイントにデプロイします。

  6. モニタリング: MLflow は、モデルを監視およびデバッグするための要求と応答を自動的にキャプチャします。

オープンソース vs. Databricks-managed MLflow の機能

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

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

機能

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

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

セキュリティ

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

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

災害復旧

利用不可

Databricks のディザスタリカバリ

実験の追跡

MLflow 追跡API

MLflow Tracking API、Databricks高度なエクスペリメント追跡と統合されています

モデルレジストリ

MLflow Model Registry

MLflow Model Registry Databricks Unity Catalogと統合

Unity Catalogの統合

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

Databricks Unity Catalog

モデルのデプロイ

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

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

AIエージェント

MLflow LLM 開発

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

暗号化

利用不可

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