ものづくりのブログ

うちのネコを題材にしたものづくりができたらいいなと思っていろいろ奮闘してます。

Vertex AI について調べたことをメモ

Vertex AI を使うことがあったので、調べたことをここにメモします。

Vertex AI

Vertex AI(バーテックス・エーアイ)は、Google Cloud が提供する 機械学習(ML)モデルと AI アプリケーションの開発、デプロイ、管理をエンドツーエンドでサポートする統合プラットフォーム です。
従来の機械学習プロジェクトでは、データ収集、モデル構築、トレーニング、デプロイ、モニタリングといった各フェーズで異なるツールやサービスを連携させる必要があり、非常に複雑で時間がかかることが課題でした。Vertex AI は、これらの機能を単一のプラプラットフォームに統合することで、ML 開発の効率化と簡素化を目指したプロダクトです。

主な特徴

統合されたプラットフォーム
  • モデル開発のライフサイクル全体(データ準備からモデルのデプロイ、モニタリングまで)を単一の環境で完結できます。
  • 複数のツールを行き来する必要がなくなり、開発プロセスが効率化されます。
生成AIへの対応(LLMops)
  • 大規模言語モデル(LLM)やマルチモーダルモデル(例: Gemini)を活用した生成AIアプリケーションの開発機能です。
  • Vertex AI Generative AI Studio: プロンプトの設計、テスト、比較、評価を支援するツールを提供し、開発者以外でも効率的に生成AIを開発できます。
  • 基盤モデル(Foundation Models): Gemini、PaLM、ImagenなどのGoogleの最先端モデルにアクセスし、それらを独自のデータでファインチューニングしたり、プロンプトエンジニアリングによって特定のタスクに最適化したりできます。
MLOps(機械学習運用)のサポート
  • トレーニング: カスタムモデルのトレーニング(TensorFlow, PyTorchなどオープンソースフレームワークをサポート)や、コード不要でモデルを構築できるAutoMLを提供します。
  • モデルの管理: モデルのバージョン管理、メタデータの管理ができます。
  • デプロイ: モデルを本番環境にデプロイし、スケーラブルな予測サービスを提供します。
  • モニタリング: デプロイされたモデルの性能低下(コンセプトドリフト、データスキューなど)を自動的に検出し、モデルの信頼性を維持します。
  • Feature Store: 機械学習における「特徴量」(モデルの入力となるデータ属性)を一元的に管理・共有・再利用できるリポジトリを提供し、トレーニングと推論の一貫性を保ちます。
  • パイプライン: MLワークフローをオーケストレーションし、繰り返し可能なパイプラインを構築できます。
Google Cloudサービスとの連携:
  • BigQuery(データウェアハウス)、Cloud Storage(ストレージ)、Dataflow(データ処理)など、他のGoogle Cloudサービスとシームレスに連携し、大規模なデータ処理や分析を効率的に行えます。
スケーラビリティと柔軟性:
  • Google Cloudの堅牢なインフラストラクチャ上に構築されており、小規模な実験から大規模な本番デプロイまで、必要に応じてリソースを柔軟にスケールできます。
  • 様々なMLフレームワークやツールをサポートしています。

メリット

  • 開発の加速: MLライフサイクル全体が統合されているため、モデル開発からデプロイまでの時間を短縮できます。
  • 複雑性の軽減: MLopsのベストプラクティスが組み込まれており、運用上の複雑さを軽減します。
  • 最新AIへのアクセス: Googleの最先端のAIモデル(Geminiなど)や技術に、APIを通じて簡単にアクセスできます。

デメリット

複雑性
  • 機能の多さ: Vertex AIは非常に多くの機能を提供しているため、初めて利用するユーザーにとっては、どの機能を使えば良いのか、どのように連携させるのかを理解するのに時間がかかる場合があります
  • 専門知識: 高度なMLOpsの機能や、カスタムモデルのトレーニング、デプロイメントには、ある程度の機械学習やクラウドインフラの知識が必要となります。初心者にとってはハードルが高いと感じるかもしれません。
  • ドキュメントの網羅性: 機能が多岐にわたるため、特定のユースケースに特化した詳細なドキュメントを探すのに苦労する場合もあります。
費用
  • 従量課金制: 利用したリソース(CPU、GPU、ストレージ、ネットワークなど)とAPI呼び出しの量に応じて料金が発生します。特に大規模なモデルのトレーニングや推論、大量のデータ処理を行う場合、予想以上に高額になる可能性があります。
  • コスト管理の複雑さ: 複数のサービスが連携して動作するため、どこでコストが発生しているのかを正確に把握し、最適化することが難しい場合があります。
  • 生成AIモデルのトークン課金: Gemini などの生成 AI モデルを利用する場合、入力と出力のトークン数に応じた課金が発生します。大量のプロンプト処理や長文の生成を行うと、コストが急増する可能性があります。
ベンダーロックインの可能性
  • Google Cloudへの依存: Vertex AIはGoogle Cloudエコシステムに深く統合されています。一度Vertex AI上で開発を進めると、他のクラウドプロバイダー(AWSやAzureなど)への移行が困難になる可能性があります。特定のベンダーの技術スタックに依存してしまう「ベンダーロックイン」のリスクがあります。
  • 独自技術への依存: AutoMLや特定のMLOpsツールなど、Vertex AI独自の機能を利用した場合、それらを他の環境で再現するのが難しくなることがあります。