Skip to content

eval: 拆出入口画像重复运行与配对比较工具 - #132

Merged
leafliber merged 1 commit into
mainfrom
eval/entry-profile-repeat-compare
Oct 20, 2026
Merged

leafliber merged 1 commit into
mainfrom
eval/entry-profile-repeat-compare

Conversation

@leafliber

Copy link
Copy Markdown
Member

从 #128 的 94a7778 单独拆出 memory_runner repeat / summarize / compare 和工具测试,使重复评测与按案例配对比较可以独立使用。repeat 每次使用独立数据库与目录;离线汇总保留全部运行,核对输入和材料指纹,输出逐次结果、均值、逐案例分布、覆盖差、违规/禁止合计、调用量与耗时。汇总和比较继续为描述统计,不作门槛通过声明。

删除 --union-nomination,没有新增运行设置覆盖参数;新序列直接使用现有单次运行的默认设置,settings={}。历史 settings 仅作为离线元数据透传,仍可复现 EXP2。产品并集逻辑、设置与相关产品测试未移植,附 EXP2-report.md 历史汇总。产品代码、提示词、评分、计分合并与单次运行器均保持 main 行为;17 个既有非 CLI 函数 AST 完全一致。

验证(基线 93d1be9,全部使用假模型或既有封存材料,本回合没有真实模型调用):

检查 结果
先红后绿 main 上 16 failed / 2 passed;实现后相关测试 33 passed,其中新增工具测试 18 项
Python 3.13 全量 5,425 passed
Python 3.12 全量(locked / isolated) 5,425 passed
uv build wheel / sdist 成功
公开学习请求 116 段、272 批,逐字零差异
七份公开召回 228 查询 × 5 模式 = 1,140 份返回零差异;214 次判断请求一致
入口画像请求 v1:6 例 / 37 次;v2:12 例 / 172 次,全部逐字一致
EXP2 离线复算 六次历史运行的 A / B 汇总和配对 JSON 均与原记录完全一致

学习对照使用仓库 compare_learning_requests.py 的外部副本,仅把 v5 加入语料清单以覆盖全部 116 段,其余字节一致。召回只剔除返回中的 recall_id 与计时字段;请求正文不规整。原始材料及验证日志:/Users/cassia/Local/Code/iris-eval-artifacts/EF-29-eval-tooling-20261020。本 worktree 的 .pytest-tmp 已删除。

命令用法(本回合未运行真实 repeat):

uv run python -m evals.entry_profile_eval.memory_runner repeat --corpus evals/entry_profile_v2.json --runs 3 --out /path/to/series
uv run python -m evals.entry_profile_eval.memory_runner summarize --series /path/to/series --score /path/to/score-1.json --score /path/to/score-2.json --score /path/to/score-3.json --out /path/to/summary.json
uv run python -m evals.entry_profile_eval.memory_runner compare --left /path/to/summary-a.json --right /path/to/summary-b.json --out /path/to/paired.json

每次评分继续使用既有 score 命令;summarize 不允许省略无效或缺失运行,compare 要求两组语料、源码、评分、模型、重放模式及运行次数一致。

@leafliber
leafliber merged commit 15e8cf7 into main Oct 20, 2026
1 check passed
@leafliber
leafliber deleted the eval/entry-profile-repeat-compare branch October 20, 2026 16:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant