第2章 プロジェクトワークベンチの使用


2.1. ワークベンチの作成と 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) の実験アクティビティーに使用し、別のワークベンチをデモ専用に使用し、さらに別のワークベンチをテストに使用するといったことが可能です。

2.1.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 のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。

表2.1 デフォルトのノートブックイメージ
イメージ名説明

CUDA

GPU サポートを必要とするコンピュート集約型データサイエンスモデルを使用している場合は、Compute Unified Device Architecture (CUDA) ノートブックイメージを使用して NVIDIA CUDA Toolkit にアクセスします。このツールキットを使用すると、GPU により高速化されたライブラリーと最適化ツールを使用して作業を最適化できます。

Standard Data Science

TensorFlow または PyTorch を必要としないモデルには、Standard Data Science ノートブックイメージを使用します。このイメージには、機械学習モデルの開発に役立つ、一般的に使用されるライブラリーが含まれています。

TensorFlow

TensorFlow は、機械学習のためのオープンソースプラットフォームです。TensorFlow を使用すると、マシンラーニングモデルを構築し、トレーニングし、デプロイできます。TensorFlow には、計算グラフの視覚化など、高度なデータ可視化機能が含まれています。また、モデルの進捗を簡単に監視し、追跡することもできます。

PyTorch

PyTorch は、ディープラーニング向けに最適化されたオープンソース機械学習ライブラリーです。コンピュータービジョンまたは自然言語処理モデルを使用している場合は、Pytorch ノートブックイメージを使用してください。

Minimal Python

高度な機械学習機能や、計算量の多いデータサイエンス作業のための追加のリソースが必要ない場合は、Minimal Python イメージを使用してモデルを開発できます。

TrustyAI

TrustyAI ノートブックイメージを使用して、モデルの説明可能性、トレースと説明可能性、およびランタイム監視を使用したデータサイエンスの作業を活用します。

HabanaAI

HabanaAI ノートブックイメージは、Intel Gaudi AI アクセラレーターを使用して高性能ディープラーニング (DL) を最適化します。Intel Gaudi AI アクセラレーターは、DL トレーニングのワークロードの処理を高速化し、トレーニングのスループットと効率を最大化します。

code-server (テクノロジープレビュー)

code-server ノートブックイメージを使用すると、さまざまな拡張機能を使用して新しい言語、テーマ、デバッガーを追加し、追加のサービスに接続することで、ノートブック環境をニーズに合わせてカスタマイズできます。構文の強調表示、自動インデント、括弧の一致、およびシームレスな自動化のための自動タスクランナーにより、データサイエンス作業の効率が向上します。詳細は、GitHub の code-server を参照してください。

注記

Elyra ベースのパイプラインは、code-server ノートブックイメージでは使用できません。

RStudio Server (テクノロジープレビュー)

RStudio Server ノートブックイメージを使用して、統計コンピューティングおよびグラフィックス用のプログラミング言語である R の統合開発環境である RStudio IDE にアクセスします。詳細は、RStudio Server のサイト を参照してください。

RStudio Server ノートブックイメージを使用するには、まずシークレットを作成し、BuildConfig をトリガーしてイメージをビルドします。次に、rstudio-rhel9 イメージストリームを編集して OpenShift AI UI でイメージを有効にする必要があります。詳細は、RStudio Server ワークベンチイメージのビルド を参照してください。

重要

免責事項:
Red Hat は、OpenShift AI のワークベンチの管理をサポートしています。ただし、Red Hat は RStudio ソフトウェアのサポートを提供していません。RStudio Server は https://rstudio.org/ から入手できます。RStudio Server には RStudio のライセンス条項が適用されます。このサンプルワークベンチを使用する前に、ライセンス条項を確認してください。

CUDA - RStudio Server (テクノロジープレビュー)

CUDA - RStudio Server ノートブックイメージを使用して、RStudio IDE および NVIDIA CUDA Toolkit にアクセスします。RStudio は、統計コンピューティングおよびグラフィックス用のプログラミング言語である R の統合開発環境です。NVIDIA CUDA Toolkit を使用すると、GPU により高速化されたライブラリーと最適化ツールを使用して作業を最適化できます。詳細は、RStudio Server のサイト を参照してください。

CUDA - RStudio Server ノートブックイメージを使用するには、まずシークレットを作成し、BuildConfig をトリガーしてイメージをビルドします。次に、cuda-rstudio-rhel9 イメージストリームを編集して OpenShift AI UI でイメージを有効にする必要があります。詳細は、RStudio Server ワークベンチイメージのビルド を参照してください。

重要

免責事項:
Red Hat は、OpenShift AI のワークベンチの管理をサポートしています。ただし、Red Hat は RStudio ソフトウェアのサポートを提供していません。RStudio Server は https://rstudio.org/ から入手できます。RStudio Server には RStudio のライセンス条項が適用されます。このサンプルワークベンチを使用する前に、ライセンス条項を確認してください。

CUDA - RStudio Server ノートブックイメージには、NVIDIA CUDA テクノロジーが含まれています。CUDA のライセンス情報は https://docs.nvidia.com/cuda/ で入手できます。このサンプルワークベンチを使用する前に、ライセンス条項を確認してください。

2.1.2. ワークベンチの作成

ワークベンチを作成するときは、イメージ (IDE、パッケージ、その他の依存関係) を指定します。データ接続、クラスターストレージを設定し、コンテナーストレージを追加することもできます。

前提条件

  • Red Hat OpenShift AI にログインしている。
  • 特殊な OpenShift AI グループを使用する場合は、OpenShift のユーザーグループ、または、管理者グループ (rhoai-usersrhoai-admins など) に属している。
  • プロジェクトを作成した。
  • Red Hat OpenShift AI の外部で Simple Storage Service (S3) アカウントを作成済みで、既存の S3 ストレージバケットへのデータ接続を作成する場合は、ストレージバケットの次の認証情報を持っている。

    • エンドポイント URL
    • アクセスキー
    • シークレットキー
    • リージョン
    • バケット名

    AWS S3 に保存されているデータの使用に関する詳細は、S3 互換オブジェクトストアのデータの使用 を参照してください。

手順

  1. OpenShift AI ダッシュボードから、Data Science Projects をクリックします。
  2. ワークベンチを追加するプロジェクトの名前をクリックします。

    プロジェクトの Details ページが開きます。

  3. Workbenches セクションで、Create a workbench をクリックします。
  4. Create workbench ページで、作成するワークベンチのプロパティーを設定します。

    1. Name フィールドに、ワークベンチの名前を入力します。
    2. オプション: Description フィールドに、ワークベンチを定義する説明を入力します。
    3. Notebook image セクションで、フィールドに入力して、ワークベンチで使用するワークベンチイメージを指定します。

      Image selection リストから、ユースケースに適したワークベンチイメージを選択します。ワークベンチイメージには、IDE と Python パッケージ (再利用可能なコード) が含まれています。必要に応じて、View package information オプションをクリックして、選択したイメージに含まれているパッケージのリストを表示します。

      ワークベンチイメージに複数のバージョンがある場合は、Versions セクションから使用するワークベンチイメージのバージョンを選択します。最新のパッケージバージョンを使用するために、最後に追加されたイメージを使用することを推奨します。

      注記

      ワークベンチを作成した後で、ワークベンチのイメージを変更できます。

    4. Deployment size セクションの Container size リストから、サーバーのコンテナーサイズを選択します。コンテナーサイズは、CPU の数、メモリーの量、コンテナーの最小および最大の要求容量を制御します。
    5. オプション: 環境変数の値を選択して指定します。

      ワークベンチの設定中に環境変数を設定すると、ノートブックのボディーや IDE コマンドラインインターフェイスで環境変数を定義する必要がなくなるため、後で時間を節約できます。

      S3 互換ストレージを使用している場合は、次の推奨環境変数を追加します。

      • AWS_ACCESS_KEY_ID は、Amazon Web Services のアクセスキー ID を指定します。
      • AWS_SECRET_ACCESS_KEY は、AWS_ACCESS_KEY_ID で指定されるアカウントのシークレットアクセスキーを指定します。

      変数を追加するときに Secret を選択した場合、OpenShift AI が認証情報を Kubernetes シークレットとして保護された namespace に保存します。

    6. ワークベンチのストレージを設定します。以下のオプションのいずれかを選択します。

      • Create new persistent storage: ワークベンチのシャットダウン後も保持されるストレージを作成します。関連するフィールドに入力してストレージを定義します。
      • Use existing persistent storage: 既存のストレージを再利用します。Persistent storage リストからストレージを選択します。
    7. 必要に応じて、ワークベンチにデータ接続を追加できます。データ接続は、データソースまたはオブジェクトストレージバケットに接続するために必要な設定パラメーターを含むリソースです。現在、S3 互換のデータ接続のみがサポートされています。ストレージバケットを使用して、データ、モデル、パイプラインアーティファクトを保存できます。データ接続を使用して、デプロイするモデルの場所を指定することもできます。

      Data connections セクションで、Use a data connection チェックボックスをオンにします。

      • 以下のように新しいデータ接続を作成します。

        1. Create new data connection を選択します。
        2. Name フィールドに、データ接続の一意の名前を入力します。
        3. Access key フィールドに、S3 互換オブジェクトストレージプロバイダーのアクセスキー ID を入力します。
        4. Secret key フィールドに、指定した S3 互換オブジェクトストレージアカウントのシークレットアクセスキーを入力します。
        5. Endpoint フィールドに、S3 互換オブジェクトストレージバケットのエンドポイントを入力します。
        6. Region フィールドに、S3 互換オブジェクトストレージアカウントのデフォルトのリージョンを入力します。
        7. Bucket フィールドに、S3 互換のオブジェクトストレージバケットの名前を入力します。
      • 以下のように既存のデータ接続を使用します。

        1. Use existing data connection を選択します。
        2. Data connection リストから、以前に定義したデータ接続を選択します。
  5. Create workbench をクリックします。

検証

  • 作成したワークベンチは、プロジェクトの Workbenches タブに表示されます。
  • 作成プロセス中にワークベンチに関連付けたクラスターストレージは、プロジェクトの Cluster storage タブに表示されます。
  • Workbenches タブの Status 列には、ワークベンチサーバーが起動している場合は Starting のステータスが表示され、ワークベンチが正常に起動された場合は Running のステータスが表示されます。
  • 必要に応じて、Open リンクをクリックして、IDE を新しいウィンドウで開きます。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.