你的 Prompt 没有测试覆盖:聊聊 LLM 应用的评估集工程

改一行 Prompt 就敢直接上线,是 LLM 应用团队最常见的事故源。传统代码有单元测试兜底,Prompt 的「测试」是什么?答案是评估集(Eval Set)工程------大部分团队有评估集,但做得不对。

评估集的三个常见死法

1. 一次性评估集 :项目初期花一周精心做了 50 条,之后再没更新。三个月后模型换了三轮、需求改了两版,评估集测的还是上个版本的产品。评估集是活的资产,要随需求变更同步进化。

2. 全能型评估集 :一套 case 测所有能力。正确做法是按能力维度拆分:格式遵从 20 条、边界输入 20 条、领域知识 20 条、对抗样本 10 条------分维度看分,才知道改这行 Prompt 动了哪块。

3. 只有正例 :全是「标准输入→标准输出」。负例(该拒绝的、该转人工的、该报错的)缺失,意味着你永远测不出「乱答」的问题。负例占比建议 20~30%。

语义断言:打破「标准答案」迷信

很多场景没有唯一标准答案(生成类任务),逐字比对必挂。语义断言是解法:不比对文本,比对「意思是否达标」------用一个小模型当裁判,按维度打分(准确性/完整性/格式),或者用规则断言(包含关键实体、不含禁词、长度区间)。

实践配比:规则断言管硬约束 (格式/禁词/必含要素,快且稳),模型裁判管软质量(语义达标度),人工抽检管最终校准------三层各司其职。

接入流程:评估左移

评估集最大的价值在「改之前」而不是「改之后」:每次改 Prompt/换模型/调参数,先跑评估集,分维度看分数变化------涨的那块是不是你想要的?跌的那块能不能接受?绿灯才上线。CI 化之后,改 Prompt 的心理成本从「祈祷」变成「看报表」。

结语

Prompt 是没有编译器检查的代码,评估集是它唯一的测试覆盖。没有评估集的 LLM 应用,等于裸奔着改生产代码------从今天起,把每次线上事故的 case 加进评估集,三个月后你会感谢这个习惯。

相关推荐
Baihai_IDP8 小时前
RAG vs SKILL vs MCP vs RLM
llm·agent·mcp
Baihai_IDP10 小时前
别再争论 AI 该不该像人了,赋予 AI 人格是非常有效的后训练策略
人工智能·llm·aigc
Tokenfree10 小时前
一次死循环烧掉 340 块:LLM 网关的限流与熔断该怎么做
llm·api
Flynn Liang14 小时前
RAG 评估体系:黄金集、检索指标与 LLM-as-Judge 落地
java·langchain·rag·评估·langchain4j·检索指标
泯泷1 天前
单个 AI 再强,为什么也干不过一支 AI 团队?
人工智能·llm·agent
ndz1 天前
Claude Fable 5.2 今日上线 ModelFold:百万上下文,挑战复杂难题!
llm·aigc·claude
zixu_star1 天前
上下文工程:Prompt、记忆和上下文如何管理?
人工智能·prompt
泯泷1 天前
同样是多 Agent,为什么有的稳,有的却天天翻车?
人工智能·llm·agent
一起学安全技术1 天前
拆大模型 06|Prompt 工程不靠玄学:上下文要当程序写
人工智能·语言模型·prompt·aigc
泯泷2 天前
像项目经理一样指挥 AI 团队:管理者模式
人工智能·llm·agent