发现
runner 会读取evals/ 下的:
*.eval.ts文件- 导出 eval 数组的数据集文件
- 包含
PROMPT.md和EVAL.ts的 fixture 目录
list 只发现和打印 ID,不执行 eval。
过滤
exp 命令中,实验名之后的位置参数是 eval ID 前缀:
并发
runs 与 early-exit
runs 用于测 pass rate。early-exit 会在某个 attempt 通过后停止同一 eval 的剩余尝试。
缓存
niceeval 可以根据输入、配置和相关文件 fingerprint 跳过已通过结果。缓存适合加速迭代,但如果你在调试非确定性行为,应该明确关闭或清理相关缓存。超时和预算
Reporter
runner 在 eval 完成后把结果交给 reporters:- console reporter 提供实时反馈。
- JSON artifacts 用于后续分析。
- JUnit reporter 适合 CI。
输出目录
每次运行会写入.niceeval/<timestamp>/,包括 summary、per-eval result、event stream、transcript、diff 和测试输出。
推荐调试流程
- 先跑
npx niceeval list确认发现结果。 - 用
npx niceeval exp <实验> <ID 前缀>缩小到一个 eval。 - 失败后运行
npx niceeval view查看 transcript 和 diff。 - 再扩大到完整 suite 或 experiment。