尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
10分钟上手DeepEval:给LLM应用装上一套自动化质量评估流水线
10分钟上手DeepEval给LLM应用装上一套自动化质量评估流水线【免费下载链接】deepevalThe LLM Evaluation Framework项目地址: https://gitcode.com/GitHub_Trending/de/deepeval你刚上线了一个RAG问答系统老板问了一句怎么证明这次改提示词后答案质量是变好而不是变差你翻遍代码库发现没有一个地方能回答这个问题——输出没有量化标准质量好坏全凭感觉。这正是LLM评估工具需要解决的事DeepEval是一个开源的大语言模型评估框架它之于LLM应用测试就像Pytest之于传统单元测试。 DeepEval到底是什么它是pytest风格的LLM测试库把LLM应用的输入、输出封装成LLMTestCase用30多个现成指标给输出打分分数低于你设定的threshold测试就失败直接接到CI里当质量门禁。指标覆盖RAG、智能体轨迹、多轮对话、多模态和安全性且全部基于LLM-as-a-judge或统计方法在你的机器上本地运行输出不出本地环境与框架无关官方提供LangChain、LlamaIndex、OpenAI、CrewAI、Pydantic AI等现成集成一行代码接入支持端到端黑盒评估也支持对单次LLM调用、工具使用、检索步骤做组件级评估 5行代码完成第一个LLM输出质量断言DeepEval要求Python 3.9及以上安装一行命令pip install -U deepeval export OPENAI_API_KEYsk-xxxx # 指标用LLM当裁判需配置一个API Key下面这段代码定义了两个内置指标通用正确性、答案相关性对一条测试用例断言得分必须达到及格线# test_chatbot.py import pytest from deepeval import assert_test from deepeval.metrics import GEval, AnswerRelevancyMetric from deepeval.test_case import LLMTestCase, SingleTurnParams def test_case(): correctness GEval( nameCorrectness, criteriaDetermine if the actual output is correct based on the expected output., evaluation_params[ SingleTurnParams.ACTUAL_OUTPUT, SingleTurnParams.EXPECTED_OUTPUT, ], threshold0.5, ) test_case LLMTestCase( input如果这双鞋不合适怎么办, actual_output提供30天全额退款无需额外费用。, expected_output30天内可免费全额退款。, retrieval_context[所有客户可享30天全额退款政策。], ) assert_test(test_case, [correctness, AnswerRelevancyMetric(threshold0.5)])然后在终端执行deepeval test run test_chatbot.py会看到每个用例的PASS/FAIL和各项指标得分。跑通后你就有了一个可以反复执行的质量验收命令以后任何一次prompt或模型改动重跑它就知道是进步还是退化。 DeepEval能帮你解决哪些实际问题RAG管线质量回归——当你调完检索或改完chunking需要证明答案没变差时直接用RAG专项指标批量打分AnswerRelevancyMetric回答对问题的相关程度FaithfulnessMetric回答是否忠于检索到的上下文ContextualPrecisionMetric/ContextualRecallMetric检索片段排序与覆盖质量FaithfulnessMetric(threshold0.7)智能体轨迹验收——当你的Agent多步调用工具、你担心它绕远路或调错工具时可以沿完整执行轨迹评估TaskCompletionMetric是否达成了目标ToolCorrectnessMetric是否调用了正确的工具StepEfficiencyMetric是否存在多余步骤for golden in dataset.evals_iterator(metrics[TaskCompletionMetric()]): your_agent(golden.input)自定义标准与多轮对话——当内置指标不覆盖你的业务标准时GEval接受自然语言标准一段话就能定义新指标GEval(name语气合规, criteria判断实际输出是否符合客服语气规范, evaluation_params[SingleTurnParams.ACTUAL_OUTPUT], threshold0.6)多轮聊天场景则可用ConversationCompletenessMetric、RoleAdherenceMetric等逐轮评估。 实战给客服聊天机器人做上线前评估以改完prompt后验证客服机器人质量为例共四步。Step 1把验收用例沉淀成数据集Golden是标注好的标准问答。from deepeval.dataset import Golden, EvaluationDataset from deepeval.test_case import LLMTestCase dataset EvaluationDataset(goldens[ Golden(input怎么退款, expected_output30天内可免费全额退款。), Golden(input物流几天到, expected_output一般3-5个工作日送达。), ])Step 2批量跑评估——每条golden过一遍你的应用用evals_iterator自动采集trace并挂载指标。for golden in dataset.evals_iterator(metrics[ AnswerRelevancyMetric(threshold0.6), GEval(nameCorrectness, criteriaDetermine if the actual output is correct based on the expected output., evaluation_params[SingleTurnParams.ACTUAL_OUTPUT, SingleTurnParams.EXPECTED_OUTPUT], threshold0.6)]): answer your_llm_app(golden.input)Step 3执行并查看结果——deepeval test run test_chatbot.py在终端输出每条用例的得分与通过状态再执行一次deepeval login云端报告会自动生成可直接分享给没有本地环境的同事复核。Step 4换版本对比——把prompt或模型改一版重复Step 2-3用compare把两轮结果并排对比回归一目了然。到这一步你手里就有了这次改动值不值得上线的量化依据。 进一步深挖DeepEval的高级用法如果你只是做内部工具上面第3-5步已经够用如果要往生产级靠可以沿三个方向深入接入CI/CDDeepEval基于pytest插件机制注册见pyproject.toml里的pytest11入口deepeval test run可以作为流水线的阻塞门禁适合每次提交都过质量检查的团队自定义指标继承BaseMetric实现自己的measure逻辑自动融入整个生态适合内置指标覆盖不了的合规、话术等检查合成评估数据集deepeval/synthesizer/支持从文档生成单轮和多轮合成测试数据适合golden标注样本还很少的阶段完整指标列表见指标源码目录提示词自动优化可看optimizer模块。✅ 下一步适合谁、不适合谁换个角度看它的价值DeepEval把质量有没有变差从玄学讨论变成一条可复现的命令回归在CI里就被拦住而不是等用户投诉才发现问题。边界要说清楚它面向离线评估不提供线上流量监控和实时告警生产观测需要另配可观测体系如果你的系统根本不是LLM应用或者只需要对确定性输出做断言普通pytest就是更省的选择。建议先按第3节装一下把最小示例跑起来两分钟后你对它适不适合你的业务就有判断了。【免费下载链接】deepevalThe LLM Evaluation Framework项目地址: https://gitcode.com/GitHub_Trending/de/deepeval创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

2007-2017 老款 Mac 也能装 macOS Sequoia:OpenCore Legacy Patcher 完整指南

2007-2017 老款 Mac 也能装 macOS Sequoia:OpenCore Legacy Patcher 完整指南

2007-2017 老款 Mac 也能装 macOS Sequoia:OpenCore Legacy Patcher 完整指南 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher OpenCore Legacy Pa…

📅 2026/9/9 18:12:44
数据驱动分布鲁棒优化在电热综合能源系统调度中的应用

数据驱动分布鲁棒优化在电热综合能源系统调度中的应用

1. 先把名头拆开看:高热点算法背后的三个关键词“高热点算法”这个说法第一次出现的时候,我以为是某个公众号的营销标题,但仔细想想,这个课题方向确实把近五年能源系统优化里最“卷”的三个关键词全凑齐了——数据驱动、分布鲁棒、…

📅 2026/9/9 18:12:44
降AI率全攻略:从检测原理到9大工具搭配与实操流程

降AI率全攻略:从检测原理到9大工具搭配与实操流程

1. 为什么“降AI率”成了继续教育学生的刚需 这几年AI写作工具确实太普及了,论文初稿、课程报告、读书笔记,很多人都是先让大模型列个框架、写个底稿,然后再慢慢改。这个流程本身没问题,效率确实高,但问题出在查重和AI…

📅 2026/9/9 18:12:44
MORE NEWS

更多资讯

📰

Cursor机器码重置完整指南:3分钟找回试用额度

Cursor机器码重置完整指南:3分钟找回试用额度 【免费下载链接】go-cursor-help 解决Cursor在免费订阅期间出现以下提示的问题: Your request has been blocked as our system has detected suspicious activity / Youve reached your trial request limit. / Too ma…

📰

eNSP还是真机?网络工程师新手实验环境选择与进阶路径

很多刚准备进入网络工程领域的朋友,几乎都会问同一个问题:eNSP 和真机,我该选哪个?有人觉得模拟器不真实,学不到真东西;也有人买了一堆二手设备回家,结果连 console 线怎么接都没搞明白。我的看…

📰

告别流水账!2026 本科文献综述高分写法|40 条急救模板 + 避坑全攻略

如果说论文哪个板块最容易扣分、最容易写废,一定是文献综述。很多同学的综述,从头到尾都是 "张三认为… 李四研究发现… 王五提出…",纯文献堆砌、流水账严重,没有逻辑、没有评述、没有研究空白。导师一眼打回&#xff…

📰

老Mac还能不能装最新macOS?我把OpenCore Legacy Patcher完整流程走了一遍

老Mac还能不能装最新macOS?我把OpenCore Legacy Patcher完整流程走了一遍 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 我有一台用了多年的 201…

📰

爱排名对网站排名影响有多大?SEO工具的真实作用与风险解析

有同行在群里丢了个问题:"爱排名对网站排名的影响到底有多大?"底下立马分成两派——有人说这东西是黑科技,用了之后词排名蹭蹭涨;也有人说纯属交智商税,搞不好哪天就被搜索引擎连锅端。我在SEO这行摸爬滚打了…

📰

Qt甘特图重写:基于QGraphicsScene的高性能交互式任务调度组件

简介:一套完整的Qt甘特图组件源码(GanttMel-master 项目),面向需要在桌面应用中展示任务时间线、项目进度或进行项目调度的Qt开发者及相关学习者。资源包共27个文件,主要包含C源代码(cpp/h)、Qt…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬