你可以在 概览 内监控、跟踪应用程序在生产环境中的性能,在数据分析仪表盘内分析生产环境中应用的使用成本、延迟、用户反馈、性能等指标,并通过持续调试、迭代不断改进你的应用程序。

集成外部 Ops 工具
为什么需要 LLMOps 工具
尽管 LLM 拥有出色的推理和文本生成能力,但其内部运作机制仍然难以完全理解,这给基于 LLM 的应用开发带来了挑战。例如:
- 评估输出质量
- 推理成本评估
- 模型响应延迟
- 链式调用、Agent 和工具引入的调试复杂性
- 复杂的用户意图理解
而 LangSmith、Langfuse 这类 LLMOps 工具,能够为 LLM 应用提供全面的追踪和深度评估能力,为开发者提供从应用的原型构建到生产、运营的完整生命周期支持。
- 原型阶段
LLM 应用在原型构建阶段通常涉及提示词测试、模型选择、RAG 检索策略和其他参数组合的快速实验。快速了解模型的执行效果对于此阶段非常重要。接入 Langfuse 可以在跟踪 dify 应用执行的每个步骤,提供清晰的可见性和调试信息,从而让开发者快速定位问题并减少调试时间。
- 测试阶段
进入测试阶段后,需要继续收集数据以改进和提高性能。 LangSmith 能够将运行作为示例添加到知识库中,从而扩展实际场景的测试覆盖范围。这是将日志系统和评估/测试系统置于同一平台中的一个关键优势。
- 生产阶段
进入生产环境后,开发团队还需要仔细检查应用关键数据点、增加基准知识库、人工注释以及深入分析运营数据结结果。尤其是在应用大规模使用中,运营和数据团队需要持续观测应用成本和性能,对模型以及应用表现进行优化。
Dify 与 Ops 工具的集成
使用 Dify Workflow 编排 LLM 应用时,通常涵盖一系列节点和逻辑,具有较高的复杂性。
将 Dify 与外部 Ops 工具集成,有助于打破编排应用时可能面临的 LLM “黑盒”问题。开发者只需要在平台上进行简单的配置,即可追踪应用生命周期中的数据和指标,轻松评估在 Dify 上创建的 LLM 应用质量、性能和成本。
集成 Arize
Arize 简介
企业级LLM可观测性、在线和离线评估、监控和实验平台,基于OpenTelemetry构建,专为LLM和代理驱动的应用程序设计。
配置 Arize
本章节将指引你注册 Arize 并将其集成至 Dify 平台内。
1. 注册/登录 Arize
2. 获取 Arize API 密钥
从右上角的用户菜单中获取 Arize API 密钥。点击 API Key,然后点击 API Key 进行复制

3. 集成 Arize 与 Dify
在 Dify 应用程序中配置 Arize。打开需要监控的应用程序,在侧边菜单中打开监控,并在页面上选择追踪应用性能。

点击配置后,将在 Arize 中创建的 API Key, Space ID 和项目名称粘贴到配置中并保存。

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

监控数据列表
工作流/对话流追踪信息
用于追踪工作流和对话流
| 工作流 | Arize 追踪 |
|---|---|
| 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 |
| Model token consumption | usage_metadata |
| metadata | metadata |
| error | error |
| [workflow] | tags |
| conversation_id/none for workflow | conversation_id in metadata |
工作流追踪信息
- 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 相关对话
| 聊天 | Arize LLM |
|---|---|
| message_id | id |
| user_session_id | - 放置在元数据中 |
| ”llm” | name |
| start_time | start_time |
| end_time | end_time |
| inputs | inputs |
| outputs | outputs |
| Model token consumption | usage_metadata |
| metadata | metadata |
| [“message”, conversation_mode] | tags |
| conversation_id | conversation_id in metadata |
消息追踪信息
- 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 - 消息来源
审核追踪信息
用于追踪对话审核
| 审核 | Arize Tool |
|---|---|
| user_id | - 放置在元数据中 |
| ”moderation” | name |
| start_time | start_time |
| end_time | end_time |
| inputs | inputs |
| outputs | outputs |
| metadata | metadata |
| [“moderation”] | tags |
审核追踪信息
- 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 - 预设响应
建议问题追踪信息
用于追踪建议问题
| 建议问题 | Arize LLM |
|---|---|
| user_id | - 放置在元数据中 |
| ”suggested_question” | name |
| start_time | start_time |
| end_time | end_time |
| inputs | inputs |
| outputs | outputs |
| metadata | metadata |
| [“suggested_question”] | tags |
消息追踪信息
- 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 - 消息来源
数据集检索追踪信息
用于追踪知识库检索
| 数据集检索 | Arize Retriever |
|---|---|
| user_id | - 放置在元数据中 |
| ”dataset_retrieval” | name |
| start_time | start_time |
| end_time | end_time |
| inputs | inputs |
| outputs | outputs |
| metadata | metadata |
| [“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 - 消息来源
工具追踪信息
用于追踪工具调用
| 工具 | Arize Tool |
|---|---|
| user_id | - 放置在元数据中 |
| tool_name | name |
| start_time | start_time |
| end_time | end_time |
| inputs | inputs |
| outputs | outputs |
| metadata | metadata |
| [“tool”, tool_name] | tags |
工具追踪信息
- 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
生成名称追踪信息
用于追踪对话标题生成
| 生成名称 | Arize Tool |
|---|---|
| user_id | - 放置在元数据中 |
| ”generate_conversation_name” | name |
| start_time | start_time |
| end_time | end_time |
| inputs | inputs |
| outputs | outputs |
| metadata | metadata |
| [“generate_name”] | tags |
生成名称追踪信息
- conversation_id - 对话 ID
- inputs - 输入数据
- outputs - 生成的对话名称
- start_time - 开始时间
- end_time - 结束时间
- tenant_id - 租户 ID
- 元数据
- conversation_id - 对话 ID
- tenant_id - 租户 ID
《CDA数据分析师技能树系列图书》系统整合数据分析核心知识,从基础工具(如Python、SQL、Excel、Tableau、SPSS等)到机器学习、深度学习算法,再到行业实战(金融、零售等场景)形成完整体系。书中结合案例讲解数据清洗、建模、可视化等技能,兼顾理论深度与实操性,帮助读者构建系统化知识框架。同时,内容紧跟行业趋势,涵盖大数据分析、商业智能、ChatGPT与DeepSeek等前沿领域,还配套练习与项目实战,助力读者将知识转化为职场竞争力,是数据分析师从入门到进阶的实用参考资料。

733

被折叠的 条评论
为什么被折叠?



