# 高频错误清单

## T1

| 错误 | 结果 | 考场修复 |
|---|---|---|
| 输出结果如下 + JSON | 解析器风险 | 从左花括号开始直接输出 |
| 布尔值写成 1/0 或字符串 | 类型错 | 只写 true/false |
| 漏掉 student_id | 字段错 | 原样回传输入 ID |
| 判断数组数量不对 | 格式失分 | 先数题目数，再生成数组 |
| 取草稿第一个数字 | 逻辑错 | Prompt 强调最终核心答案 |
| 只适配公开学生文本 | 隐藏集失分 | 用评论、表情、错建议做变式 |

## T2

| 错误 | 结果 | 考场修复 |
|---|---|---|
| 只算点积 | 相似度错 | 点积除以两个 L2 norm |
| 排序升序 | Top-K 反了 | 按 -score 排序 |
| 忘记 .item() | 返回 Tensor，比较不稳 | 函数返回 Python float |
| 没有限制 top_k | Prompt 过长或越界 | 使用切片 [:top_k] |
| 当前题/参考题混写 | 模型照抄 | 用两个显式区块 |
| answer 带单位 | 输出错 | answer 只保留数字字符串 |
| 看公开 ID 写 if 分支 | 隐藏集失分 | 只依赖函数参数和题库 |

## 通用

- 不读 evaluate.py 就写代码。
- 修改不可修改的评测器。
- 在 JSON 后加解释。
- `do_sample=True` 让同一输入不稳定。
- 只跑公开集、不跑隐藏集。
