- 日期: 2026-03-29
- 模块: data/loader.py - load_livecodebench
- 问题: LiveCodeBench字段名与预期不符,无test_code和entry_point字段
- 实际字段: question_title, question_content, platform, question_id, public_test_cases, private_test_cases, starter_code, difficulty
- 根本原因: LiveCodeBench是竞赛题(stdin/stdout),不是函数补全题,执行模式与HumanEval完全不同
- 影响范围: executor/sandbox.py需要新增stdin/stdout执行模式;loader.py字段映射需修正
- 解决方案: 见下方决策
- 预防措施: 加载新数据集前先打印字段列表确认格式
- 解决方案: executor支持两种模式——function模式(HumanEval风格assert)和stdio模式(LiveCodeBench风格stdin/stdout对比),通过problem.exec_mode字段区分,可插拔设计
- 状态: 处理中
- 解决方案:
- executor分三种模式:function/stdio/repo
- Problem增加exec_mode字段标识执行模式
- BigCodeBench→function,LiveCodeBench→stdio,SWE-Bench→repo(后期)
- sandbox.py作为统一入口根据exec_mode分发
- 状态: 已解决,开始实现