Weave for Agents はパブリック プレビューです。一般提供前に、機能、API、Agents view UI は変更される可能性があります。
W&B Weave のAgents ビューでは、シグナル タブに、エージェントの会話に対する tags と ratings が表示されます。シグナル は品質や安全性に関する問題を可視化し、問題をフラグ付けしたり、パターンを見つけたり、注意が必要なトレースを強調表示したりするのに役立ちます。シグナル を使用すると、エージェントの応答の品質を自動的にスコアしたり、ユーザーのいら立ちに気づいたり、NSFW コンテンツをフラグ付けしたりできます。
project のシグナルを表示するには、次の手順を実行します。
- https://wandb.ai にアクセスし、project を選択します。
- サイドバー メニューで Agents を選択し、project に保存されているすべてのエージェントとの会話を表示します。
- タブバーで シグナル を選択します。
- Turn: ユーザーとエージェントの1往復のやり取りです。
- Rating: 一致したスパンに割り当てられる、0.0〜1.0の数値スコアです。
- Tags: 一致したスパンに割り当てられるラベルです。たとえば、“user-frustration” や “nsfw” などがあります。
シグナル タブには、エージェントのスコアリング済みターンの表が表示されます。各行は、いずれかのシグナル モニターの出力を表します。次の列がデフォルトで表示されます。
| 列 | 説明 |
|---|
| タイプ | スコアリング対象の会話の部分です。サポートされるのは turn のみです。 |
| Scorer | このスコアを生成したシグナルの名前です。 |
| 最後のメッセージ | スコアリングされた ターン 内の最後のメッセージのプレビューです。ロールはその下に表示されます。 |
| エージェント | スコアリングされた ターン に関連付けられたエージェントです。 |
| スコア | 0.0 から 1.0 の数値評価、または一致した場合はタグです。1 が良く 0 が悪いことを示す一貫した評価を使用することを推奨しますが、Scorer では定義した任意の尺度を使用できます。 |
| 傾向 | このシグナルの経時的な推移を示すインライン チャートを表示します。評価の場合は平均値、タグの場合は件数が表示されます。 |
| 時刻 | シグナルがスコアリングされた日時です。 |
時間範囲セレクターと Filter バーを使用して、Scorer、エージェント、スコア範囲、または期間で結果を絞り込みます。Score volume タイムラインには、Weave が評価またはタグ付けしたシグナルの件数が表示されます。これは表に表示されている行を反映しており、タイムライン上でドラッグしてフィルターできます。
エージェントのターンのスコアリングを開始するには、シグナルを作成します。エージェント用に新しい Scorer を作成するには、+ New signal を選択し、次に以下のオプションを設定します。
Rating Scorer または Tags Scorer のいずれかを作成します。
- Rating: 一致した各 span に 0〜1 のスコアを割り当てます。
- Tags: 一致した各 span に最大 10 個のタグを割り当てます。シグナル UI では、少なくとも 1 つのタグに一致した span の行のみが表示されるため、出力が表示されなくても Tags Scorer は正常に実行されている可能性があります。
このセレクターを使用すると、シグナルがスコアリングするターンを、特定の Agent name、Operation name、Tool name、または Request model などで絞り込めます。Weave では、複数のフィルターを AND 条件で組み合わせます。すべてのターンをスコアリングするには、フィルター行の末尾にある x を選択して、そのフィルターを削除します。
以下の表からスターターテンプレートを選択し、インラインに表示される Scorer prompt を調整してください。Weave は、スコアリング時に {input_messages}、{output_messages}、{system_instructions} などのテンプレート変数を展開します。
| Template | 評価内容 |
|---|
| User Satisfaction | ユーザーが満足しているか (肯定的なフィードバック、その後のやり取りの継続、タスクの完了) 、または不満を持っているか (苦情、繰り返しの言い換え、離脱) を評価します。 |
| User Good Intent | ユーザーの意図が無害かつ正当なものか、それとも jailbreak の試み、有害な Request、または prompt injection であるかを評価します。 |
| Safe-for-Work | 会話の内容が一般的な職場環境に適しているか、それとも露骨、暴力的、またはその他の職場に不適切な内容かを評価します。 |
| Response Quality | エージェントの Response が正確で、過不足がなく、ユーザーの Request に直接応えているかを評価します。 |
| テンプレート | 検出する内容 |
|---|
| ユーザーの不満 | ユーザーが不満、怒り、混乱、不満足の兆候を示している。 |
| 悪意のある意図 (ジェイルブレイク) | ユーザーがシステムのジェイルブレイク、アクセス制限されたコンテンツの抽出、プロンプトインジェクションの実行、ロールプレイの悪用、またはその他の方法でエージェントにガードレールを無視させようとしている。 |
| NSFW | ユーザー入力またはエージェントの出力に、露骨な性的コンテンツ、凄惨な暴力表現、または職場環境に不適切なその他の内容が含まれている。 |
| 低品質な応答 | 事実と異なる、話題から外れている、はぐらかしている、同じことを繰り返している、拒否する際に正当な理由を欠いている、またはその他の形でユーザーのリクエストに適切に対応できていないエージェントの出力。 |
このシグナルの表示名を選択してください。
Advanced で、次のオプションを設定します。
- 推論モデル: スコアリングに使用する LLM です。利用可能な場合は、Serverless Inference をデフォルトとして使用することをおすすめします。
- サンプル率: トラフィックの多いエージェントでは、サンプル率を設定すると、すべてのターンではなく一部のターンのみをスコアリングしてコストを削減できます。
Manage signals を選択すると、project で有効なすべてのシグナルを一覧表示するドロワーが開きます。ここから、シグナルのオン/オフを切り替えたり、削除したり、各シグナルを編集したりできます。エディタには、+ New signal と同じ項目が表示されます。
シグナルのアクティビティは、プロジェクトのサイドバーにある Traces に表示されます。想定したシグナルの一致が表示されない場合は、Traces 表を使ってデバッグしてください。たとえば、Scorer 名や、エラーが発生していないか Status 列を確認してください。Scorer の実行エラーが発生すると、Status に赤いインジケーターが表示され、エラーの詳細も確認できます。