林老师是一位经验丰富的数学老师。每次批改试卷,他从不只看最终答案——他会把每个学生的解题过程从头到尾读一遍:设未知数合不合理?列方程对不对?移项有没有变号?最后一步有没有笔误?因为他知道,答案对了可能是蒙的,过程对了才是真会。推理链评估,做的就是林老师的这份细致活儿:把大模型的“思考过程”一步步拆开、逐点验证、综合打分,而不是只对一对最终答案。本文就用这条“批改试卷”的主线,系统梳理推理链评估的拆解方法、验证机制、度量指标、基准构建与评测流程。

岗位关联

对 AI 从业者的价值:掌握推理链评估,你就能在模型“答对却不会推”与“会推却答错”之间精准定位能力短板,为模型迭代、发布决策与产品落地提供可靠的量化依据。

目录
  1. 可视化演示
  2. 推理链概述
  3. 链式推理拆解
  4. 步骤验证机制
  5. 端到端度量
  6. 评测基准构建
  7. 评测执行流程
  8. 局限与发展
  9. AI 应用场景
  10. Python 演示
  11. 常见误区
  12. 面试题

可视化演示

展示推理链(Chain-of-Thought)逐步评估流程,以及推理质量指标包括步骤准确率与逻辑一致性度量。

本节配有交互动效(进入视口后自动加载,约 3KB)。

推理链逐步评估 问题输入:需要多步推理的复杂问题 推理步骤:每步独立评估正确性 最终答案:所有步骤正确则答案可信 Answer = f(step1, step2, ..., stepN) 逐步验证比仅看最终答案更可靠

推理链概述

林老师批改数学卷子有个习惯:先看过程,再定分数。看到学生跳过所有推导直接从题目写出答案,他会画个问号——这多半是蒙的。看到过程工整、逻辑严谨,哪怕最后一步笔误,他也会在过程分上手下留情。过程与结果,两条线都要看,缺一条都会误判学生的真实水平。

大语言模型回答复杂问题时同样会“打草稿”:在给出最终答案之前,先输出一段分步推导的文本,这段文本就是推理链(Chain of Thought,简称 CoT)。推理链评估要做的,正是像林老师一样把这段“草稿”纳入评分体系,而不是只核对最终答案与标准答案是否一致。这是它对传统答案匹配式评测最重要的补充。

形式化地说,一条推理链可以写作一个按顺序排列的推导序列:

林老师看重过程,是因为过程暴露思维漏洞;推理链评估的价值也在于此——它补上了传统“只对答案”评测的盲区,让模型真实的推理能力被看见、被量化。

C=(s1→s2→⋯→sn)C = (s_1 \rightarrow s_2 \rightarrow \cdots \rightarrow s_n)
这个公式用圆括号和箭头表示:推理链 C 由 n 个步骤依次衔接而成,每一步都从前一步推导出来。
  1. 推理链 C代表模型从问题到答案的完整思考轨迹,由若干步骤顺序连接而成。
    CC
  2. 箭头符号表示步骤之间的承接关系,强调前一步推出后一步的因果顺序。
    s1→s2s_1 \rightarrow s_2
  3. 步骤 s_i表示第 i 步的推导状态,例如“方程两边同时除以 3”就是一个可验证的步骤。
    sis_i
  4. 省略号说明中间步骤的数量 n 可多可少,一条推理链未必只有三步。
    ⋯\cdots

链式推理拆解

草稿纸上一大段推导没法直接批改,林老师的做法是先切块:读题、设未知数、列方程、化简、求解、验算,一块一块地打钩打叉。哪一块出了毛病,一眼就能定位。切块切得好不好,直接决定后面所有批改动作的质量。

评测推理链的第一步同样是“切块”——把模型输出的长文本按逻辑边界拆解成若干可独立检查的步骤,这个过程称为链式推理拆解。模型可能一口气写出几百个字,评测系统要识别出其中的推导边界,把它切成一个个有明确含义的单元。

拆解要把握两个关键:粒度和顺序。粒度上,每步最好是“原子操作”,小到能单独判断对错;顺序上,步骤之间有依赖关系,后续步骤必须建立在前序步骤之上。拆解结果可表示为:

拆解就像把草稿纸整理成规整的格子,格子越规整,林老师批改的效率就越高、误判就越少。

S=⟨s1,s2,…,sn⟩,si 为可独立验证的原子步骤S = \langle s_1, s_2, \ldots, s_n \rangle, \quad s_i \text{ 为可独立验证的原子步骤}
这个公式说明:拆解得到的步骤集合是有序的、原子化的,顺序打乱会导致推理链失去意义。
  1. 有序集合 S表示拆解后得到的一组步骤,先后顺序不可打乱。
    SS
  2. 尖括号强调步骤之间是有序的,交换位置可能改变整个推理方向。
    ⟨s1,s2⟩\langle s_1, s_2 \rangle
  3. 原子步骤 s_i每个步骤应尽量小到能被单独判断对错,比如“计算 3×7”就是一个原子步骤。
    sis_i
  4. 可独立验证约束这是衡量拆解质量的核心标准,每步都应能被单独的验证器核验。
    si 为可独立验证的原子步骤s_i \text{ 为可独立验证的原子步骤}

步骤验证机制

步骤切好之后,林老师开始逐行批改:移项有没有变号?合并同类项有没有漏项?每一步都单独判对错。他手里的红笔就是一台“步骤验证器”——碰到合理的推导就画钩,碰到可疑的跳跃就画叉。

对应到技术,就是对推理链中的每个步骤 s_i 逐一调用验证器,判断它是否由前文正确推出、是否符合已知事实与数学规则。这一整套检查动作,就是步骤验证机制,它是推理链评估中最核心的环节。

验证机制通常包含四类检查:逐点验证(每步单独判对错)、逻辑一致性(前后步骤是否自洽)、幻觉检测(是否引用了不存在的定理或数据)、矛盾识别(是否与前提条件冲突)。把所有步骤的验证结果汇总,就得到逐步正确率:

正是这一排排红钩红叉,让“答案对但过程错”的模型无所遁形。

StepAcc=1n∑i=1n1[si 合理]\text{StepAcc} = \displaystyle\frac{1}{n}\sum_{i=1}^{n}\mathbb{1}[s_i \text{ 合理}]
StepAcc 表示一条推理链中“合理步骤占全部步骤的比例”,相当于林老师在每一步上打的勾占所有步骤的比例。
  1. StepAcc逐步正确率,衡量一条推理链中合理步骤的占比。
    StepAcc\text{StepAcc}
  2. 求和符号把每一步的验证结果累加起来,下标 i 从 1 到 n。
    ∑i=1n\sum_{i=1}^{n}
  3. 指示函数括号内条件成立记 1,不成立记 0,相当于老师给每一步打“对”或“错”。
    1[si 合理]\mathbb{1}[s_i \text{ 合理}]
  4. 平均把总得分除以步骤数 n,得到 0 到 1 之间的比例。
    1n\displaystyle\frac{1}{n}

端到端度量

过程分算完,林老师还要在成绩单上填上“结果分”——毕竟考试最终看的是有没有答对。两栏分都高,才是真本事;只靠过程分撑场面,显然站不住脚。端到端度量就是这第二栏分数。

端到端度量从整条推理链的最终成效出发,与步骤验证形成互补:步骤验证回答“错在哪一步”,端到端度量回答“整体行不行”。两者共同构成完整的评分维度,缺一不可。

常用的端到端指标有四类:结果正确率(最终答案是否与标准答案一致)、链路贯通性(整条链是否全程合理)、推理一致性(多次采样结论是否稳定)、效率代价(达到正确结果需要多少步骤和计算量)。其中链路贯通率是最严格的过程性指标:

过程分与结果分双栏打分,模型的成绩单才完整可信。

PassRate=1N∑j=1N1[第 j 条链全程合理]\text{PassRate} = \displaystyle\frac{1}{N}\sum_{j=1}^{N}\mathbb{1}[\text{第 } j \text{ 条链全程合理}]
PassRate 统计所有测试题中“整条推理链从头到尾每一步都正确”的比例,任何一步出错都算不贯通。
  1. PassRate 链路贯通率整条链从第一句到最后一句全部合理才算贯通。
    PassRate\text{PassRate}
  2. 对 N 条链求和把每条被测推理链的贯通情况逐个累加。
    ∑j=1N\sum_{j=1}^{N}
  3. 指示函数第 j 条链全程合理记 1,任一步出错记 0,等于老师判定“这题过程完整过关”。
    1[第 j 条链全程合理]\mathbb{1}[\text{第 } j \text{ 条链全程合理}]
  4. 平均除以 N,得到所有测试题中过程全对的比例。
    1N\displaystyle\frac{1}{N}

评测基准构建

林老师心里清楚:自己班平均 90 分、隔壁班平均 90 分,如果试卷难度不一样,这两个 90 分根本没有可比性。要横向比较,就必须统一命题、统一评分细则。这是所有考试公平性的根基。

AI 评测也是同理。要让不同团队、不同版本的模型在推理能力上做横向对比,必须有一套标准化评测基准(Benchmark),包含统一的题目集、参考答案和打分协议。没有基准,各家自说自话的分数就像难度不同的两张卷子,无法对比。

构建一套推理链基准要完成四件事:数据集设计(题目覆盖多领域、多题型)、标注规范(为每条推理链标注参考答案步骤与评分规则)、难度分级(从单步推理到多步推理分层设置)、基准对比(维护跨模型的公共排行榜)。其中标注规范尤其重要,参考答案标注的一致性直接决定基准的可信度,常用 Cohen's kappa 系数衡量两位标注老师的判断是否一致:

一套好基准,就是那份全校老师反复研讨出来的标准卷,是公平较量的基石。

κ=po−pe1−pe\kappa = \displaystyle\frac{p_o - p_e}{1 - p_e}
κ 系数扣除“碰巧一致”的成分后,衡量两位标注者真实的一致程度,数值越高说明标注越可靠。
  1. κ(kappa 系数)标注一致性指标,衡量两位标注员对同一条推理链的判定是否吻合。
    κ\kappa
  2. p_o(观测一致率)两位标注员实际打分相同的比例。
    pop_o
  3. p_e(偶然一致率)即使两人随意打分也可能碰巧一致的概率。
    pep_e
  4. 整体除式从实际一致率中扣除偶然一致,再除以剩余的可改进空间,得到真实一致性。
    po−pe1−pe\displaystyle\frac{p_o - p_e}{1 - p_e}

评测执行流程

有了标准卷,还得有规范的考务流程:何时发卷、如何作答、怎样阅卷、怎么统分。哪个环节随意,成绩就会失真。林老师所在的学校每次统考都有成文的流程手册,每一步都有规定动作。

推理链评测的执行同样是一条流水线,任何环节不标准都会污染分数。评测工程师需要像教务主任一样,把整条流水线的每个环节都固定下来,让任何人来操作都能得到可复现的结果。

流水线包括四个环节:提示设计(用固定模板引导模型输出推理链)、采样策略(同一问题多次采样以降低随机性)、聚合统计(把多条采样的结果汇总成得分)、结果解读(结合步骤验证与端到端指标给出诊断结论)。其中采样策略直接影响分数稳定性,常用 pass@k 指标估计“采样 k 次内至少成功一次”的概率:

流程规范,卷子谁来批都一样;评测流程标准化,模型分数才能经得起复测与质疑。

pass@k=E[1−(n−ck)(nk)]\text{pass@k} = \mathbb{E}\left[1 - \displaystyle\frac{\binom{n-c}{k}}{\binom{n}{k}}\right]
pass@k 回答这样的问题:同一道题让模型独立试 n 次,其中有 c 次答对,那么任意挑 k 次里至少出现一次正确答案的概率是多少。
  1. pass@k从 k 次采样中至少有一次得到正确答案的概率,反映模型能力的上限。
    pass@k\text{pass@k}
  2. n 与 cn 次独立采样中,有 c 次得到正确答案。
    n, cn, \ c
  3. 分母组合数从 n 次采样里任意挑出 k 条的全部方式数。
    (nk)\binom{n}{k}
  4. 分子组合数挑出的 k 条全部来自错误结果的方式数,两者相除得到“k 条全错”的概率。
    (n−ck)\binom{n-c}{k}
  5. 取补与期望1 减去“全错概率”,再对多次实验取平均,就是至少一次成功的期望概率。
    E[1−⋯ ]\mathbb{E}\left[1 - \cdots\right]

局限与发展

林老师也有自我怀疑的时刻:学生用了一种他从没见过的巧解,步骤跳跃但结论正确;还有一次参考答案本身印错了,全班被冤枉扣分。他渐渐明白,批改这件事并不完美,需要持续修订评分细则。

推理链评估也面临同样的困境,集中体现为三个典型局限。评估噪声:不同标注员对“这一步是否合理”可能判断不一;多样化正确解:正确思路往往不止一种,参考答案之外的合理链可能被误判;过程偏差:参考答案自身若有错误,评估就会系统性跑偏。

这些局限驱动着方法论不断演进:自动化过程监督(用训练好的验证器替代人工标注)、自一致性方法(用多路采样结果相互印证)、学习型验证器(从数据中学出更鲁棒的步骤评分函数)等方向相继涌现。评估噪声本身也可以用一致率来量化:

好老师会不断修订评分细则,推理链评估方法论也正是在一次次纠偏中走向规范化与体系化,成为模型能力横向对比的统一基准。

Agreement=1M∑l=1M1[标注l=多数标注]\text{Agreement} = \displaystyle\frac{1}{M}\sum_{l=1}^{M}\mathbb{1}[\text{标注}_l = \text{多数标注}]
Agreement 反映同一推理链被多位标注员评价时,判断与多数结论一致的比例,比例越低说明评估越不稳定。
  1. Agreement 一致率衡量评估结果受标注噪声影响的程度。
    Agreement\text{Agreement}
  2. 对 M 次标注求和把 M 位标注员对同一条链的判定结果逐个累加。
    ∑l=1M\sum_{l=1}^{M}
  3. 指示函数第 l 位标注员的判断与多数标注一致记 1,否则记 0。
    1[标注l=多数标注]\mathbb{1}[\text{标注}_l = \text{多数标注}]
  4. 平均除以 M 得到一致率,数值越高说明评测本身越稳定。
    1M\displaystyle\frac{1}{M}

AI 应用场景

大模型数学解题能力评测

阶段:模型评估与迭代

解决的问题:传统评测只比对最终答案,无法发现“答案对但推导错”的模型。推理链评估像林老师复查解题过程一样,能定位错误具体发生在第几步,为训练数据修正提供依据。

具体案例:某教育科技公司用推理链评估数学大模型,将模型的解题步骤与参考答案逐步比对,发现约 30% 样本答案正确但中间步骤存在公式误用,据此针对性地补充推理纠错数据,模型迭代后的链路贯通率提升了 12 个百分点。

智能辅导系统的过程性反馈

阶段:推理能力诊断

解决的问题:学生使用 AI 解题时,需要的不是一句冷冰冰的“答案错误”,而是“错在哪一步、为什么错”。推理链评估正好把每一步的验证结果输出成可解释的反馈。

具体案例:某智能学习产品对模型生成的解题链逐步打标签,自动识别出“第 3 步移项符号错误”“第 5 步引用定理不当”等过程问题,把定位结果反馈给学生,学生平均订正效率明显提升。

模型版本发布的回归测试

阶段:模型发布前评测

解决的问题:新版本模型可能最终答案分数持平,但推理链质量悄悄退化。只看结果指标会放过这类风险,加测推理链指标才能兜住底线。

具体案例:某大模型团队把链路贯通率作为发布门禁指标,在一次迭代中发现答案正确率上涨但贯通率从 78% 滑落至 65%,排查后确认是训练数据中混入了大量“跳步”样本,及时修正避免了带病上线。

Python 演示

python98 行
# -*- coding: utf-8 -*-"""推理链评估器:模拟对模型解题过程的逐步评分与端到端汇总"""import re  class StepVerifier:    """步骤验证器:用关键词覆盖率判断单步推导是否合理"""     def __init__(self, gold_steps):        self.gold_steps = gold_steps  # 参考答案步骤列表     def _tokens(self, text):        """把步骤文本切成关键词集合"""        return set(re.findall(r"[\w\u4e00-\u9fa5]+", text))     def verify(self, pred_step, gold_step):        """预测步骤与参考答案步骤做关键词比对"""        pred_tokens = self._tokens(pred_step)        gold_tokens = self._tokens(gold_step)        if not gold_tokens:            return False        hit = len(pred_tokens & gold_tokens) / len(gold_tokens)        return hit >= 0.6  # 覆盖率不低于 60% 判定该步合理  class ChainEvaluator:    """推理链评估器:统计逐步正确率与链路贯通率"""     def __init__(self):        self.step_acc_total = 0.0        self.chain_pass_total = 0.0        self.case_count = 0     def evaluate_one(self, prediction, gold):        """评估单条推理链,返回逐步正确率、贯通标记与答案对错"""        verifier = StepVerifier(gold["steps"])        step_scores = []        for i, gold_step in enumerate(gold["steps"]):            if i < len(prediction["steps"]):                ok = verifier.verify(prediction["steps"][i], gold_step)                step_scores.append(1 if ok else 0)            else:                step_scores.append(0)        step_acc = sum(step_scores) / len(step_scores)        chain_pass = 1 if all(step_scores) and prediction["steps"] else 0        answer_correct = 1 if str(prediction["answer"]) == str(gold["answer"]) else 0        self.step_acc_total += step_acc        self.chain_pass_total += chain_pass        self.case_count += 1        return {            "step_acc": step_acc,            "chain_pass": chain_pass,            "answer_correct": answer_correct,        }     def report(self):        """输出汇总指标"""        if self.case_count == 0:            return {}        return {            "平均逐步正确率 StepAcc": round(self.step_acc_total / self.case_count, 3),            "链路贯通率 PassRate": round(self.chain_pass_total / self.case_count, 3),        }  def main():    samples = [        {            "prediction": {                "steps": ["甲比乙大 3 岁", "丙比甲小 5 岁", "所以丙比乙小 2 岁"],                "answer": 2,            },            "gold": {                "steps": ["设甲为基准", "乙比甲小 3 岁", "丙比甲小 5 岁", "丙比乙小 2 岁"],                "answer": 2,            },        },        {            "prediction": {                "steps": ["先算总面积", "面积除以 2 得到体积"],                "answer": 12,            },            "gold": {                "steps": ["测量长宽高", "长乘宽得到底面积", "底面积乘高得到体积"],                "answer": 12,            },        },    ]    evaluator = ChainEvaluator()    for idx, item in enumerate(samples, 1):        detail = evaluator.evaluate_one(item["prediction"], item["gold"])        print("样本 %d: 逐步正确率=%.2f 链路贯通=%d 答案正确=%d" % (            idx, detail["step_acc"], detail["chain_pass"], detail["answer_correct"]))    print(evaluator.report())  if __name__ == "__main__":    main()
目的:模拟一场小规模推理链评测,把模型的解题步骤与参考答案逐条比对,输出逐步正确率、链路贯通率与答案正确率,演示林老师“逐行批改”的完整流程。
  1. hit = len(pred_tokens & gold_tokens) / len(gold_tokens)计算预测步骤与参考答案步骤的关键词覆盖率,覆盖率越高说明该步越接近标准推导。
  2. return hit >= 0.6设定 60% 的覆盖阈值,达到即判定这一步“合理”,就像老师认为关键要点都写到了就算对。
  3. chain_pass = 1 if all(step_scores) and prediction["steps"] else 0只有整条链每一步都通过验证才算贯通,任何一步出错都会让贯通标记归零。
  4. answer_correct = 1 if str(prediction["answer"]) == str(gold["answer"]) else 0端到端判定:最终答案与参考答案一致记 1 分,与步骤分分开统计。
  5. self.step_acc_total += step_acc把每条链的逐步正确率累计起来,最后求平均得到整体 StepAcc。
  6. "平均逐步正确率 StepAcc": round(self.step_acc_total / self.case_count, 3)汇总报告输出平均逐步正确率,保留三位小数。
  7. pred_tokens = set(re.findall(r"[\w\u4e00-\u9fa5]+", pred_step))用正则抽取步骤中的关键词并转成集合,方便后续做交集比较。

常见误区

误区模型答案对了就说明推理能力强,过程看不看无所谓。反正最终分数才是用户真正关心的。

正解就像林老师批卷,答案对但过程一团糟,说明可能是蒙对或抄对。推理链评估专门抓“答案对但过程错”的情况,避免高估模型能力。只对答案的评测会把侥幸当成本事。

为何常见:传统评测长期只比较输出文本是否匹配,大家习惯了这种省事的指标,忽略了答案正确背后的推导质量。

误区步骤写得越多越详细,模型推理能力就越强。评测时应该给更长的链打更高分。

正解长度不等于质量。冗长的链可能夹带无关废话甚至错误步骤,就像学生把草稿纸写满但不含关键推导。评估关注的是每步是否必要、正确、连贯,而非数量。

为何常见:直觉上“写得多=想得多”,忽略了多余步骤会稀释信息密度,甚至掩盖真正的错误。

误区中间每一步都验证通过了,最后的答案不可能错。所以只要算出了 StepAcc,就不需要再看答案了。

正解步骤局部正确不代表结论正确,比如两个正确的前提可能被错误地组合成结论;反之,答案错也可能只是最后一步笔误。过程验证与结果验证是两个维度,必须分开统计。

为何常见:把“局部正确性”误当成“全局正确性”的充分条件,忽略了推理组合环节可能引入新错误。

误区反正最后要核对答案,中间步骤验证不过是多此一举,浪费算力。

正解两者互补而非重复:逐步验证定位错误发生在哪一步,端到端验证衡量结论是否可用。老师既看步骤分也看结果分,缺一不可。跳过任一个,评估都会失真。

为何常见:混淆了“过程质量”和“结果质量”两个不同的评估目标,以为它们总是同向变化。

面试题

Q1. 推理链评估与纯答案评估最核心的区别是什么?

单选题 · easy

  • A.关注解题过程的合理与连贯← 正确答案
  • B.只看模型输出结果的字数
  • C.完全忽略最终答案的对错
  • D.只适用于数学计算题的评测

答案:A。推理链评估像林老师批改应用题,既看答案也看推导过程,A 正确。B 错在评估不看字数;C 错在最终答案仍是重要维度;D 错在推理链评估适用范围远不止数学题。

Q2. 拆解推理链时,最合理的步骤粒度是什么?

单选题 · easy

  • A.越细越好,每个符号作为一步
  • B.越粗越好,整条链作为一步
  • C.适中,每步可独立验证对错← 正确答案
  • D.随意,粒度不影响评估结果

答案:C。步骤粒度应适中,每步是原子操作且能单独判断对错,C 正确。过细会引入碎片噪声,过粗无法定位错误,粒度对评估质量影响很大,所以 A、B、D 均错误。

Q3. 公式 StepAcc = (1/n)Σ𝟙[s_i 合理] 度量的是什么?

单选题 · mid

  • A.整条链所有步骤都正确的次数
  • B.合理步骤占全部步骤的比例← 正确答案
  • C.正确答案占全部采样的比例
  • D.模型生成推理链的平均长度

答案:B。StepAcc 把所有步骤的验证结果求和再除以 n,得到的是合理步骤的占比,B 正确。A 是“是否全对”的布尔值,C 属于端到端结果指标,D 是链长度统计,均与公式含义不符。

Q4. 模型三条推理链答案都对,但其中一条中间步骤矛盾,正确的做法是?

单选题 · mid

  • A.三条同等计分,因为答案都对
  • B.只采信最长那条链的得分
  • C.结合逐步验证,对矛盾链扣分← 正确答案
  • D.删掉过程,只按最终答案评分

答案:C。推理链评估要求过程与结果分开看,矛盾链即使答案正确也应扣过程分或标注异常,C 正确。A 忽略过程质量,B 用长度替代质量,D 退回纯答案评测,均不符合方法论。

Q5. 构建推理链评测基准时,标注规范应包含哪些内容?

多选题 · mid

  • A.标注每一步的推导依据与知识← 正确答案
  • B.覆盖不同难度层级的题目分布← 正确答案
  • C.只标注最终答案不写推导过程
  • D.多位标注员交叉核对一致性← 正确答案

答案:ABD。答案参考步骤必须标注推导依据(A),题目应分级覆盖(B),标注需交叉核对以保证一致性(D)。C 恰恰违背推理链评测初衷——没有过程标注就无法验证步骤。

Q6. 公式 pass@k 中符号 c 表示的含义是什么?

单选题 · single

  • A.在 n 次采样中得到正确答案的次数← 正确答案
  • B.在 k 次采样中得到正确答案的次数
  • C.模型需要评测的题目总数量
  • D.参考答案中推理步骤的总数量

答案:A。pass@k 的分母是 n 次采样中任取 k 条的组合数,分子是 c 个正确答案里取 k 条的组合数,因此 c 表示 n 次采样中答对的次数,A 正确。B 混淆了 k 与 n 的角色,C、D 与采样过程无关。

Q7. 哪些因素可能造成推理链评估的“过程偏差”?

多选题 · hard

  • A.参考答案本身错误或并非唯一← 正确答案
  • B.正确但思路不同的链被误判← 正确答案
  • C.关键词匹配标准过严或过松← 正确答案
  • D.最终答案一定可由过程推断出

答案:ABC。参考答案错误会带偏所有对比(A),正确但思路不同的链会因不匹配参考答案被误判(B),匹配阈值不恰当会引入噪声(C)。D 是一个错误假设,实际中过程正确也可能结论错误,它不是偏差来源。

Q8. 模型在某推理步骤引用了一个不存在的定理,这在步骤验证机制中属于哪类问题?

单选题 · mid

  • A.幻觉,应标记该步为错误← 正确答案
  • B.逻辑矛盾,应忽略该步骤
  • C.正常推理,无需特别处理
  • D.端到端范围,不算步骤问题

答案:A。引用不存在的定理是典型的幻觉,幻觉检测会将该步标记为错误,A 正确。B 错在矛盾针对前后步骤冲突而非虚构事实;C、D 忽略了对步骤真实性的核验要求。

Q9. 同一问题采样多条推理链并取多数答案,主要解决什么问题?

单选题 · easy

  • A.单次采样的随机波动与偶然性← 正确答案
  • B.推理链太长导致显存不足
  • C.参考答案标注不够完整
  • D.模型完全无法生成推理链

答案:A。语言模型采样具有随机性,多次采样取多数答案能降低单次偶然失误的影响,A 正确。显存、标注缺失、无法生成推理链都不是“多数投票”能解决的,B、C、D 错误。

Q10. 下列哪些属于端到端推理质量度量指标?

多选题 · hard

  • A.链路贯通率,全部步骤合理← 正确答案
  • B.结果正确率,答案与标准一致← 正确答案
  • C.推理一致性,多次采样稳定← 正确答案
  • D.单步字符数,衡量表达长度

答案:ABC。链路贯通率、结果正确率、推理一致性分别从“过程全程合格”“结论正确”“结论稳定”三个角度刻画端到端质量,A、B、C 正确。单步字符数衡量的是表达冗长程度,不是质量度量,D 错误。