跳转到主要内容
⚠️ 本文档由 AI 自动翻译。如有任何不准确之处,请参考英文原版

什么是 Langfuse

Langfuse 是一个开源的大型语言模型工程平台,帮助团队协作调试、分析和迭代他们的应用程序。
介绍 Langfuse: https://langfuse.com/

如何配置 Langfuse

  1. 官方网站注册并登录 Langfuse
  2. 在 Langfuse 中创建一个项目。登录后,点击主页上的 New 来创建你自己的项目。该项目将用于与 Dify 中的应用程序关联,以进行数据监控。
编辑项目名称。 在 Langfuse 中创建项目
  1. 创建项目 API 凭据。在项目的左侧栏中,点击 Settings 打开设置。
创建项目 API 凭据 在设置中,点击 Create API Keys 来创建项目 API 凭据。 创建项目 API 凭据 复制并保存 Secret KeyPublic KeyHost 获取 API 密钥配置
  1. 在 Dify 中配置 Langfuse。打开你需要监控的应用程序,在侧边菜单中打开 Monitoring,并在页面上选择 Tracing app performance
配置 Langfuse 点击配置后,将在 Langfuse 中创建的 Secret Key, Public Key, Host 粘贴到配置中并保存。 配置 Langfuse 成功保存后,你可以在当前页面查看状态。如果显示为已启动,则正在被监控。 查看配置状态

在 Langfuse 中查看监控数据

配置完成后,可以在 Langfuse 中查看 Dify 应用程序的调试或生产数据。

监控数据列表

跟踪工作流和对话流的信息

跟踪工作流和对话流
WorkflowLangFuse Trace
workflow_app_log_id/workflow_run_idid
user_session_iduser_id
workflow_name
start_timestart_time
end_timeend_time
inputsinput
outputsoutput
Model token consumptionusage
metadatametadata
errorlevel
errorstatus_message
[workflow]tags
[“message”, conversation_mode]session_id
conversion_idparent_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 - 触发此运行时的来源

消息跟踪信息

用于跟踪大型语言模型对话
MessageLangFuse Generation/Trace
message_idid
user_session_iduser_id
message_name
start_timestart_time
end_timeend_time
inputsinput
outputsoutput
Model token consumptionusage
metadatametadata
errorlevel
errorstatus_message
[“message”, conversation_mode]tags
conversation_idsession_id
conversion_idparent_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

审核跟踪信息

用于跟踪对话审核
ModerationLangFuse Generation/Trace
user_iduser_id
moderationname
start_timestart_time
end_timeend_time
inputsinput
outputsoutput
metadatametadata
[moderation]tags
message_idparent_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 QuestionLangFuse Generation/Trace
user_iduser_id
suggested_questionname
start_timestart_time
end_timeend_time
inputsinput
outputsoutput
metadatametadata
[suggested_question]tags
message_idparent_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 RetrievalLangFuse Generation/Trace
user_iduser_id
dataset_retrievalname
start_timestart_time
end_timeend_time
inputsinput
outputsoutput
metadatametadata
[dataset_retrieval]tags
message_idparent_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 - 消息来源

工具跟踪信息

用于跟踪工具调用
ToolLangFuse Generation/Trace
user_iduser_id
tool_namename
start_timestart_time
end_timeend_time
inputsinput
outputsoutput
metadatametadata
[“tool”, tool_name]tags
message_idparent_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 NameLangFuse Generation/Trace
user_iduser_id
generate_namename
start_timestart_time
end_timeend_time
inputsinput
outputsoutput
metadatametadata
[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 中创建提示词的新版本,并设置标签/标签。
此集成简化了管理和版本化提示词的过程,有助于更高效的开发和迭代周期。你可以在这里找到插件和安装说明。