Red Hat OpenShift AI Cloud Service のスタートガイド
第1章 概要 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift AI は、オンサイト、パブリッククラウド、またはエッジで、機械学習 (ML) モデルを迅速にトレーニング、サービング、監視するためのツールを提供する人工知能 (AI) プラットフォームです。
OpenShift AI は、AI 搭載アプリケーションを構築するための強力な AI/ML プラットフォームを提供します。データサイエンティストと MLOps エンジニアが連携を図ることで、一貫した環境で実験段階から実稼働段階に迅速に移行できます。
OpenShift AI は、オンプレミス、クラウド、非接続環境のいずれの場合でも、サポートされている任意のバージョンの OpenShift にデプロイできます。サポートされているバージョンの詳細は、Red Hat OpenShift AI: サポートされる構成 を参照してください。
1.1. データサイエンスワークフロー リンクのコピーリンクがクリップボードにコピーされました!
OpenShift AI を初めて使用する方向けに、以下の図に簡略化されたデータサイエンスワークフローを示します。ML モデルを開発する実際のプロセスは反復的なものです。
図1.1 簡素化されたデータサイエンスのワークフロー
これは予測 AI のユースケースのデータサイエンスワークフローを簡略化したものです。次のタスクが含まれています。
- ビジネス上の問題を定義し、それを解決するための目標を設定します。
- データの収集、クリーニング、準備を行います。多くの場合、データはさまざまなソースから統合する必要があります。データの探索と理解は、データサイエンスプロジェクトの成功に重要な役割を果たします。
- ビジネスユースケースに合わせて ML モデルを評価して選択します。
- トレーニングデータセットに基づいてモデルパラメーターをチューニングすることにより、ビジネスユースケースに合わせてモデルをトレーニングします。実際には、データサイエンティストはさまざまなモデルをトレーニングし、時間やメモリーの制約などのトレードオフを考慮しながらパフォーマンスを比較します。
- モデルをアプリケーションに統合します。このタスクには、モデルのデプロイとテストも含まれます。モデルのトレーニングの次に来るワークフローのステップは、運用です。データサイエンティストは、多くの場合、モデルを実稼働環境に導入し、アクセス可能にして、開発者がモデルをアプリケーションに統合できるようにする役割を担います。
- デプロイしたモデルを監視および管理します。組織に応じて、データサイエンティスト、データエンジニア、または ML エンジニアが、実稼働環境のモデルのパフォーマンスを監視し、予測とパフォーマンスメトリクスを追跡する必要があります。
- モデルを改良して再トレーニングします。データサイエンティストは、モデルのパフォーマンス結果を評価し、機能を除外または追加したり、トレーニングデータを変更したり、その他の設定パラメーターを変更したりすることで、モデルを改良して結果を改善できます。
1.2. このガイドについて リンクのコピーリンクがクリップボードにコピーされました!
このガイドは、データサイエンスと ML Ops の概念に精通していることを前提としています。OpenShift AI の使用を開始するための次のタスクを説明します。
- OpenShift AI ダッシュボードにログインする。
- データサイエンスプロジェクトを作成する。
- オブジェクトストレージにデータが保存されている場合は、そのデータにより簡単にアクセスできるように接続を設定します。
- データサイエンティストの開発作業用に、ワークベンチを作成し、JupyterLab や code-server などの IDE を選択する。
次の手順に関する情報をどこで入手できるかを確認する。
- モデルの開発とトレーニング
- パイプラインによるワークフローの自動化
- 分散ワークロードの実装
- モデルのテスト
- モデルのデプロイ
- モデルの監視と管理
OpenShift AI チュートリアル: 不正検出の例 も参照してください。OpenShift AI を使用して、JupyterLab でのサンプルモデルの開発およびトレーニング、モデルのデプロイ、自動化パイプラインによるモデルの改良を行うための詳細なガイダンスが記載されています。
1.3. 一般的な用語集 リンクのコピーリンクがクリップボードにコピーされました!
この用語集では、Red Hat OpenShift AI の一般的な用語を定義します。
- アクセラレーター
- ハイパフォーマンスコンピューティングにおいて、CPU から計算負荷の一部を引き受け、システムの効率を高めるために使用される特殊な回路。たとえば、ディープラーニングでは、メインアプリケーションを CPU で実行しながら、コンピュートワークロードの一部を GPU にオフロードするために、GPU アクセラレーションコンピューティングがよく使用されます。
- 人工知能 (AI)
- 予測、推奨、または決定を行うために、モデルという形で知識を取得、処理、作成、適用する能力。
- バイアス検出
- AI モデルが特定の属性に基づいて不公平な結果を出しているかどうかを検出するための公平性メトリクスを計算するプロセス。
- カスタムリソース (CR)
- Kubernetes CustomResourceDefinition API を通じて実装されるリソース。カスタムリソースは、Pod リソースやサービスリソースなどの組み込みの Kubernetes リソースとは異なります。CR はすべて API グループに含まれます。
- カスタムリソース定義 (CRD)
-
Red Hat OpenShift では、カスタムリソース定義 (CRD) は、クラスター内に新しい一意のオブジェクトの
Kindを定義し、Kubernetes API サーバーがそのライフサイクル全体を扱えるようにするものです。 - 接続
- データサイエンスプロジェクトから S3 互換のオブジェクトストレージ、データベース、または OCI 準拠のコンテナーレジストリーに接続するために必要なパラメーターを保存する設定。
- 接続タイプ
- OCI 準拠のコンテナーレジストリー、S3 互換のオブジェクトストレージ、Uniform Resource Identifiers (URI) など、データサイエンスプロジェクトから接続する外部ソースのタイプ。
- データサイエンスパイプライン
- データサイエンティストや AI エンジニアがモデルのトレーニングおよび評価パイプラインなどのパイプラインを自動化するために使用するワークフローエンジン。データサイエンスパイプラインには、実験的な追跡機能、アーティファクトストレージ、バージョン管理も含まれます。
- データサイエンスプロジェクト
- データサイエンス作業を整理するための OpenShift プロジェクト。各プロジェクトは、それぞれ専用の Kubernetes namespace にスコープが限定されます。
- 非接続環境
- インターネットへのアクティブな接続がない制限されたネットワーク上の環境。
- 分散ワークロード
- OpenShift クラスター内の複数のノードで同時に実行されるデータサイエンスワークロード。
- ファインチューニング
- 事前トレーニング済みのモデルに追加のトレーニングを実施して、特定のタスクを実行するようにそのモデルを適応させるプロセス。ファインチューニングには、(1) モデルの既存パラメーターを更新すること (フルファインチューニング) や、(2) モデルの既存パラメーターの一部を更新するか、モデルに新しいパラメーターを追加して、モデルの既存パラメーターを固定したままトレーニングすること (高パラメーター効率ファインチューニング) が含まれる場合があります。
- グラフィックスプロセッシンユニット (GPU)
- ディスプレイへの出力を目的としたフレームバッファー内の画像の作成を高速化するために、メモリーを迅速に操作および変更するように設計された特殊なプロセッサー。GPU は並列処理機能を備えているため、機械学習で多用されています。
- 推論
- トレーニング済みの AI モデルを使用して、モデルに提供された入力データに基づいて予測または結論を生成するプロセス。
- 推論サーバー
- 推論を実行するサーバー。推論サーバーは、入力要求を機械学習モデルに送り、出力を返します。
- 大規模言語モデル (LLM)
- 大量のテキストでトレーニングされた、多数のパラメーターを持つ言語モデル。
- 機械学習 (ML)
- データとアルゴリズムを使用して人間の学習方法を模倣し、AI モデルの精度を徐々に向上させることに取り組む人工知能 (AI) とコンピューターサイエンスの分野。
- モデル
- 機械学習の文脈において、予測や決定を提供するためにデータセットでトレーニングおよびテストされた一連の機能とアルゴリズム。
- モデルレジストリー
- 初期段階からデプロイ段階までの機械学習モデルの関連メタデータを保持する中央リポジトリー。メタデータは、デプロイメント環境やプロジェクトの起源などの概要情報から、トレーニングのハイパーパラメーター、パフォーマンスメトリクス、デプロイメントイベントなどの複雑な詳細まで多岐にわたります。
- モデルサーバー
- 機械学習モデルのホスト、受信リクエストを処理する API の公開、推論の実行、およびモデル予測の返答を実行するコンテナー。
- モデルサービングランタイム
- 機械学習モデルをデプロイするためのモデルサーバーを作成し、推論に最適化された API を構築するのに役立つコンポーネントまたはフレームワーク。
- MLOps
- 実稼働環境の機械学習 (またはディープラーニング) のライフサイクル管理を支援するために、データサイエンティストと運用プロフェッショナル間の連携を促進するためのプラクティス。MLOps は、自動化を強化して実稼働 ML の品質を向上させることを目指す一方で、ビジネス要件と規制要件にも重点を置いています。モデルの開発、トレーニング、検証、デプロイ、監視、管理が含まれ、CI/CD などの方法が使用されます。
- ノートブックインターフェイス
- 実行可能なコード、そのコードの説明テキスト、および実行されたコードの結果が含まれる対話型のドキュメント。
- オブジェクトストレージ
- クラウドで通常使用されるデータの保存方法。クラウドでは、ファイル階層を使用せずに、すべてのオブジェクトを同じレベルで保存するストレージプールまたはリポジトリーに、データが個別のユニットまたはオブジェクトとして保存されます。
- OpenShift Container Platform クラスター
- コンテナー化されたアプリケーションの構築と実行に必要なコントローラー、Pod、サービス、設定を含む物理マシンのグループ。
- 永続ストレージ
- モデルデプロイメント、データサイエンスパイプライン、ワークベンチなどのコンポーネントを横断してファイル、モデル、その他のアーティファクトを保持する永続ボリューム。
- 永続ボリューム要求 (PVC)
- 永続ボリューム要求 (PVC) は、ユーザーによるクラスターのストレージに対する要求です。
- 量子化
- 基礎モデルの重みを圧縮して推論を高速化し、必要なメモリーを削減する方法。
- サービング
- トレーニング済みの機械学習モデルをネットワークアクセス可能なサービスとしてホストするプロセス。実際のアプリケーションは、REST または gRPC API を使用してサービスに推論リクエストを送信し、予測を受け取ることができます。
- ServingRuntime
- 1 つ以上の特定のモデル形式をサービングできる Pod のテンプレートを定義するカスタムリソース定義 (CRD)。各 ServingRuntime CRD は、ランタイムのコンテナーイメージや、そのランタイムがサポートするモデル形式のリストなど、重要な情報を定義します。ランタイムの他の設定は、コンテナー仕様の環境変数を介して伝達できます。また、この Pod は要求に応じてモデルをディスクからメモリーに動的にロードおよびアンロードし、ロードされたモデルの推論リクエストを処理する gRPC サービスエンドポイントを公開します。
- vLLM
- 一般的なモデルやフレームワークと統合された大規模言語モデルを実行するための、高スループットで効率的な推論エンジン。
- ワークベンチ
- ML モデルの開発と実験のための分離された環境。ワークベンチには通常、JupyterLab、RStudio、Visual Studio Code などの統合開発環境 (IDE) が含まれています。
- ワークベンチイメージ
- モデル開発に必要なツールとライブラリーがプリインストールされたイメージ。機械学習 (ML) モデルを開発するための IDE が含まれています。
- YAML
- 人間が読めるデータシリアライズ言語。これは通常、設定ファイルや、データが保存または送信されるアプリケーションで使用されます。
第2章 OpenShift AI へのログイン リンクのコピーリンクがクリップボードにコピーされました!
OpenShift AI をインストールしたら、OpenShift AI ダッシュボードにログインして、開発およびデプロイ環境をセットアップします。
前提条件
OpenShift AI アイデンティティープロバイダーとログイン認証情報がわかっている。
データサイエンティスト、データエンジニア、または ML エンジニアの場合は、管理者から OpenShift AI インスタンスの URL を提供してもらう必要があります。次に例を示します。
https://rhoai-dashboard-redhat-oai-applications.apps.example.abc1.p1.openshiftapps.com/
https://rhoai-dashboard-redhat-oai-applications.apps.example.abc1.p1.openshiftapps.com/Copy to Clipboard Copied! Toggle word wrap Toggle overflow
サポートされている以下のブラウザーの最新バージョンがある。
- Google Chrome
- Mozilla Firefox
- Safari
手順
OpenShift AI インスタンス URL を参照し、Log in with OpenShift をクリックします。
-
OpenShift にアクセスできる場合は、OpenShift Web コンソールを参照して、Application Launcher (
) → Red Hat OpenShift AI をクリックできます。
-
OpenShift にアクセスできる場合は、OpenShift Web コンソールを参照して、Application Launcher (
-
GitHub、Google、または会社のシングルサインオン方式など、アイデンティティープロバイダーの名前をクリックします。 - 認証情報を入力し、Log in (または、お使いのアイデンティティープロバイダーでの類似アイコン) をクリックします。
検証
- OpenShift AI ダッシュボードが Home ページで開きます。
2.1. インストールした OpenShift AI コンポーネントの表示 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift AI ダッシュボードでは、インストールされた OpenShift AI コンポーネント、対応するソース (アップストリーム) コンポーネント、およびインストールされたコンポーネントのバージョンのリストを表示できます。
前提条件
- OpenShift AI が OpenShift クラスターにインストールされている。
手順
- OpenShift AI ダッシュボードにログインします。
-
上部のナビゲーションバーで、ヘルプアイコン (
) をクリックし、About を選択します。
検証
About ページには、インストールされている OpenShift AI コンポーネントと、それに対応するアップストリームコンポーネントおよびアップストリームコンポーネントのバージョンのリストが表示されます。
第3章 データサイエンスプロジェクトの作成 リンクのコピーリンクがクリップボードにコピーされました!
データサイエンスワークフローを実装するには、プロジェクトを作成する必要があります。OpenShift では、プロジェクトは追加のアノテーションを持つ Kubernetes namespace であり、リソースへのユーザーアクセスを管理する主な手段です。プロジェクトを使用すると、データサイエンスの作業内容を 1 カ所にまとめ、組織内の他の開発者やデータサイエンティストと共同作業することもできます。
プロジェクト内では、次の機能を追加できます。
- 接続。追加すると、エンドポイントや認証情報などの情報をハードコードすることなく、データにアクセスすることが可能になります。
- データの操作と処理、およびモデルの開発を行うためのワークベンチ。
- モデルのデプロイ。デプロイしたモデルは、テストしてインテリジェントアプリケーションに統合できます。モデルをデプロイすると、API を使用してアクセスできるサービスとして利用可能になります。
- ML ワークフローを自動化するためのパイプライン。
前提条件
- Red Hat OpenShift AI にログインしている。
- プロジェクトを作成するための適切なロールと権限がある。
手順
OpenShift AI ダッシュボードから、Data science projects を選択します。
Data science projects ページには、アクセスできるプロジェクトのリストが表示されます。リスト内のユーザーが要求したプロジェクトごとに、Name 列にプロジェクトの表示名、プロジェクトを要求したユーザー、およびプロジェクトの説明が表示されます。
- Create project をクリックします。
- Create project ダイアログで、Name フィールドを更新して、プロジェクトの一意の表示名を入力します。
オプション: プロジェクトのデフォルトのリソース名を変更する場合は、Edit resource name をクリックします。
リソース名は、OpenShift でリソースに付けられるラベルです。有効な文字には、小文字、数字、ハイフン (-) が含まれます。リソース名は 30 文字を超えることはできず、文字で始まり、文字または数字で終わる必要があります。
注記: プロジェクトの作成後はリソース名を変更できません。表示名と説明のみ編集できます。
- オプション: Description フィールドにプロジェクトの説明を入力します。
- Create をクリックします。
検証
- プロジェクトの詳細ページが開きます。このページから、接続の追加、ワークベンチの作成、パイプラインの設定、モデルのデプロイを行うことができます。
第4章 ワークベンチの作成と IDE の選択 リンクのコピーリンクがクリップボードにコピーされました!
ワークベンチは、ML モデルを調べて操作できる隔離された領域です。データの準備やクリーンアップなど、データを操作したりプログラムを実行したりすることもできます。ワークベンチは、たとえば既存のモデルだけを処理する場合は不要です。しかし、データを処理するコードの記述やモデルのトレーニングなど、ほとんどのデータサイエンスワークフロータスクにはワークベンチが必要です。
ワークベンチを作成するときは、イメージ (IDE、パッケージ、その他の依存関係) を指定します。サポートされている IDE には、JupyterLab、code-server、RStudio (テクノロジープレビュー) などがあります。
IDE は、サーバー/クライアントアーキテクチャーをベースとしています。各 IDE は、OpenShift クラスター上のコンテナー内で実行されるサーバーを提供します。ユーザーインターフェイス (クライアント) は Web ブラウザーに表示されます。たとえば、Jupyter ワークベンチは Red Hat OpenShift クラスター上のコンテナー内で実行されます。クライアントは、ローカルコンピューターの Web ブラウザーで開く JupyterLab インターフェイスです。JupyterLab に入力したコマンドは全ワークベンチにより実行されます。同様に、code-server や RStudio Server などの他の IDE も、OpenShift クラスター上のコンテナー内で実行されるサーバーを提供します。ユーザーインターフェイスは Web ブラウザーに表示されます。このアーキテクチャーにより、すべての処理がクラスター上で行われながら、ブラウザー環境でローカルコンピューターを介して対話できるようになります。処理されるデータがクラスターから外に出ることがないため、クラスターでは利用可能なリソースが大きくなり、セキュリティーが向上するという利点があります。
ワークベンチでは、接続 (モデルのトレーニング用に外部データにアクセスし、モデルを保存してデプロイできるようにするため) とクラスターストレージ (データを永続化するため) を設定することもできます。同じプロジェクト内のワークベンチは、オブジェクトストレージを介して、データサイエンスパイプラインおよびモデルサーバーとモデルおよびデータを共有できます。
データ保持が必要なデータサイエンスプロジェクトの場合は、作成しているワークベンチにコンテナーストレージを追加できます。
ワークベンチは、プロジェクト内に複数作成できます。新しいワークベンチを作成するタイミングは、次のような要因によって異なります。
- ワークベンチの設定 (CPU、RAM、IDE など)。新しいタスクに対応するために既存のワークベンチの設定の編集を避ける場合は、代わりに新しいワークベンチを作成します。
- タスクまたはアクティビティーの分離。たとえば、あるワークベンチを大規模言語モデル (LLM) の実験アクティビティーに使用し、別のワークベンチをデモ専用に使用し、さらに別のワークベンチをテストに使用するといったことが可能です。
4.1. ワークベンチイメージについて リンクのコピーリンクがクリップボードにコピーされました!
モデル開発に必要なツールとライブラリーを含むワークベンチイメージがプリインストールされています。提供されているワークベンチイメージを使用することも、OpenShift AI 管理ユーザーがニーズに合わせてカスタムワークベンチイメージを作成することもできます。
一貫性のある安定したモデル開発プラットフォームを実現するために、提供されている多くのワークベンチイメージには、同じバージョンの Python が含まれています。OpenShift AI で利用可能なワークベンチイメージのほとんどは、事前に構築されており、OpenShift AI をインストールまたはアップグレードした後すぐに使用できます。
ワークベンチイメージとパッケージに対する Red Hat のサポートは、Red Hat OpenShift AI: サポートされる構成 を参照してください。
次の表は、Red Hat OpenShift AI とともにデフォルトでインストールされるワークベンチイメージを示しています。
これらのイメージで提供されるプリインストールされたパッケージがユースケースに十分でない場合は、次のオプションがあります。
- デフォルトのイメージを起動した後、追加のライブラリーをインストールします。このオプションは、モデルを開発するときにアドホックにライブラリーを追加する場合に適しています。ただし、インストールされたライブラリーの依存関係を管理するのは難しい場合があり、ワークベンチを再起動すると変更が保存されません。
- 追加のライブラリーまたはパッケージを含むカスタムイメージを作成します。詳細は、カスタムワークベンチイメージの作成 を参照してください。
この表で (Technology Preview) と示されているワークベンチイメージは、Red Hat の製品サービスレベルアグリーメント (SLA) ではサポートされておらず、機能的に完全ではない可能性があります。Red Hat は、本番環境でテクノロジープレビュー機能を使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
| イメージ名 | 説明 |
|---|---|
| CUDA | GPU サポートを必要とするコンピュート集約型データサイエンスモデルを使用している場合は、Compute Unified Device Architecture (CUDA) ワークベンチイメージを使用して NVIDIA CUDA Toolkit にアクセスします。このツールキットを使用すると、GPU により高速化されたライブラリーと最適化ツールを使用して作業を最適化できます。 |
| Standard Data Science | TensorFlow または PyTorch を必要としないモデルには、標準データサイエンスワークベンチイメージを使用します。このイメージには、機械学習モデルの開発に役立つ、一般的に使用されるライブラリーが含まれています。 |
| TensorFlow | TensorFlow は、機械学習のためのオープンソースプラットフォームです。TensorFlow を使用すると、機械学習モデルを構築、トレーニング、デプロイできます。TensorFlow には、計算グラフの視覚化など、高度なデータ可視化機能が含まれています。また、モデルの進捗を簡単に監視し、追跡することもできます。 |
| PyTorch | PyTorch は、ディープラーニング向けに最適化されたオープンソースの機械学習ライブラリーです。コンピュータービジョンまたは自然言語処理モデルを使用している場合は、Pytorch ワークベンチイメージを使用します。 |
| Minimal Python | 高度な機械学習機能や、計算量の多いデータサイエンス作業のための追加のリソースが必要ない場合は、Minimal Python イメージを使用してモデルを開発できます。 |
| TrustyAI | TrustyAI ワークベンチイメージを使用して、モデルの説明可能性、トレース、アカウンタービリティー、およびランタイムモニタリングを活用したデータサイエンス作業を活用します。Jupyter ノートブックの例は、TrustyAI Explainability リポジトリー を参照してください。 |
| code-server |
code-server ワークベンチイメージを使用すると、さまざまなエクステンションを使用して新しい言語、テーマ、デバッガーを追加し、追加のサービスに接続することで、ニーズに合わせてワークベンチ環境をカスタマイズできます。構文の強調表示、自動インデント、括弧の一致、およびシームレスな自動化のための自動タスクランナーにより、データサイエンス作業の効率が向上します。詳細は、GitHub の code-server を参照してください。 注意: Elyra ベースのパイプラインは、code-server ワークベンチイメージでは使用できません。 |
| RStudio Server (テクノロジープレビュー) |
RStudio Server ワークベンチイメージを使用して、統計コンピューティングおよびグラフィックス用のプログラミング言語である R の統合開発環境である RStudio IDE にアクセスします。詳細は、RStudio Server のサイト を参照してください。
RStudio Server ノートブックイメージを使用するには、まずシークレットを作成し、BuildConfig をトリガーしてイメージをビルドします。次に、 重要
免責事項: |
| CUDA - RStudio Server (テクノロジープレビュー) | CUDA の使用 - RStudio IDE および NVIDIA CUDA Toolkit にアクセスする RStudio Server ワークベンチイメージRStudio は、統計コンピューティングおよびグラフィックス用のプログラミング言語である R の統合開発環境です。NVIDIA CUDA Toolkit を使用すると、GPU により高速化されたライブラリーと最適化ツールを使用して作業を最適化できます。詳細は、RStudio Server のサイト を参照してください。
CUDA - RStudio Server ワークベンチイメージを使用するには、まずシークレットを作成し、BuildConfig をトリガーしてイメージをビルドします。次に、 重要
免責事項: CUDA - RStudio Server ワークベンチイメージには、NVIDIA CUDA テクノロジーが含まれています。CUDA のライセンス情報は https://docs.nvidia.com/cuda/ で入手できます。このサンプルワークベンチを使用する前に、ライセンス条項を確認してください。 |
| ROCm | ROCm ワークベンチイメージを使用して、OpenShift AI の AMD GPU 上で AI および機械学習ワークロードを実行します。高性能 GPU アクセラレーション向けに最適化された ROCm ライブラリーとツールを含んでおり、カスタムの AI ワークフローとデータ処理タスクに対応します。このイメージは、特定の AI 開発ニーズに合わせてカスタマイズされた追加のフレームワークまたは依存関係を統合するために使用します。 |
| ROCm-PyTorch | ROCm-PyTorch ワークベンチイメージを使用して、OpenShift AI の AMD GPU 上で PyTorch ワークロードを実行します。ROCm アクセラレーション PyTorch ライブラリーが含まれており、効率的なディープラーニングのトレーニング、推論、実験が可能になります。このイメージは、PyTorch ベースのワークフローを使用するデータサイエンティスト向けに設計されており、GPU スケジューリングとの統合を提供します。 |
| ROCm-TensorFlow | ROCm-TensorFlow ワークベンチイメージを使用して、OpenShift AI の AMD GPU 上で TensorFlow ワークロードを実行します。高性能なディープラーニングモデルのトレーニングと推論をサポートする ROCm アクセラレーション TensorFlow ライブラリーが含まれています。このイメージは、AMD GPU での TensorFlow 開発を簡素化し、リソースのスケーリングと管理のために OpenShift AI と統合します。 |
4.2. RStudio Server ワークベンチイメージのビルド リンクのコピーリンクがクリップボードにコピーされました!
RStudio Server および CUDA - RStudio Server ワークベンチイメージは、現在、Red Hat OpenShift AI でテクノロジープレビュー機能として利用できます。
テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat では、実稼働環境での使用を推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
Red Hat OpenShift AI には、次の RStudio Server ワークベンチイメージが含まれています。
RStudio Server ワークベンチイメージ
RStudio Server ワークベンチイメージを使用すると、R プログラミング言語の統合開発環境である RStudio IDE にアクセスできます。R は、データ分析と予測をサポートするための統計計算とグラフィックスに使用されます。
重要免責事項: Red Hat は、OpenShift AI のワークベンチの管理をサポートしています。ただし、Red Hat は RStudio ソフトウェアのサポートを提供していません。RStudio Server は rstudio.org から入手できます。RStudio Server には RStudio のライセンス条項が適用されます。このサンプルワークベンチを使用する前に、ライセンス条項を確認してください。
CUDA - RStudio Server ワークベンチイメージ
CUDA - RStudio Server ワークベンチイメージを使用すると、RStudio IDE および NVIDIA CUDA Toolkit にアクセスできます。RStudio IDE は、統計コンピューティングおよびグラフィックス用の R プログラミング言語の統合開発環境です。NVIDIA CUDA Toolkit を使用すると、GPU により高速化されたライブラリーと最適化ツールを使用して作業を強化できます。
重要免責事項: Red Hat は、OpenShift AI のワークベンチの管理をサポートしています。ただし、Red Hat は RStudio ソフトウェアのサポートを提供していません。RStudio Server は rstudio.org から入手できます。RStudio Server には RStudio のライセンス条項が適用されます。このサンプルワークベンチを使用する前に、ライセンス条項を確認してください。
CUDA - RStudio Server ワークベンチイメージには、NVIDIA CUDA テクノロジーが含まれています。CUDA のライセンス情報は、CUDA Toolkit のドキュメント で入手できます。このサンプルワークベンチを使用する前に、ライセンス条項を確認してください。
RStudio Server および CUDA - RStudio Server ワークベンチイメージを使用するには、まずシークレットを作成し、BuildConfig をトリガーしてイメージをビルドします。次に、rstudio-rhel9 および cuda-rstudio-rhel9 イメージストリームを編集して OpenShift AI UI でイメージを有効にする必要があります。
前提条件
-
RStudio Server のビルドプロセスを開始する前に、クラスター上の
rstudio-server-rhel9で少なくとも 1 CPU と 2 Gi のメモリーが使用可能であり、cuda-rstudio-server-rhel9で 1.5 CPU と 8 Gi のメモリーが使用可能であることを確認した。 - OpenShift クラスターにログインしている。
-
OpenShift の
cluster-adminロールを持っている。 - アクティブな Red Hat Enterprise Linux (RHEL) サブスクリプションを持っている。
手順
サブスクリプションマネージャーの認証情報を使用してシークレットを作成します。認証情報は、通常、Red Hat カスタマーポータルのユーザー名とパスワードです。
注記: シークレットの名前は、
rhel-subscription-secretにする必要があります。シークレットのUSERNAMEキーとPASSWORDキーは、大文字にする必要があります。oc create secret generic rhel-subscription-secret --from-literal=USERNAME=<username> --from-literal=PASSWORD=<password> -n redhat-ods-applications
oc create secret generic rhel-subscription-secret --from-literal=USERNAME=<username> --from-literal=PASSWORD=<password> -n redhat-ods-applicationsCopy to Clipboard Copied! Toggle word wrap Toggle overflow ビルドを開始します。
軽量の RStudio Server のビルドを開始するには、以下を実行します。
oc start-build rstudio-server-rhel9 -n redhat-ods-applications --follow
oc start-build rstudio-server-rhel9 -n redhat-ods-applications --followCopy to Clipboard Copied! Toggle word wrap Toggle overflow CUDA 対応の RStudio Server のビルドを開始するには、
cuda-rstudio-server-rhel9BuildConfig をトリガーします。oc start-build cuda-rstudio-server-rhel9 -n redhat-ods-applications --follow
oc start-build cuda-rstudio-server-rhel9 -n redhat-ods-applications --followCopy to Clipboard Copied! Toggle word wrap Toggle overflow
次のコマンドを使用して、ビルドプロセスが正常に完了したことを確認します。成功したビルドは
Completeと表示されます。oc get builds -n redhat-ods-applications
oc get builds -n redhat-ods-applicationsCopy to Clipboard Copied! Toggle word wrap Toggle overflow ビルドが正常に完了したら、次のコマンドを使用して、ワークベンチイメージを OpenShift AI UI で使用できるようにします。
RStudio Server ワークベンチイメージを有効にするには、以下を実行します。
oc label -n redhat-ods-applications imagestream rstudio-rhel9 opendatahub.io/notebook-image='true'
oc label -n redhat-ods-applications imagestream rstudio-rhel9 opendatahub.io/notebook-image='true'Copy to Clipboard Copied! Toggle word wrap Toggle overflow CUDA - RStudio Server ワークベンチイメージを有効にするには、以下を実行します。
oc label -n redhat-ods-applications imagestream cuda-rstudio-rhel9 opendatahub.io/notebook-image='true'
oc label -n redhat-ods-applications imagestream cuda-rstudio-rhel9 opendatahub.io/notebook-image='true'Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
- RStudio Server および CUDA - RStudio Server イメージは、Red Hat OpenShift AI ダッシュボードの Applications → Enabled メニューで確認できます。
- R Studio Server または CUDA - RStudio Server は、Data science projects → Workbenches → Create workbench → Notebook image → Image selection ドロップダウンリストで確認できます。
4.3. ワークベンチの作成 リンクのコピーリンクがクリップボードにコピーされました!
ワークベンチを作成するときは、イメージ (IDE、パッケージ、その他の依存関係) を指定します。接続、クラスターストレージを設定し、コンテナーストレージを追加することもできます。
前提条件
- Red Hat OpenShift AI にログインしている。
- プロジェクトを作成している。
Red Hat OpenShift AI の外部で Simple Storage Service (S3) アカウントを作成し、既存の S3 ストレージバケットへの接続を作成する場合は、ストレージバケットの次の認証情報がある。
- エンドポイント URL
- アクセスキー
- シークレットキー
- リージョン
- バケット名
詳細は、S3 互換オブジェクトストアでのデータの使用 を参照してください。
手順
OpenShift AI ダッシュボードで、Data science projects をクリックします。
Data science projects のページが開きます。
ワークベンチを追加するプロジェクトの名前をクリックします。
プロジェクトの詳細ページが開きます。
- Workbenches タブをクリックします。
Create workbench をクリックします。
Create workbench ページが開きます。
- Name フィールドに、ワークベンチの一意の名前を入力します。
オプション: ワークベンチのデフォルトのリソース名を変更する場合は、Edit resource name をクリックします。
リソース名は、OpenShift でリソースに付けられるラベルです。有効な文字には、小文字、数字、ハイフン (-) が含まれます。リソース名は 30 文字を超えることはできず、文字で始まり、文字または数字で終わる必要があります。
注記: ワークベンチの作成後はリソース名を変更できません。表示名と説明のみ編集できます。
- オプション: Description フィールドに、ワークベンチの説明を入力します。
Workbench image セクションで、フィールドに入力して、ワークベンチで使用するワークベンチイメージを指定します。
Image selection リストから、ユースケースに適したワークベンチイメージを選択します。ワークベンチイメージには、IDE と Python パッケージ (再利用可能なコード) が含まれています。プロジェクトスコープのイメージが存在する場合、Image selection リストには、グローバルイメージとプロジェクトスコープのイメージを区別するためのサブ見出しが含まれます。
必要に応じて、View package information をクリックして、選択したイメージに含まれているパッケージのリストを表示します。
ワークベンチイメージに複数の利用可能なバージョンがある場合は、Version selection リストから使用するワークベンチイメージバージョンを選択します。最新のパッケージバージョンを使用するために、最後に追加されたイメージを使用することを推奨します。
注記ワークベンチを作成した後で、ワークベンチのイメージを変更できます。
Deployment size セクションで、ハードウェアプロファイル機能が有効になっているかどうかに応じて、次のいずれかのオプションを選択します。
重要ハードウェアプロファイル機能は現在、Red Hat OpenShift AI でテクノロジープレビュー機能として提供されています。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat では、実稼働環境での使用を推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
ハードウェアプロファイル機能が有効になっていない場合:
Container size リストから、トレーニングまたはチューニングするモデルのサイズに適したサイズを選択します。
たとえば、Kubeflow Training を使用したモデルのファインチューニング で説明されているファインチューニングジョブの例を実行するには、Medium を選択します。
Accelerator リストから、ワークベンチに適したアクセラレータープロファイルを選択します。
プロジェクトスコープのアクセラレータープロファイルが存在する場合、Accelerator リストには、グローバルアクセラレータープロファイルとプロジェクトスコープのアクセラレータープロファイルを区別するためのサブ見出しが含まれます。
ハードウェアプロファイル機能が有効になっている場合:
Hardware profile リストから、ワークベンチに適したハードウェアプロファイルを選択します。
プロジェクトスコープのハードウェアプロファイルが存在する場合、Hardware profile リストには、グローバルハードウェアプロファイルとプロジェクトスコープのハードウェアプロファイルを区別するためのサブ見出しが含まれます。
ハードウェアプロファイルは、コンテナーに割り当てられる CPU の数とメモリーの量を指定し、両方に対して保証される最小値 (要求) と最大値 (制限) を設定します。
デフォルト値を変更する場合は、Customize resource requests and limit をクリックし、新しい最小値 (要求) と最大値 (制限) を入力します。
重要デフォルトでは、ハードウェアプロファイル機能は有効ではありません。ハードウェアプロファイルは、ダッシュボードのナビゲーションメニューやユーザーインターフェイスの他の場所には表示されません。非推奨となったアクセラレータープロファイル機能に関連付けられたユーザーインターフェイスコンポーネントは、引き続き表示されます。ダッシュボードのナビゲーションメニューに Settings → Hardware profiles オプションと、ハードウェアプロファイルに関連付けられたユーザーインターフェイスコンポーネントを表示するには、OpenShift の
OdhDashboardConfigカスタムリソース (CR) でdisableHardwareProfiles値をfalseに設定します。ダッシュボード設定オプションの設定に関する詳細は、ダッシュボードのカスタマイズ を参照してください。
オプション: Environment variables セクションで、環境変数の値を選択して指定します。
ワークベンチの設定中に環境変数を設定すると、ワークベンチのボディーや IDE コマンドラインインターフェイスで環境変数を定義する必要がなくなるため、後で時間を節約できます。
S3 互換ストレージを使用している場合は、次の推奨環境変数を追加します。
-
AWS_ACCESS_KEY_IDは、Amazon Web Services のアクセスキー ID を指定します。 -
AWS_SECRET_ACCESS_KEYは、AWS_ACCESS_KEY_IDで指定されるアカウントのシークレットアクセスキーを指定します。
変数を追加するときに Secret を選択した場合は、OpenShift AI が認証情報を Kubernetes シークレットとして保護された namespace に保存します。
-
Cluster storage セクションで、ワークベンチのストレージを設定します。以下のオプションのいずれかを選択します。
Create new persistent storage: ワークベンチのシャットダウン後も保持されるストレージを作成します。関連するフィールドに入力してストレージを定義します。
- クラスターストレージの name を入力します。
- クラスターストレージの description を入力します。
クラスターストレージの storage class を選択します。
注記クラスターストレージをワークベンチに追加した後は、ストレージクラスを変更できません。
ストレージクラスが複数のアクセスモードをサポートしている場合は、Access mode を選択してボリュームへのアクセス方法を定義します。詳細は、永続ストレージについて を参照してください。
クラスターと OpenShift AI 管理者によってそのストレージクラスに対して有効にされたアクセスモードのみが表示されます。
- Persistent storage size の下に、ギビバイトまたはメビバイト単位で新しいサイズを入力します。
- Use existing persistent storage: 既存のストレージを再利用します。Persistent storage リストからストレージを選択します。
オプション: ワークベンチに接続を追加できます。接続は、オブジェクトストレージバケットなどのデータソースまたはシンクに接続するために必要な設定パラメーターを含むリソースです。ストレージバケットを使用して、データ、モデル、パイプラインアーティファクトを保存できます。接続を使用して、デプロイするモデルのロケーションを指定することもできます。
Connections セクションで、既存の接続を使用するか、新しい接続を作成します。
既存の接続を次のように使用します。
- Attach existing connections をクリックします。
- Connection リストから、以前に定義した接続を選択します。
次のように新しい接続を作成します。
- Create connection をクリックします。Add connection ダイアログが開きます。
- Connection type ドロップダウンリストから、接続のタイプを選択します。Connection details セクションが表示されます。
前の手順で S3 compatible object storage を選択した場合は、接続の詳細を設定します。
- Connection name フィールドに、接続用の一意の名前を入力します。
- オプション: Description フィールドに、接続の説明を入力します。
- Access key フィールドに、S3 互換オブジェクトストレージプロバイダーのアクセスキー ID を入力します。
- Secret key フィールドに、指定した S3 互換オブジェクトストレージアカウントのシークレットアクセスキーを入力します。
- Endpoint フィールドに、S3 互換オブジェクトストレージバケットのエンドポイントを入力します。
- Region フィールドに、S3 互換オブジェクトストレージアカウントのデフォルトのリージョンを入力します。
- Bucket フィールドに、S3 互換のオブジェクトストレージバケットの名前を入力します。
- Create をクリックします。
前の手順で URI を選択した場合は、接続の詳細を設定します。
- Connection name フィールドに、接続用の一意の名前を入力します。
- オプション: Description フィールドに、接続の説明を入力します。
- URI フィールドに、Uniform Resource Identifier (URI) を入力します。
- Create をクリックします。
- Create workbench をクリックします。
検証
- 作成したワークベンチは、プロジェクトの Workbenches タブに表示されます。
- 作成プロセス中にワークベンチに関連付けたクラスターストレージは、プロジェクトの Cluster storage タブに表示されます。
- Workbenches タブの Status 列には、ワークベンチサーバーが起動している場合は Starting のステータスが表示され、ワークベンチが正常に起動された場合は Running のステータスが表示されます。
-
オプション: open アイコン (
) をクリックすると、IDE が新しいウィンドウで開きます。
第5章 次のステップ リンクのコピーリンクがクリップボードにコピーされました!
次の製品ドキュメントで、OpenShift AI を使用してデータサイエンスソリューションを開発、テスト、およびデプロイする方法を説明しています。
- エンドツーエンドのチュートリアルを試す
不正検出モデルの例を使用して次のタスクを完了するための詳細なガイダンスです。
- Jupyter ノートブックを使用して、事前トレーニングされた不正検出モデルを確認します。
- OpenShift AI モデルサービングを使用してモデルをデプロイします。
- 自動パイプラインを使用してモデルを改良し、トレーニングします。
- ワークベンチ IDE でモデルを開発してトレーニングする
ワークベンチ IDE (JupyterLab、コードサーバー、または RStudio Server) にアクセスする方法を説明しています。
JupyterLab IDE に関しては、次のタスクを説明しています。
- Jupyter ノートブックの作成とインポート
- Git を使用した Jupyter ノートブックでの共同作業
- Python パッケージの表示とインストール
- よくある問題のトラブルシューティング
- パイプラインを使用して ML ワークフローを自動化する
Docker コンテナーを使用して、データサイエンスパイプラインを備えたポータブル機械学習 (ML) ワークフローを構築することで、OpenShift AI でデータサイエンスプロジェクトを強化できます。パイプラインを使用して、新しく受信したデータに基づいてモデルを継続的に再トレーニングおよび更新します。
- モデルをデプロイしてテストする
ML モデルを OpenShift クラスターにデプロイしてテストし、インテリジェントアプリケーションに統合します。モデルをデプロイすると、API 呼び出しを使用してアクセスできるサービスとして利用できるようになります。API 呼び出しを通じて提供されたデータ入力に基づいて予測を返すことができます。
- モデルを監視および管理する
Red Hat OpenShift AI サービスには、外部アプリケーションに統合するために Red Hat OpenShift Dedicated または Red Hat OpenShift Service on AWS でモデルをホストするためのモデルデプロイメントオプションが含まれています。
- パフォーマンスを最適化するためにアクセラレーターを追加する
大規模なデータセットを扱う場合は、NVIDIA GPU、AMD GPU、Intel Gaudi AI アクセラレーターなどのアクセラレーターを使用して、OpenShift AI のデータサイエンスモデルのパフォーマンスを最適化できます。アクセラレーターを使用すると、作業を拡張し、待ち時間を短縮し、生産性を向上させることができます。
- パフォーマンス向上のために分散ワークロードを実装する
分散ワークロードを実装して複数のクラスターノードを並行して使用し、より高速で効率的なデータ処理とモデルトレーニングを実現します。
- 拡張機能を探す
サードパーティーアプリケーション統合を使用して、中核的な OpenShift AI ソリューションを拡張します。Starburst、Intel AI Tools、IBM などの主要な AI/ML ソフトウェアテクノロジーパートナーを、Red Hat Marketplace を通じて利用することもできます。
5.1. 関連情報 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat は、製品ドキュメントに加えて、OpenShift AI およびサポートされているアプリケーションに関する豊富な学習リソースを提供しています。
OpenShift AI ダッシュボードの Resources ページでは、カテゴリーリンクを使用して、データサイエンスワークフローのさまざまな段階のリソースをフィルターできます。たとえば、Model serving カテゴリーをクリックすると、モデルをデプロイするさまざまな方法を説明するリソースが表示されます。すべてのカテゴリーのリソースを表示するには、All items をクリックします。
選択したカテゴリーに対して、追加のオプションを適用して、利用可能なリソースをフィルタリングできます。たとえば、ハウツー記事、クイックスタート、チュートリアルなどのタイプでフィルタリングできます。これらのリソースから、一般的な疑問に対する答えを得ることができます。
Red Hat OpenShift AI のサポート要件と制限は、Red Hat OpenShift AI: サポートされる構成 を参照してください。