跳到主内容
paste
bin
.ca
type · paste · share
⌘
K
文档
登录
?
← 返回文本
›
编辑 / 分支
无标题文本
#2VM85LwtVd
public / public
新版本
匿名
已创建 4 days ago
过期于 3 days
5.2 KB
语法:
text
你的更改会创建一个链接到此文本的新文本 — 原始文本不变。
新版本
你的更改会创建一个链接到此文本的新文本 — 原始文本不变。
标题(可选)
文件名
语法
text
text
bash
c
cpp
css
diff
dockerfile
go
html
ini
java
javascript
json
kotlin
lua
makefile
markdown
nginx
php
python
ruby
rust
shellscript
sql
swift
toml
typescript
xml
yaml
可见性
公开动态
访问
public
过期
7 天
10 分钟
1 小时
1 天
7 天
30 天
90 天
自定义…
自定义过期
变更备注
(可选)
此文本会显示在公开动态中。如果只想通过链接分享,请更改可见性。
创建新版本
取消
粘贴或输入…
## ✅ 本周完成 (Done) - 围绕 no-testcase code pipeline 的 test case generation 做了质量复盘和问题归因。 - 当前数据不能简单按 stdio pipeline 全量处理,passed 数量不能直接代表可用训练数据规模。 - 主要风险集中在 empty output、polluted/demo output、no-stdin/interface mismatch 三类问题。 - test case 质量检查和 case study。 - 已对 passed / failed 数据做抽样检查,确认旧版 stdio passed 中存在大量 empty output。 - 已用保守规则重新检查 passed output,确认 empty output 修复后基本消失,但 no-stdin 和 input-invariant output 仍然是主要污染来源。 - 对 empty output 污染做了验证逻辑修正。 - verified output 必须非空,且不能明显是 traceback、error、demo label 或示例输出。 - 对需要 wrapper 的 stdio cases,统一用同一个 wrapped solution 重新生成 expected,避免同一 record 内 native output 和 wrapped output 混用。 - 修复后,抽样中 empty output 基本降为 0。 - 明确了后续两条并行处理路线。 - 路线 A:从 test case generator 端筛选并重新生成合适格式和接口,在生成阶段区分 stdio / function / class / file / service 等任务类型。 - 路线 B:对已经生成的 test case output 做保守筛选,优先产出 high-confidence clean set,其余数据进入 rejected / salvage candidates。 ## 🚧 进行中 (In Progress) - 路线 A:test case generator 端的接口修正方案 (重新运行 test case generation) - 目标是在生成 test cases 前先判断任务是否适合 stdio reward pipeline - 直接在 writing test case generator 阶段把 solution 传进去,对着它的格式和接口来生成 input case,避免对 function/class 类型题由于缺少 original test case 被判为 stdio 格式 - 提前剔除 refactor、debug、translation、logging、file/db/API/service 等 open-ended task - 路线 B:生成 output 的保守筛选方案 (基于现在已经生成好的test case做筛选) - rule-based 检查 empty output、no input consumption、input-invariant output、有效 generated cases 数量不足等问题。 - rejected 数据后续考虑二次处理 ## 📋 下周计划 (Next Week) - 验证两种新方案产出的数据质量 - 对两种方案中被丢弃的数据做质量检查,据此设计二次处理方案或者直接弃去 - 汇总质量指标 - 固定跟踪 empty output rate、no_input_consumption rate、input_invariant_output rate、clean retention、wrapper success/failure distribution。 - 继续和 @lixinye @machaozeng @liangqingyuan 讨论数据接口混杂带来的长尾问题 ## 🚫 Blockers / 需要支持 - 正在持续关注 sandbox 稳定性,目前 sandbox 中负载下可以稳定运行,如果再出现崩溃问题则需要 infra 介入 - model serving 的负载偶尔还会出现时间上的不均衡,正在调查 ## 💡 工作日志 (working logs) - 复盘了 largeverify passed 中 empty output 的来源。 - 旧版抽样中,passed / stdio 的 empty output 比例为 91 / 147 = 61.90%。 - failed / stdio 抽样中,171 / 171 cases 的 expected 为空,符合 interface mismatch 模式。 - 复盘了修复后的质量结果。 - empty output 已基本降为 0。 - 但保守筛选下 clean rate 仍约为 9%-10%,主要原因是 no-stdin 和 input-invariant output。 - 典型 case study: - function-only 题:solution 只定义函数,不读 stdin,也不 print,按 stdio 执行会得到 empty output。 - demo output 题:例如 class / shopping cart 题,无论 generated input 如何变化,输出都来自代码中硬编码的示例。 - invariant input/output 题:例如 prime check、move zeroes 等,generated inputs 未覆盖关键分支,导致输出过于单一。 - 已将后续方案拆成两条线并行推进。 - 生成端修正:从 test case generator 阶段识别任务接口并生成更合适的测试格式。 - 产物端筛选:对现有 output 做保守 gate,先抽取可用 clean set。 ## 📊 Production deliverables / 数据快照 ### 已核查产物 | 数据 | 数量 | | --- | ---: | | generated output / largeverify passed | 4,396,401 | | failed UIDs | 2,424,695 | ### Empty output 抽样结果 | bucket | sampled records | sampled cases | empty output | all-empty records | | --- | ---: | ---: | ---: | ---: | | passed / stdio | 12 | 147 | 91 / 147 = 61.90% | 5 / 12 | | failed / stdio | 12 | 171 | 171 / 171 = 100.00% | 12 / 12 | | passed / non-stdio param | 12 | 186 | 0 / 186 = 0.00% | 0 / 12 | ### 保守筛选后的主要污染类型 | 数据范围 | no_input_consumption | input_invariant_output | too_few_cases_after_gate | | --- | ---: | ---: | ---: | | 360k snapshot | 323,287 / 360,000 = 89.80% | 108,898 / 360,000 = 30.25% | 326,609 / 360,000 = 90.72% | | round2 shard | 17,873 / 20,000 = 89.36% | 6,072 / 20,000 = 30.36% | 18,039 / 20,000 = 90.19% | ### 当前判断 - empty output 是已经基本修复的直接 bug。 - polluted/demo output 和 no-stdin/interface mismatch 是仍需系统性处理的核心问题。 - 短期内应优先使用保守 clean set 继续后续实验;中期需要在 test case generator 端做任务接口分流和格式修正。