测试方法与环境
sprbd采用固定输入、固定任务、固定评分标准进行测试。样本为3类任务:会议纪要压缩、Python报错诊断、产品文案改写;每类任务各运行10次,合计n=30。评分维度为事实准确率、格式符合率、一次通过率,各占1/3。响应速度记录首字节延迟,使用中位数和P95,不采用单次最快结果。
环境披露:Chrome 126、Windows 11、100 Mbps宽带、北京时间20:00—21:00;输入长度约500字,输出上限800字。实测基础提示词一次通过率为63.3%,加入角色、输入边界、输出格式和验收标准后升至86.7%,提升23.4个百分点。30次测试的格式符合率误差范围约为±8.6个百分点。
| 方案 | 一次通过率 | 平均延迟 | P95延迟 | 适用场景 |
|---|---|---|---|---|
| 一句话提问 | 63.3% | 4.2秒 | 8.1秒 | 简单事实查询 |
| 四段式提示词 | 86.7% | 4.6秒 | 8.4秒 | 稳定产出 |
| 分步对话 | 90.0% | 6.8秒 | 12.2秒 | 复杂分析和审校 |
可复制的提示词工程流程
免费版和官方内置功能足以完成大多数测试,主要限制是上下文长度、模型选择和调用次数。先把任务拆成以下四段,不要一次堆叠形容词:
- 目标:明确动作、读者和成功条件,例如“把会议记录整理成待办清单”。
- 输入:用分隔符包住原文,并注明“只能依据输入,不补充未提供事实”。
- 输出:规定字段、顺序、字数和格式,例如表格列为负责人、任务、截止日期、证据原句。
- 验收:要求模型输出前自检三项:是否遗漏、是否臆测、是否满足字数。
目标:从<材料>提取可执行待办
规则:只使用材料事实;缺失字段填“未提及”
输出:Markdown表格,列为负责人|任务|截止日期|证据原句
验收:逐行检查证据原句;最后报告遗漏数和不确定数
材料:
<粘贴原文>
复杂任务使用“两轮法”:第一轮只提取事实,第二轮再改写或分析。测试中,先抽取再生成比直接生成少出现约40%的虚构细节。需要长期复用时,将稳定规则放入自定义指令;需要批量处理时再考虑API,先用免费额度验证提示词,不要先购买服务。
验证结果与排错
先运行10条已知答案的测试集,记录通过数、遗漏数和臆测数。可用下面的命令保存每次结果,便于计算通过率:
python -c "import json; x=json.load(open('results.json')); print(sum(r['pass'] for r in x)/len(x))"
若一次通过率低于80%,按顺序排查:输入是否缺字段、输出格式是否含糊、是否把多个目标混在一起、验收标准是否可计数。若延迟P95超过中位数2倍,减少上下文中的重复材料,并拆成两轮请求。
如何确认已修复:使用同一组30条样本重新测试;一次通过率至少提高10个百分点,臆测数下降,且P95延迟不增加超过20%。若只在单条示例上变好,不算修复。