Ray on Vertex AI の一般提供を発表
Christopher Cho
Product Manager
Ivan Nardini
Developer Relations Engineer
※この投稿は米国時間 2024 年 5 月 16 日に、Google Cloud blog に投稿されたものの抄訳です。
デベロッパーやエンジニアは、AI / ML ワークロードをスケールする際にいくつかの大きな課題に直面します。課題の一つは、必要な AI インフラストラクチャへのアクセスです。AI / ML ワークロードには、CPU や GPU などのコンピューティング リソースが大量に必要です。そのため、デベロッパーはワークロードを実行するために十分な量のリソースを必要とします。もう一つの課題は、AI / ML ワークロードを効果的にスケールするために必要となる多様なパターンやプログラミング インターフェースを処理することです。デベロッパーは、利用できる特定のインフラストラクチャ上で効率的に実行できるようにコードを作り変える必要がある場合もあります。これは、時間のかかる複雑な作業になる可能性があります。
このような課題に対処するために、Ray は包括的で使いやすい Python 分散フレームワークを提供しています。Ray を使用して、コンピューティング リソースのスケーラブルなクラスタを構成し、ドメイン固有のライブラリのコレクションを利用して、トレーニング、サービング、チューニングなどの一般的な AI / ML タスクを効率的に分散できます。
このたび、高度な分散 Python フレームワークである Ray と Google Cloud の Vertex AI のシームレスなインテグレーションが一般提供となりました。このインテグレーションにより、AI デベロッパーは Vertex AI の汎用インフラストラクチャ上で AI ワークロードを簡単にスケールできるようになり、ML、データ処理、分散コンピューティングの可能性が広がります。
Ray on Vertex AI が選ばれる理由
スケーラブルな AI 開発を加速: Ray の分散コンピューティング フレームワークは、統合されたエクスペリエンスを生成 AI と予測 AI の両方に提供し、Vertex AI のインフラストラクチャ サービスとシームレスに統合します。Python ベースの ML、ディープ ラーニング、強化学習、データ処理、科学技術計算のワークロードを 1 台のマシンから大規模なクラスタにスケールできるため、基盤となるインフラストラクチャの管理を複雑にすることなく、特に要求の厳しい AI の課題にも取り組めます。
統合された開発エクスペリエンス: Ray の人間工学に基づいた API が Vertex AI SDK for Python と統合されたことで、AI デベロッパーは、ローカル開発環境または Vertex AI Colab Enterprise でのインタラクティブなプロトタイピングから、Vertex AI のマネージド インフラストラクチャでの本番環境のデプロイに、最小限のコード変更でシームレスに移行できるようになりました。
エンタープライズ グレードのセキュリティ: VPC Service Controls、Private Service Connect、顧客管理の暗号鍵(CMEK)など、Vertex AI の堅牢なセキュリティ機能は、Ray の分散コンピューティング機能を活用しながら、機密データやモデルを安全に保護するのに役立ちます。また、Vertex AI の包括的なセキュリティ フレームワークは、Ray アプリケーションが厳格なエンタープライズ セキュリティ要件を確実に遵守するのに役立ちます。
Ray と Vertex AI を使ってみる
Llama や Gemma などの小規模言語モデル(SML)をチューニングするとしましょう。Ray on Vertex AI を使用して Gemma をファインチューニングするには、まず Vertex AI 上に Ray クラスタが必要です。これは、Ray on Vertex AI でコンソールまたは Vertex AI SDK for Python を使用してわずか数分で作成できます。Ray クラスタは、Google Cloud Logging とのインテグレーションを利用するか、Ray ダッシュボードを使用してモニタリングできます。
図 1. Ray on Vertex AI を使用してクラスタを作成する
現在、Ray on Vertex AI は Ray 2.9.3 をサポートしています。さらに、カスタム イメージを定義できるため、Ray クラスタに含まれる依存関係という点でより高い柔軟性が得られます。
Ray クラスタを実行したら、Ray on Vertex AI を使用して AI / ML アプリケーションを開発するのは簡単です。このプロセスは開発環境によって異なる場合があります。Colab Enterprise または任意の IDE 内で Vertex AI SDK for Python を使用して、Ray クラスタへの接続を確立し、アプリケーションをインタラクティブに実行できます。あるいは、以下に示すように、Python スクリプトを作成し、Ray Jobs API を使用してプログラムによって Vertex AI 上の Ray クラスタに送信する方法もあります。
図 2. Ray on Vertex AI での Gemma のチューニング
AI / ML アプリケーションの開発に Ray on Vertex AI を使用すると、さまざまなメリットが得られます。このシナリオでは、チューニング ジョブの検証に Vertex AI TensorBoard を利用できます。Vertex AI TensorBoard が提供するマネージド TensorBoard サービスにより、チューニング ジョブを追跡、可視化、比較して、チームと効果的に共同作業できます。また、Cloud Storage を使用して、モデルのチェックポイントや指標などを手軽に保存できます。これにより、次のコードに示すように、Ray Data を使用したバッチ予測の生成などの AI / ML の下流タスク用のモデルをすばやく利用できます。
H-E-B と eDreams が Ray on Vertex AI 上で AI をスケールしている方法
どのような大規模運営でもそうですが、特に食料品店では、需要の正確な予測が事業の収益性に直結します。1 つの商品について正しい予測を得るだけでも十分に難しいことですが、予測する商品が何百軒もの店舗に何百万点もあることを想像してみてください。予測モデルのスケーリングは簡単な作業ではありません。米国最大規模の食料品店チェーンである H-E-B は、Ray on Vertex AI を使用してスピード、信頼性、費用削減を実現しています。
H-E-B のプリンシパル データ サイエンティストである Philippe Dagher 氏は、次のように述べています。「Ray のおかげで、当社のビジネスにとって極めて重要で革新的な効率化を達成できました。特に、Ray の使いやすい API とエンタープライズ機能を高く評価しています。Ray on Vertex AI のインテグレーションによって Vertex AI のインフラストラクチャへのアクセシビリティが向上したのをとても喜んでおり、本番環境の ML プラットフォームにもこれを採用しました。」
eDreams ODIGEO は、世界有数の旅行サブスクリプション プラットフォームで、ヨーロッパ最大級の e コマース ビジネスの一つです。定期便、格安航空会社、ホテル、ダイナミック パッケージ、レンタカー、旅行保険において最高品質のサービスを提供し、世界中の消費者がより価値の高い旅行を簡単に楽しめるようにしています。同社は毎日 1 億件のユーザー検索を処理し、日々 18 億件の ML 予測を行って、世界の約 700 社の航空会社と 210 万軒のホテルの旅行オプションを組み合わせて提供しています。
eDreams ODIGEO のデータ サイエンス チームは現在、ユーザーが最小限の労力で最良の価格の旅行商品を探し、最高の旅行体験を実現できるよう、Ray on Vertex AI を使用してランキング モデルをトレーニングしています。
eDreams ODIGEO のデータ サイエンス ディレクターである José Luis González 氏は、次のように述べています。「当社は、宿泊施設とフライトのオプションからなる最大級の基盤を擁し、540 万人の Prime 会員の好みに合わせてカスタマイズした最高のランキング モデルを大規模に作成しています。分散ハイパーパラメータ チューニングのインフラストラクチャの管理は Ray on Vertex AI に任せて、お客様により良い価値をもたらす最高のエクスペリエンスの構築に全力を注いでいます。
次のステップ
AI / ML アプリケーションのスケーリングに苦労していませんか?まずは Google Cloud コンソールで Vertex AI に Ray クラスタを作成することから始めましょう。新規のお客様は、登録時に 300 ドル分の無料クレジットをお受け取りいただけます。
Ray on Vertex AI は、革新的でスケーラブルなアプリケーションを構築できるように支援します。Ray on Vertex AI を使用すると、Vertex AI 上で生成 AI と予測ワークロードの両方をこれまでになく簡単にスケールして、貴社の新たな可能性を広げることができます。
Ray on Vertex AI の詳細についてご関心のある方は、活気ある Ray コミュニティや Vertex AI Google Cloud コミュニティにご参加ください。経験を共有し、質問し、新しいプロジェクトで連携しましょう。次のリソースもご確認ください。
-
ドキュメント
-
GitHub のサンプル
-
Ray on Vertex AI for Cluster management(Ray on Vertex AI を使用したクラスタ管理)
-
Get started with PyTorch on Ray on Vertex AI(Ray on Vertex AI で PyTorch を使ってみる)
-
Tuning and serving Gemma on Ray on Vertex AI(Ray on Vertex AI で Gemma をチューニングしてサービングする)
-
コミュニティのブログ投稿