- 動画パイプラインから出力されたフレーム
- ブラウザー エージェントが撮影したスクリーンショット
- モデルが S3 に書き込んだ画像
参照バケットは、Weights & Biases のアーティファクトと run のストレージとして使用されるセキュアストレージコネクタとは別の機能です。参照バケットはチームごとに設定し、読み取りアクセス権のみが必要です。
仕組み
参照メディアのレンダリングは、次の 3 つのステップで行われます。- メディアオブジェクトをバケットに保存します (例:
s3://[YOUR-BUCKET]/frames/000123.png) 。 - その URI を、ツール結果などのスパン内に string 値としてログします。
- 会話を開くと、Agent Lens が URI を有効期間の短い事前署名付き URL に解決し、インラインでレンダリングします。レンダリング方法はファイルの拡張子によって決まります。一般的な画像形式 (
.png、.jpg、.gifなど) と動画形式 (.mp4、.mov、.webmなど) はインラインでレンダリングされ、それ以外の形式はダウンロードリンクとして表示されます。
s3:// と gs:// です。
前提条件
- CoreWeave Forge アカウントと APIキー。
- 自身が管理するクラウドストレージバケット (S3 または GCS) 。バケットには 1 つ以上のオブジェクトが含まれている必要があります。
- 組織管理者の権限。参照バケットを追加するには、組織内でチームを作成する場合と同じ権限が必要です。
バケットを設定する
CoreWeave Forge にバケットへの読み取りアクセス権を付与し、ブラウザーが CORS を使用してオブジェクトを取得できるようにします。 会話を表示すると、Forge は参照される各オブジェクトについて、有効期間の短い署名付きダウンロード URL を生成します。署名付き URL を正しく生成できるよう、インテグレーションのプリンシパルにバケットへの読み取りアクセス権を付与してください。このアクセス権は、インラインでレンダリングするための読み取り専用のものです。- AWS S3
- Google Cloud Storage
-
インテグレーションのプリンシパルに
s3:GetObjectを付与するバケットポリシーを適用します。次の内容をbucket-policy.jsonとして保存し、[YOUR-BUCKET]をバケット名に置き換えます。次に、このポリシーをバケットに適用します。 -
Forge アプリがブラウザーでオブジェクトを取得できるように、CORS 設定を適用します。次の内容を
cors.jsonとして保存します。次に、この設定をバケットに適用します。
オブジェクトがカスタマー管理の KMS キーで暗号化されている場合は、そのキーポリシーでも
arn:aws:iam::725579432336:role/WandbIntegration に kms:Decrypt を付与する必要があります。バケットポリシーだけでは不十分です。https://wandb.ai のみを指定していた場合は、https://forge.coreweave.com を追加してください。追加しないとブラウザーがリクエストをブロックするため、参照先のメディアが Agent Lens でレンダリングされません。
参照バケットを登録する
Agent Lens が参照先の URI の署名付き URL を生成して表示できるように、チーム設定でバケットを登録します。- CoreWeave Forge で、プロダクトメニューから Weights & Biases を選択します。
- サイドメニューの Teams でチームを選択し、Settings タブを選択します。チーム設定ページの URL は
https://forge.coreweave.com/wandb/[YOUR-TEAM]/settingsです。 - Reference buckets セクションで、Add bucket を選択します。
- クラウドプロバイダー (AWS または Google Cloud) を選択します。
- バケット名には、
s3://やgs://の接頭辞を付けずに[YOUR-BUCKET]のみを入力します。 - オブジェクトキーには、バケット内に存在するオブジェクトのキー (例:
photos/cat.png) を入力します。完全な URL ではなく、オブジェクトキーのみを入力してください。Forge はこのオブジェクトを 1 つ読み取り、読み取りアクセス権があることと CORS が正しく設定されていることを確認します。バケットが検証されると、バケット内のどのオブジェクトに対しても署名付き URL を生成できるようになります。 - 必要に応じて Test connection を選択すると、保存せずに設定を検証できます。
- Add bucket を選択して保存します。
エージェント スパンを使用してメディア参照をログする
エージェントのツール結果としてバケット URI を返すと、CoreWeave Agent Lens は Conversations タブで、その URI を生成したツール呼び出しにインラインでレンダリングします。次の例では、会話、ターン、ツールスパンを開始し、バケット URI をツールの結果として設定します。[YOUR-TEAM]、[YOUR-PROJECT]、[YOUR-BUCKET] はご自身の値に置き換えてください。
- Python
- TypeScript
この例では Agent Lens のエージェント スパンを使用しています。LLM Call や完全なエージェントループを含む、マルチターンの完全なセットアップについては、カスタムエージェントのクイックスタートを参照してください。