集成外部与 Ops 工具
集成 W&B Weave
Dify Cloud | 社区版本号需 ≥ v1.3.1
什么是 W&B Weave
Weights & Biases (W&B) Weave 是一个用于跟踪、实验、评估、部署和改进基于 LLM 的应用程序的框架。Weave 专为灵活性和可扩展性而设计,支持 LLM 应用程序开发工作流的每个阶段。
更多详情,请参考 Weave。
如何配置 Weave
1. 注册/登录
前往 W&B Weave 注册/登录。创建一个 Weights & Biases (W&B) 账户,并在此处复制 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_id | id |
user_session_id | 放置在元数据中 |
workflow_ | 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 - 工作流应用程序日志 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_“ | 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 - 工作流应用程序日志 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