W&B Weaveとは

Weights & Biases (W&B) Weaveは、LLMベースのアプリケーションの追跡、実験、評価、デプロイ、改善のためのフレームワークです。柔軟性とスケーラビリティを考慮して設計されたWeaveは、LLMアプリケーション開発ワークフローのあらゆる段階をサポートします。

詳細については、Weaveを参照してください。


Weaveの設定方法

1. W&B Weaveに登録/ログイン

APIキーを取得する

次に、https://wandb.ai でWeights & Biases (W&B)アカウントを作成し、https://wandb.ai/authorize からAPIキーをコピーします

2. W&B WeaveをDifyと統合する

DifyアプリケーションでWeaveを設定します。監視が必要なアプリケーションを開き、サイドメニューのモニタリングを開き、ページ上のアプリケーションパフォーマンスの追跡を選択します。

設定をクリックした後、APIキープロジェクト名を貼り付け、W&Bエンティティ(オプション、デフォルトはユーザー名)も指定して設定を保存します。

正常に保存されると、現在のページで監視状態を確認できます。

Weaveでモニタリングデータを表示する

設定が完了すると、Dify内のアプリケーションからのデバッグまたは本番データをWeaveで監視できます。

Weaveに切り替えると、ダッシュボードでDifyアプリケーションの詳細な操作ログを確認できます。

Weaveを通じた詳細なLLM操作ログは、Difyアプリケーションのパフォーマンスを最適化するのに役立ちます。

モニタリングデータリスト

ワークフロー/チャットフロートレース情報

ワークフローとチャットフローを追跡するために使用

ワークフローWeaveトレース
workflow_app_log_id/workflow_run_idid
user_session_idメタデータに配置
workflow_name
start_timestart_time
end_timeend_time
inputsinputs
outputsoutputs
モデルトークン消費量usage_metadata
metadataextra
errorerror
workflowtags
”conversation_id/none for workflow”メタデータ内のconversation_id
conversion_idparent_run_id

ワークフロートレース情報

  • workflow_id - ワークフローの一意の識別子
  • conversation_id - 会話ID
  • workflow_run_id - 現在の実行のID
  • tenant_id - テナントID
  • elapsed_time - 現在の実行にかかった時間
  • status - 実行ステータス
  • version - ワークフローバージョン
  • total_tokens - 現在の実行で使用されたトークンの総数
  • file_list - 処理されたファイルのリスト
  • triggered_from - 現在の実行をトリガーしたソース
  • workflow_run_inputs - 現在の実行の入力データ
  • workflow_run_outputs - 現在の実行の出力データ
  • error - 現在の実行中に発生したエラー
  • query - 実行中に使用されたクエリ
  • workflow_app_log_id - ワークフローアプリケーションログID
  • message_id - 関連するメッセージID
  • start_time - 実行の開始時間
  • end_time - 実行の終了時間
  • workflow node executions - ワークフローノード実行に関する情報
  • メタデータ
    • workflow_id - ワークフローの一意の識別子
    • conversation_id - 会話ID
    • workflow_run_id - 現在の実行のID
    • tenant_id - テナントID
    • elapsed_time - 現在の実行にかかった時間
    • status - 実行ステータス
    • version - ワークフローバージョン
    • total_tokens - 現在の実行で使用されたトークンの総数
    • file_list - 処理されたファイルのリスト
    • triggered_from - 現在の実行をトリガーしたソース

メッセージトレース情報

LLM関連の会話を追跡するために使用

チャットWeaveトレース
message_idid
user_session_idメタデータに配置
”message_name
start_timestart_time
end_timeend_time
inputsinputs
outputsoutputs
モデルトークン消費量usage_metadata
metadataextra
errorerror
”message”, conversation_modetags
conversation_idメタデータ内のconversation_id
conversion_idparent_run_id

メッセージトレース情報

  • message_id - メッセージID
  • message_data - メッセージデータ
  • user_session_id - ユーザーセッションID
  • conversation_model - 会話モード
  • message_tokens - メッセージ内のトークン数
  • answer_tokens - 回答内のトークン数
  • total_tokens - メッセージと回答内のトークンの総数
  • error - エラー情報
  • inputs - 入力データ
  • outputs - 出力データ
  • file_list - 処理されたファイルのリスト
  • start_time - 開始時間
  • end_time - 終了時間
  • message_file_data - メッセージに関連するファイルデータ
  • conversation_mode - 会話モード
  • メタデータ
    • conversation_id - 会話ID
    • ls_provider - モデルプロバイダー
    • ls_model_name - モデルID
    • status - メッセージステータス
    • from_end_user_id - 送信ユーザーのID
    • from_account_id - 送信アカウントのID
    • agent_based - メッセージがエージェントベースかどうか
    • workflow_run_id - ワークフロー実行ID
    • from_source - メッセージソース

モデレーショントレース情報

会話モデレーションを追跡するために使用

モデレーションWeaveトレース
user_idメタデータに配置
”moderation”name
start_timestart_time
end_timeend_time
inputsinputs
outputsoutputs
metadataextra
[moderation]tags
message_idparent_run_id

モデレーショントレース情報

  • message_id - メッセージID
  • user_id: ユーザーID
  • workflow_app_log_id - ワークフローアプリケーションログID
  • inputs - モデレーション入力データ
  • message_data - メッセージデータ
  • flagged - コンテンツが注意対象としてフラグ付けされているかどうか
  • action - 取られた特定のアクション
  • preset_response - プリセット応答
  • start_time - モデレーション開始時間
  • end_time - モデレーション終了時間
  • メタデータ
    • message_id - メッセージID
    • action - 取られた特定のアクション
    • preset_response - プリセット応答

提案質問トレース情報

提案された質問を追跡するために使用

提案質問Weaveトレース
user_idメタデータに配置
suggested_questionname
start_timestart_time
end_timeend_time
inputsinputs
outputsoutputs
metadataextra
suggested_questiontags
message_idparent_run_id

メッセージトレース情報

  • message_id - メッセージID
  • message_data - メッセージデータ
  • inputs - 入力内容
  • outputs - 出力内容
  • start_time - 開始時間
  • end_time - 終了時間
  • total_tokens - トークン数
  • status - メッセージステータス
  • error - エラー情報
  • from_account_id - 送信アカウントのID
  • agent_based - メッセージがエージェントベースかどうか
  • from_source - メッセージソース
  • model_provider - モデルプロバイダー
  • model_id - モデルID
  • suggested_question - 提案された質問
  • level - ステータスレベル
  • status_message - ステータスメッセージ
  • メタデータ
    • message_id - メッセージID
    • ls_provider - モデルプロバイダー
    • ls_model_name - モデルID
    • status - メッセージステータス
    • from_end_user_id - 送信ユーザーのID
    • from_account_id - 送信アカウントのID
    • workflow_run_id - ワークフロー実行ID
    • from_source - メッセージソース

データセット検索トレース情報

ナレッジベース検索を追跡するために使用

データセット検索Weaveトレース
user_idメタデータに配置
dataset_retrievalname
start_timestart_time
end_timeend_time
inputsinputs
outputsoutputs
metadataextra
dataset_retrievaltags
message_idparent_run_id

データセット検索トレース情報

  • message_id - メッセージID
  • inputs - 入力内容
  • documents - ドキュメントデータ
  • start_time - 開始時間
  • end_time - 終了時間
  • message_data - メッセージデータ
  • メタデータ
    • message_id - メッセージID
    • ls_provider - モデルプロバイダー
    • ls_model_name - モデルID
    • status - メッセージステータス
    • from_end_user_id - 送信ユーザーのID
    • from_account_id - 送信アカウントのID
    • agent_based - メッセージがエージェントベースかどうか
    • workflow_run_id - ワークフロー実行ID
    • from_source - メッセージソース

ツールトレース情報

ツール呼び出しを追跡するために使用

ツールWeaveトレース
user_idメタデータに配置
tool_namename
start_timestart_time
end_timeend_time
inputsinputs
outputsoutputs
metadataextra
[“tool”, tool_name]tags
message_idparent_run_id

ツールトレース情報

  • message_id - メッセージID
  • tool_name - ツール名
  • start_time - 開始時間
  • end_time - 終了時間
  • tool_inputs - ツール入力
  • tool_outputs - ツール出力
  • message_data - メッセージデータ
  • error - エラー情報(もしあれば)
  • inputs - メッセージの入力
  • outputs - メッセージの出力
  • tool_config - ツール設定
  • time_cost - 時間コスト
  • tool_parameters - ツールパラメータ
  • file_url - 関連ファイルのURL
  • メタデータ
    • message_id - メッセージID
    • tool_name - ツール名
    • tool_inputs - ツール入力
    • tool_outputs - ツール出力
    • tool_config - ツール設定
    • time_cost - 時間コスト
    • error - エラー情報(もしあれば)
    • tool_parameters - ツールパラメータ
    • message_file_id - メッセージファイルID
    • created_by_role - 作成者のロール
    • created_user_id - 作成者のユーザーID

名前生成トレース情報

会話タイトル生成を追跡するために使用

名前生成Weaveトレース
user_idメタデータに配置
generate_namename
start_timestart_time
end_timeend_time
inputsinputs
outputsoutputs
metadataextra
generate_nametags

名前生成トレース情報

  • conversation_id - 会話ID
  • inputs - 入力データ
  • outputs - 生成された会話名
  • start_time - 開始時間
  • end_time - 終了時間
  • tenant_id - テナントID
  • メタデータ
    • conversation_id - 会話ID
    • tenant_id - テナントID