全网最全面的 DeepEval从入门到精通教程 - DeepEval简介
文章目录
- DeepEval简介
- DeepEval 的目标用户是谁?
- 使用 DeepEval 进行智能体编码
- 选择你的道路
- 首先要明确一个使用场景。
- 人工智能代理
- 聊天机器人
- RAG
- 核心组成部分
- 测试用例
- 数据集
- 指标
- 痕迹
- 两种评价模式
- 端到端LLM评估
- 组件级LLM评估
- DeepEval 生态系统
- 自信的人工智能
- 深团队
- 设计理念
- 模块化设计
DeepEval简介
DeepEval是一个开源的 LLM 评估框架,适用于 LLM 应用。DeepEval 让 LLM(应用)的构建和迭代变得极其简单,其设计理念遵循以下原则:
- 使用 Pytest 风格的断言对 LLM 输出进行单元测试。
- 使用 50 多个现成的指标,包括 LLM 作为评判标准、代理、工具使用、对话、安全、RAG 和多模态指标。
- 评估 AI 代理、对话代理(聊天机器人)、RAG 管道、MCP 系统和其他自定义工作流程。
- 同时运行端到端评估和组件级评估,并启用跟踪功能。
- 针对难以手动收集的极端情况,生成合成数据集。
- 当内置行为不足以满足需求时,可以自定义指标、提示、模型和评估模板。
DeepEval
采用本地优先策略:您的评估将在您自己的环境中运行。当您的团队需要共享仪表板、回归跟踪、可观测性或生产监控时,DeepEval 可与
Confident AI 原生集成。[!note] Note
在Cursor、Claude Code、Codex、Windsurf或任何其他 AI 编程工具中安装 DeepEval 技能 ,粘贴一个初始提示,编程代理将完成剩余的工作。
点击此处 开始。
DeepEval 的目标用户是谁?
DeepEval 的设计面向技术用户,主要用户群体:
- 需要评估代理、RAG 管道、工具调用和生产 LLM 工作流程的AI 工程师,为 AI 行为编写单元测试,并在 Claude Code 和 Codex 等代理编码工具中使用评估。
- 数据科学家希望进行可重复的实验,以比较提示、模型、数据集和指标分数。
- QA人员需要在变更上线用户之前,对AI行为进行可靠的回归测试。
- 精通技术的项目经理,希望定义质量标准、检查故障并跟踪产品变更是否能提高 AI 输出。
使用 DeepEval 进行智能体编码
除了使用 DeepEval 构建评估套件和管道之外,DeepEval 的 CLI 评估功能使其成为 Claude Code、Codex 和
Cursor 等 vibe 编码代理的最佳评估工具之一。下图解释了 DeepEval 如何参与您的迭代周期,而不仅仅是作为最终验证检查。
选择你的道路
首先要明确一个使用场景。
或者,如果您已经有了具体的用例,可以尝试我们针对特定用例的快速入门指南:
人工智能代理
聊天机器人
RAG
核心组成部分
这些概念贯穿整个 DeepEval,学习这些基本概念至关重要:
测试用例
您想要评估的单个行为:任务输入、代理输出、预期行为、工具、上下文和元数据。
数据集
一系列黄金法则,使得评估能够在不同的提示、模型和版本之间重复进行。
指标
评分逻辑用于确定代理响应、跟踪、跨度或输出是否满足您的标准。
痕迹
代理的步骤、跨度、输入、输出、工具调用和组件行为的运行时记录。
两种评价模式
DeepEval 支持两种互补的应用程序评估方式,了解哪种(些)方式更适合您非常重要:
端到端LLM评估
最适合原始 LLM API、简单应用程序、聊天机器人和黑盒质量检查。
组件级LLM评估
最适合代理、使用工具的工作流、MCP 系统和复杂的多步骤应用程序。
您可以单独使用任一模式,也可以将它们结合起来:对整个跟踪进行评分以获得整体任务质量,然后对各个跨度进行评分以找出故障发生的位置。
DeepEval 生态系统
DeepEval 可以独立运行,但当您的工作流程需要协作、监控或安全测试时,它还可以连接到相邻的工具。
自信的人工智能
一个用于共享评估仪表板、回归分析、可观测性和监控的 AI 质量平台。
深团队
用于对 LLM 应用程序进行红队演练以发现漏洞的安全测试框架。
设计理念
DeepEval 的设计理念很简单:评估应该符合团队实际迭代的方式。
模块化设计
DeepEval 提供构建自定义评估流程所需的基本模块:
- 测试用例:构建要评估的输入、输出、预期行为、上下文、工具和元数据。
- 数据集:组织可重用的黄金数据集,用于回归测试、实验和 CI/CD。
- 指标:定义如何对输出、跟踪和跨度进行评分。
- 跟踪trace :捕获执行期间发生的事情,以便您可以评估整个运行或单个组件。
- 合成数据生成:当您没有足够的示例时,生成测试数据。
你可以通过 DeepEval
的内置工作流程将它们组合使用,或者根据系统的具体需求自行组合。该框架具有足够的规范性,可以确保评估结果的可重复性,但并不会强制你使用单一的固定流程。