⚠️ 本文档由 AI 自动翻译。如有任何不准确之处,请参考英文原版。
什么是 Langfuse
Langfuse 是一个开源的大型语言模型工程平台,帮助团队协作调试、分析和迭代他们的应用程序。介绍 Langfuse: https://langfuse.com/
如何配置 Langfuse
- 在官方网站注册并登录 Langfuse
- 在 Langfuse 中创建一个项目。登录后,点击主页上的 New 来创建你自己的项目。该项目将用于与 Dify 中的应用程序关联,以进行数据监控。
编辑项目名称。
- 创建项目 API 凭据。在项目的左侧栏中,点击 Settings 打开设置。
在设置中,点击 Create API Keys 来创建项目 API 凭据。
复制并保存 Secret Key、Public Key 和 Host。
- 在 Dify 中配置 Langfuse。打开你需要监控的应用程序,在侧边菜单中打开 Monitoring,并在页面上选择 Tracing app performance。
点击配置后,将在 Langfuse 中创建的 Secret Key, Public Key, Host 粘贴到配置中并保存。
成功保存后,你可以在当前页面查看状态。如果显示为已启动,则正在被监控。
在 Langfuse 中查看监控数据
配置完成后,可以在 Langfuse 中查看 Dify 应用程序的调试或生产数据。
监控数据列表
跟踪工作流和对话流的信息
跟踪工作流和对话流| Workflow | LangFuse Trace |
|---|---|
| workflow_app_log_id/workflow_run_id | id |
| user_session_id | user_id |
| workflow_ | name |
| start_time | start_time |
| end_time | end_time |
| inputs | input |
| outputs | output |
| Model token consumption | usage |
| metadata | metadata |
| error | level |
| error | status_message |
| [workflow] | tags |
| [“message”, conversation_mode] | session_id |
| conversion_id | parent_observation_id |
- workflow_id - 工作流的唯一 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 - 工作流的唯一 ID
- conversation_id - 对话 ID
- workflow_run_id - 此运行时的工作流 ID
- tenant_id - 租户 ID
- elapsed_time - 此运行时的经过时间
- status - 操作状态
- version - 工作流版本
- total_tokens - 此运行时使用的总标记数
- file_list - 处理文件的列表
- triggered_from - 触发此运行时的来源
消息跟踪信息
用于跟踪大型语言模型对话| Message | LangFuse Generation/Trace |
|---|---|
| message_id | id |
| user_session_id | user_id |
| message_ | name |
| start_time | start_time |
| end_time | end_time |
| inputs | input |
| outputs | output |
| Model token consumption | usage |
| metadata | metadata |
| error | level |
| error | status_message |
| [“message”, conversation_mode] | tags |
| conversation_id | session_id |
| conversion_id | parent_observation_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 - 消息来源
- message_id - 消息 ID
审核跟踪信息
用于跟踪对话审核| Moderation | LangFuse Generation/Trace |
|---|---|
| user_id | user_id |
| moderation | name |
| start_time | start_time |
| end_time | end_time |
| inputs | input |
| outputs | output |
| metadata | metadata |
| [moderation] | tags |
| message_id | parent_observation_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 - 预设响应
建议问题跟踪信息
用于跟踪建议问题| Suggested Question | LangFuse Generation/Trace |
|---|---|
| user_id | user_id |
| suggested_question | name |
| start_time | start_time |
| end_time | end_time |
| inputs | input |
| outputs | output |
| metadata | metadata |
| [suggested_question] | tags |
| message_id | parent_observation_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 - 消息来源
数据集检索跟踪信息
用于跟踪知识库检索| Dataset Retrieval | LangFuse Generation/Trace |
|---|---|
| user_id | user_id |
| dataset_retrieval | name |
| start_time | start_time |
| end_time | end_time |
| inputs | input |
| outputs | output |
| metadata | metadata |
| [dataset_retrieval] | tags |
| message_id | parent_observation_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 - 消息来源
工具跟踪信息
用于跟踪工具调用| Tool | LangFuse Generation/Trace |
|---|---|
| user_id | user_id |
| tool_name | name |
| start_time | start_time |
| end_time | end_time |
| inputs | input |
| outputs | output |
| metadata | metadata |
| [“tool”, tool_name] | tags |
| message_id | parent_observation_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
生成名称跟踪
用于跟踪对话标题生成| Generate Name | LangFuse Generation/Trace |
|---|---|
| user_id | user_id |
| generate_name | name |
| start_time | start_time |
| end_time | end_time |
| inputs | input |
| outputs | output |
| metadata | metadata |
| [generate_name] | tags |
- conversation_id - 对话 ID
- inputs - 输入数据
- outputs - 生成的会话名称
- start_time - 开始时间
- end_time - 结束时间
- tenant_id - 租户 ID
- 元数据
- conversation_id - 对话 ID
- tenant_id - 租户 ID
Langfuse 提示词管理
Langfuse 提示词管理插件(社区维护)让你可以在 Dify 应用程序中使用 Langfuse 中管理和版本化的提示词,增强你的大型语言模型应用程序开发工作流。主要功能包括:- 获取提示词: 获取在 Langfuse 中管理的特定提示词。
- 搜索提示词: 使用各种过滤器在 Langfuse 中搜索提示词。
- 更新提示词: 在 Langfuse 中创建提示词的新版本,并设置标签/标签。