> ## Documentation index
> Fetch the complete documentation index at: https://dify-docs.docs7.io/llms.txt
> Ask it with GET https://dify-docs.docs7.io/ask?q=<keywords or question>. Short keywords rank best.
> Use these to discover all available pages before exploring further.

# 集成 W&B Weave

> 通过 W&B Weave 实现 Dify 应用的 LLM 可观测性，将追踪数据发送至 W&B Weave

> 本文档由 AI 自动翻译。如有任何不准确之处，请参考 [英文原版](/en/self-host/use-dify/monitor/integrations/integrate-weave)。

<Info>
  **前提条件**：Dify v1.3.1 或更高版本。
</Info>

### 什么是 W&B Weave

Weights & Biases (W&B) Weave 是一个用于跟踪、实验、评估、部署和改进基于 LLM 的应用的框架。Weave 专为灵活性和可扩展性而设计，支持 LLM 应用开发工作流的每个阶段。

<Info>
    更多详情，请参考 [Weave](https://docs.wandb.ai/weave)。
</Info>

### 如何配置 Weave

#### 1. 注册/登录

前往 [W&B Weave](https://wandb.ai/signup) 注册/登录。创建一个 Weights & Biases (W&B) 账户，并在[此处](https://wandb.ai/authorize)复制 API 密钥。

#### 2. 将 W&B Weave 与 Dify 集成

在 Dify 应用中配置 Weave。打开需要监控的应用，在侧边菜单中打开 **监控**，在页面上选择 **跟踪应用性能**。

<Frame>
  ![在 Dify 应用中配置 Weave](https://assets-docs.dify.ai/2025/04/c33e8fda75ee9052ed23c8690e314862.png)
</Frame>

点击配置后，粘贴 **API 密钥** 和**项目名称**，指定 **W&B 实体**（可选，默认为你的用户名）到配置中并保存。

<Frame>
  ![](https://assets-docs.dify.ai/2025/04/60bce1ae7b883825b13526d172ae0073.png)
</Frame>

成功保存后，你可以在当前页面查看监控状态。

<Frame>
  ![成功保存后，你可以在当前页面查看监控状态](https://assets-docs.dify.ai/2025/04/9486cee7bbb61f069842c9ea860e679c.png)
</Frame>

### 在 Weave 中查看监控数据

配置完成后，Dify 内应用的调试或生产数据可以在 Weave 中进行监控。

<Frame>
  ![](https://assets-docs.dify.ai/2025/04/a1c5aa80325e6d0223d48a178393baec.png)
</Frame>

当你切换到 Weave 时，可以在仪表板中查看 Dify 应用的详细操作日志。

<Frame>
  ![](https://assets-docs.dify.ai/2025/04/2cb04027c00b606029fcc26af2801bfe.png)
</Frame>

通过 Weave 获取的详细 LLM 操作日志将帮助你优化 Dify 应用的性能。

### 监控数据列表

#### **Workflow/Chatflow 追踪信息**

**用于追踪 Workflow 和 Chatflow**

| 工作流                                   | Weave 追踪                   |
| ---------------------------------------- | ---------------------------- |
| workflow_app_log_id/workflow_run_id | id                           |
| user_session_id                        | 放置在元数据中               |
| workflow_\{id\}                        | name                         |
| start_time                              | start_time                  |
| end_time                                | end_time                    |
| inputs                                   | inputs                       |
| outputs                                  | outputs                      |
| 模型令牌消耗                            | usage_metadata              |
| metadata                                 | extra                        |
| error                                    | error                        |
| workflow                              | tags                         |
| "conversation_id/none for workflow"     | 元数据中的 conversation_id  |
| conversion_id                           | parent_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 - Workflow 应用日志 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_id                      | id                            |
| user_session_id                | 放置在元数据中                |
| "message_\{id\}"                | name                          |
| start_time                      | start_time                   |
| end_time                        | end_time                     |
| inputs                           | inputs                        |
| outputs                          | outputs                       |
| 模型令牌消耗                     | usage_metadata               |
| metadata                         | extra                         |
| error                            | error                         |
| "message", conversation_mode | tags                          |
| conversation_id                 | 元数据中的 conversation_id   |
| conversion_id                   | parent_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_time   | start_time            |
| end_time     | end_time              |
| inputs        | inputs                 |
| outputs       | outputs                |
| metadata      | extra                  |
| \[moderation] | tags                   |
| message_id   | parent_run_id        |

**审核追踪信息**

* message_id - 消息 ID
* user_id: 用户 ID
* workflow_app_log_id - Workflow 应用日志 ID
* inputs - 审核输入数据
* message_data - 消息数据
* flagged - 内容是否被标记为需要注意
* action - 采取的特定操作
* preset_response - 预设响应
* start_time - 审核开始时间
* end_time - 审核结束时间
* 元数据
  * message_id - 消息 ID
  * action - 采取的特定操作
  * preset_response - 预设响应

#### **建议问题追踪信息**

**用于追踪建议的问题**

| 建议问题               | Weave 追踪             |
| ---------------------- | ---------------------- |
| user_id               | 放置在元数据中         |
| suggested_question    | name                   |
| start_time            | start_time            |
| end_time              | end_time              |
| inputs                 | inputs                 |
| outputs                | outputs                |
| metadata               | extra                  |
| suggested_question | tags                   |
| message_id            | parent_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_retrieval    | name                  |
| start_time           | start_time           |
| end_time             | end_time             |
| inputs                | inputs                |
| outputs               | outputs               |
| metadata              | extra                 |
| dataset_retrieval | tags                  |
| message_id           | parent_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_name            | name                    |
| start_time           | start_time             |
| end_time             | end_time               |
| inputs                | inputs                  |
| outputs               | outputs                 |
| metadata              | extra                   |
| \["tool", tool_name] | tags                    |
| message_id           | parent_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_name    | name                   |
| start_time       | start_time            |
| end_time         | end_time              |
| inputs            | inputs                 |
| outputs           | outputs                |
| metadata          | extra                  |
| generate_name | tags                   |

**生成名称追踪信息**

* conversation_id - 对话 ID
* inputs - 输入数据
* outputs - 生成的对话名称
* start_time - 开始时间
* end_time - 结束时间
* tenant_id - 租户 ID
* 元数据
  * conversation_id - 对话 ID
  * tenant_id - 租户 ID
