Skip to main content
W&B Weave のエージェントの可観測性は OpenTelemetry (OTel) を基盤としており、スパンを Agents ビューに取り込む専用の OTLP エンドポイントを提供します。OTel エクスポーターの現在のエンドポイント設定を Weave のエンドポイント設定に置き換えるだけで、OTel でインストルメントされたアプリケーションのスパンの送信先を Weave にすばやく変更できます。このために Weave SDK をインストールする必要はありません。 このページでは、エンドポイントで認証し、スパンを送信する方法を説明します。

認証

スパンを次のエンドポイントに送信できます:
  • Path: /agents/otel/v1/traces
  • メソッド: POST
  • Content-Type: application/x-protobuf
  • ベース URL: Multi-tenant Cloud の場合 https://trace.wandb.ai
このエンドポイントは OTLP protobuf ペイロードのみを受け入れます。opentelemetry-exporter-otlp-proto-http (Python) や @opentelemetry/exporter-trace-otlp-proto (TypeScript) などの protobuf HTTP エクスポーターを使用してください。このエンドポイントは gzip および deflate のコンテンツエンコーディングもサポートします。 エンドポイントで認証するには、W&B APIキー を OTLPSpanExporter の設定に次のいずれかの値で指定してください:
  • wandb-api-key: W&B APIキーを値として使用します。
  • Authorization: ユーザー名を api、パスワードを W&B APIキーとする HTTP Basic 認証を使用します。この形式は、エクスポーターまたはコレクターが標準の認証ヘッダーのみサポートする場合に便利です。

project のルーティング

Weave は、OTel リソース属性またはリクエストヘッダーを使用して、スパンを project にルーティングします。
  • リソース属性 (推奨) : TracerProvider リソースで、wandb.entity に CoreWeave Forge のチーム名またはユーザー名を、wandb.project にプロジェクト名を設定します。
  • project_id ヘッダー: 値を [YOUR-TEAM]/[YOUR-PROJECT] に設定します。
両方が存在する場合は、リソース属性が優先されます。entity と project が指定されていないスパンは破棄されます。

Agents ビュー向けにスパンを整形する

Weave はあらゆる OTel スパンを受け入れ、そのすべての属性を保存しますが、Agents ビューがレンダリングするのは OTel GenAI セマンティック規約 に準拠したスパンです。各スパンに gen_ai.operation.name を設定して、そのスパンが何を表すかを Weave に伝えます。 グループ化を制御する属性がほかに 2 つあります。
  • gen_ai.conversation.id: ターンを会話単位にグループ化します。会話の有効期間中は固定の ID を使用してください。
  • gen_ai.agent.name: Agents タブで、会話を名前付きのエージェントごとにグループ化します。
gen_ai.request.model、gen_ai.usage.input_tokens、gen_ai.usage.output_tokens など、その他の GenAI セマンティック規約の属性を設定すると、モデル名やトークン数が表示に追加されます。ただし、これらは必須ではありません。これらのスパンが対応するエージェントのデータモデルについては、エージェントをトレースする を参照してください。

環境変数のみで設定する

アプリケーションまたはコレクターが標準の OTel エクスポーター環境変数を読み取る場合は、次の変数を設定するだけで、コードを変更せずにスパンを Weave にルーティングできます。

例: Weave SDK を使用せずにエージェント スパンを出力する

次の例では、OTel パッケージのみを使用して、最小構成のエージェントのターンをインストルメントします。ターンに対して invoke_agent スパン、LLM Call に対して chat スパン、ツール呼び出しに対して execute_tool スパンを出力し、それらを Weave のエージェントエンドポイントにエクスポートします。 まず、必要な依存関係をインストールします。
次に、以下のコードで WANDB_API_KEY、ENTITY、PROJECT の値を設定し、実行します。
同じ会話にターンを追加するには、同じ gen_ai.conversation.id を持つ invoke_agent スパンをさらに出力します。各ターンはそれぞれのトレースのルートスパンであるため、ターン間で親スパンを共有する必要はありません。 アプリケーションがスパンをエクスポートしたら、Weave プロジェクトの Agents タブを開きます。
最終更新日 2026年9月30日