このガイドは、すべての種類の W&B デプロイメントに適用されます:
- Multi-tenant Cloud:チームレベルの BYOB
- Dedicated Cloud:インスタンスおよびチームレベルの BYOB
- Self-Managed:インスタンスおよびチームレベルの BYOB
概要
- W&B SDK / CLI / UI とユーザーのバケット間の通信は、事前署名付き URL を使用して行われます。
- W&B ではガーベジコレクション処理を使用して W&B Artifacts を削除します。詳細については、Deleting Artifacts を参照してください。
- バケットを設定する際にサブパスを指定することで、W&B がバケットのルート直下のフォルダにファイルを保存しないようにできます。これにより、組織のバケットガバナンス・ポリシーにより適合させるのに役立ちます。
中央データベースに保存されるデータとバケットに保存されるデータ
データベース
- ユーザー、Teams、アーティファクト、Experiments、プロジェクトに関するメタデータ
- Reports
- 実験ログ
- システムのメトリクス
- コンソールのログ
バケット
- 実験ファイルとメトリクス
- アーティファクトファイル
- メディアファイル
- run ファイル
- Parquet 形式でエクスポートされた履歴メトリクスおよびシステムイベント
バケットのスコープ
| Scope | Description |
|---|---|
| Instance level | Dedicated Cloud および Self-Managed では、組織またはインスタンス内で必要な権限を持つユーザーは、そのインスタンスのストレージバケットに保存されているファイルにアクセスできます。Multi-tenant Cloud には適用されません。 |
| Team level | W&B Team が Team level のストレージバケットを使うように設定されている場合、そのチームメンバーはそこに保存されているファイルにアクセスできます。Team level のストレージバケットは、高機密データや厳格なコンプライアンス要件を持つチーム向けに、よりきめ細かいデータアクセス制御とデータ分離を可能にします。 Team level のストレージは、同じインスタンスを共有する異なる事業部門や部局が、インフラストラクチャと管理リソースを効率的に利用するのに役立ちます。また、異なる顧客案件向けに AI ワークフローを管理する別々のプロジェクトチームを分離することもできます。すべてのデプロイメントタイプで利用可能です。Team level の BYOB は、チームをセットアップするときに構成します。 |
- 同じバケットを、インスタンスと 1 つ以上のチームで共用する。
- 各チームが別々のバケットを使う、一部のチームはインスタンスバケットに書き込む、または複数のチームがサブパスに書き込むことで 1 つのバケットを共有する。
- 異なるチーム向けのバケットを、異なるクラウドインフラ環境やリージョンにホスティングし、異なるストレージ管理チームが運用する。
可用性マトリックス
- CoreWeave AI Object Storage: AI ワークロード向けに最適化された高性能な S3 互換オブジェクトストレージサービス。
- Amazon S3: 業界トップクラスのスケーラビリティ、データ可用性、セキュリティ、およびパフォーマンスを備えたオブジェクトストレージサービス。
- Google Cloud Storage: 非構造化データを大規模に保存するためのマネージドサービス。
- Azure Blob Storage: テキスト、バイナリデータ、画像、動画、ログなど、大量の非構造化データを保存するためのクラウドベースのオブジェクトストレージソリューション。
- MinIO Enterprise (AIStor) などの S3 互換ストレージ、またはお使いのクラウドやオンプレミスインフラストラクチャ上でホストされる、他のエンタープライズグレードのソリューション。
| W&B deployment type | Instance level | Team level | Additional information |
|---|---|---|---|
| Dedicated Cloud | ✓ | ✓ | Instance レベルおよび Team レベルの BYOB は、CoreWeave AI Object Storage、Amazon S3、Google Cloud Storage、Microsoft Azure Blob Storage、またはお使いのクラウドやオンプレミスインフラストラクチャ上でホストされる MinIO Enterprise (AIStor) などの S3 互換ストレージでサポートされます。 |
| Multi-tenant Cloud | Not Applicable | ✓1 | Team レベルの BYOB は、CoreWeave AI Object Storage、Amazon S3、および Google Cloud Storage でサポートされます。 |
| Self-Managed | ✓ | ✓ | Instance レベルおよび Team レベルの BYOB は、CoreWeave AI Object Storage、Amazon S3、Google Cloud Storage、Microsoft Azure Blob Storage、またはお使いのクラウドやオンプレミスインフラストラクチャ上でホストされる MinIO Enterprise (AIStor) などの S3 互換ストレージでサポートされます。 |
バケットをプロビジョニングする
- CoreWeave
- AWS
- Google Cloud
- Azure
- S3 互換
要件:
- マルチテナント クラウド、または
- Dedicated Cloud v0.73.0 以降、または
- Self-Managed v0.73.0 以上を Helm チャート v0.33.14+ でデプロイしていること
- AI Object Storage が有効になっていて、バケット、API アクセスキー、およびシークレットキーを作成する権限を持つ CoreWeave アカウント。
- W&B インスタンスから CoreWeave のネットワークエンドポイントに接続できる必要があります。
- マルチテナントクラウド: バケットポリシーに必要な組織 ID を取得します。
-
Dedicated Cloud / Self-Managed: バケットポリシーで必要となるお客様のネームスペースを取得してください。
- W&B アプリで、ユーザープロフィールアイコンをクリックし、System Console をクリックします。
- Authentication タブをクリックします。
- ページの一番下にある Customer Namespace の値をコピーします。この値はバケットポリシーを設定する際に使用するため、控えておいてください。
- System Console を閉じてかまいません。
- CoreWeave 上で、任意の名前を指定し、希望するアベイラビリティゾーンにバケットを作成します。必要に応じて、すべての W&B ファイルのサブパスとして W&B が使用するフォルダを作成します。バケット名、アベイラビリティゾーン、API アクセスキー、シークレットキー、サブパスをメモしておいてください。
-
バケットに次のクロスオリジンリソース共有 (CORS) ポリシーを設定します。
CoreWeave ストレージは S3 互換です。CORS の詳細については、AWS のドキュメント「Configuring cross-origin resource sharing (CORS)」を参照してください。
-
バケットに対して、W&B デプロイメントがそのバケットへアクセスし、クラウドインフラストラクチャ内の AI ワークロードやユーザーのブラウザがバケットへアクセスする際に利用する 事前署名付き URL を生成できるように、必要な権限を付与するバケットポリシーを構成します。CoreWeave のドキュメントにある Bucket Policy Reference を参照してください。
"Sid": "AllowUsersInOrg"で始まるステートメントは、組織内のユーザーにバケットへの直接アクセス権を付与します。この権限が不要な場合は、ポリシーからこのステートメントを省略できます。 -
バケットポリシー内のプレースホルダーを次の値に置き換えてください:
<cw-bucket>: 使用するバケット名。<cw-wandb-principal>:- Multi-tenant Cloud:
arn:aws:iam::wandb:static/wandb-integration-public - Dedicated Cloud または Self-Managed:
arn:aws:iam::wandb:static/wandb-integration
- Multi-tenant Cloud:
<wb-org-id>:- Multi-tenant Cloud: Provision your bucket から取得した organization ID。
- Dedicated Cloud または Self-Managed: Provision your bucket から取得した customer namespace。
- Dedicated Cloud:追加の手順の実施については、support までお問い合わせください。
-
Self-Managed: Self-Managed デプロイメントで、W&B を更新して環境変数
GORILLA_SUPPORTED_FILE_STORESを文字列cw://に厳密に設定し、その後 W&B を再起動します。これを行わない場合、チームストレージを設定するときに CoreWeave がオプションとして表示されません。
ストレージアドレスを決定する
<>)で囲まれたプレースホルダーは、使用するバケットの情報に置き換えてください。
詳細な手順については、タブを選択してください。
- CoreWeave
- AWS
- Google Cloud
- Azure
- S3-compatible
このセクションは、Dedicated Cloud または Self-Managed におけるチームレベルの BYOB の場合にのみ該当します。インスタンスレベルの BYOB や Multi-tenant Cloud の場合は、すでに W&B の設定 に進む準備ができています。以下の形式を使用して、バケットのフルパスを決定します。山かっこ(
<>)で囲まれたプレースホルダーを、バケットの値に置き換えてください。バケット形式:cwobject.com の HTTPS エンドポイントがサポートされています。TLS 1.3 が必須です。その他の CoreWeave エンドポイントに関心がある場合は、サポート までお問い合わせください。W&B を設定する
インスタンスレベルの BYOB
インスタンスレベルで CoreWeave AI Object Storage を利用する場合は、これらの手順には従わず、代わりに W&B サポート に連絡してください。セルフサービスでの設定はまだサポートされていません。
adminロールを持つユーザーとして W&B にログインします。- 画面上部のユーザーアイコンをクリックし、System Console をクリックします。
- Settings > System Connections に移動します。
- Bucket Storage セクションで、Identity フィールドに指定されているアイデンティティに、新しいバケットへのアクセス権が付与されていることを確認します。
- Provider を選択します。
- Bucket Name を入力します。
- 必要に応じて、新しいバケットで使用する Path を入力します。
- Save をクリックします。
チームレベルの BYOB
- 既存のバケットを使用する: まずはバケットのストレージの場所を確認する必要があります。
- 新しいバケットを作成する(マルチテナントクラウドのみ): チームを作成するときに、W&B がクラウドプロバイダ上に自動的にバケットを作成できます。これは CoreWeave、AWS、Google Cloud でサポートされています。
- チームが作成された後は、そのストレージは変更できません。
- インスタンスレベルの BYOB については、代わりに Instance level BYOB を参照してください。
- チーム用に CoreWeave ストレージを設定する予定がある場合は、CoreWeave requirements を確認し、バケットが CoreWeave で正しく設定されていることとチームの設定内容を確認してもらうために support に連絡してください。チーム作成後はストレージの詳細を変更できないためです。
- Dedicated Cloud / Self-Hosted
- Multi-tenant Cloud
- Dedicated Cloud: チームでストレージバケットを使用するために残りの手順に進む前に、バケットパスをアカウントチームに共有し、インスタンスのサポート対象ファイルストアに追加してもらう必要があります。
-
Self-Managed: チームでストレージバケットを使用するために残りの手順に進む前に、バケットパスを
GORILLA_SUPPORTED_FILE_STORES環境変数に追加し、その後 W&B を再起動する必要があります。 -
adminロールを持つユーザーとして W&B にログインし、左上のアイコンをクリックして左ナビゲーションを開き、Create a team to collaborate をクリックします。 - チーム名を入力します。
-
Storage Type を External storage に設定します。
チームのストレージとしてインスタンスレベルのストレージ(内部か外部かを問わない)を使用するには、インスタンスレベルのバケットが BYOB に設定されている場合でも、Storage Type を Internal のままにします。チーム専用の外部ストレージを使用する場合は、チームの Storage Type を External に設定し、次のステップでバケットの詳細を設定します。
- Bucket location をクリックします。
- 既存のバケットを使用する場合は、一覧から選択します。新しいバケットを追加する場合は、下部の Add bucket をクリックし、バケットの詳細を入力します。 Cloud provider をクリックし、CoreWeave、AWS、Google Cloud、または Azure を選択します。 クラウドプロバイダーが一覧にない場合は、インスタンスのサポート対象ファイルストアにバケットパスを追加するために、Provision your bucket の手順に従ったことを確認してください。ストレージプロバイダーがそれでも表示されない場合は、contact support に連絡してサポートを受けてください。
-
バケットの詳細を指定します。
- CoreWeave の場合は、バケット名のみを指定します。
- Amazon S3、Google Cloud、または S3 互換ストレージの場合は、前の手順 で確認した完全なバケットパスを指定します。
- W&B Dedicated または Self-Managed 上の Azure の場合は、Account name に Azure アカウントを、Container name に Azure Blob Storage コンテナを設定します。
- 必要に応じて、追加の接続設定を指定します:
- 該当する場合は、Path にバケットのサブパスを設定します。
- CoreWeave: 追加の接続設定は不要です。
- AWS: KMS key ARN に KMS 暗号化キーの ARN を設定します。
- Google Cloud: 追加の接続設定は不要です。
- Azure: Tenant ID と Managed Identity Client ID の値を指定します。
GORILLA_SUPPORTED_FILE_STORESで接続文字列を設定していない限り、これらのフィールドは必須です。
- Create team をクリックします。
トラブルシューティング
CoreWeave
- 接続エラー
- お使いの W&B インスタンスが CoreWeave のネットワークエンドポイントに接続できることを確認します。
- CoreWeave は仮想ホスト形式のパスを使用します。バケット名はパスの先頭にサブドメインとして含まれます。たとえば、
cw://bucket-name.cwobject.comは正しく、cw://cwobject.com/bucket-name/は正しくありません。 - バケット名には、アンダースコア(
_)や、DNS のルールと互換性のないその他の文字を含めてはいけません。 - バケット名は CoreWeave のすべてのロケーション間でグローバルに一意である必要があります。
- バケット名は予約済みプレフィックスである
cw-またはvip-で始まってはいけません。
- CORS 検証エラー
- CORS ポリシーが必要です。CoreWeave は S3 互換です。CORS の詳細については、AWS ドキュメントの Configuring cross-origin resource sharing (CORS) を参照してください。
AllowedMethodsにはGET、PUT、HEADメソッドを含める必要があります。ExposeHeadersにはETagを含める必要があります。- CORS ポリシーの
AllowedOriginsには、W&B フロントエンドのドメインを含める必要があります。このページで示す CORS ポリシーの例では、*を使用してすべてのドメインを許可しています。
- LOTA エンドポイントの問題
- W&B から LOTA エンドポイントへの接続は、まだサポートされていません。関心がある場合は、サポートまでご連絡ください。
- アクセスキーおよび権限エラー
- CoreWeave API Access Key の有効期限が切れていないことを確認します。
- CoreWeave API Access Key と Secret Key に、
GetObject、PutObject、DeleteObject、ListBucketの十分な権限が付与されていることを確認します。このページの例は、この要件を満たしています。詳細は CoreWeave ドキュメントの Create and Manage Access Keys を参照してください。
Google Cloud
Bucket does not have soft deletion enabledGoogle Cloud Storage のバケットでソフト削除が有効になっていることを確認してください。詳細は、バケットのソフト削除ポリシーを編集する を参照してください。