Appearance
10.5 自反思提示(Self-Reflection)
引言:为什么需要"自反思"
大模型的错误往往来自:理解偏差、推理跳步、信息遗漏、中间步骤不一致、最终答案自相矛盾。因此,在工程实践中,大厂会加入关键一环:Self-Reflection——让模型"自己检查自己"。
10.5.1 什么是 Self-Reflection
Self-Reflection 本质是:让模型对自己的输出做结构化审查,并根据问题重新修正答案。 它不是简单问"是否确定",而是有组织、有步骤、有依据、有验证逻辑、有纠错流程的工程化校验。
10.5.2 自反思三种类型
| 类型 | 用途 | 示例 |
|---|---|---|
| 一致性检查 | 查找推理步骤之间是否矛盾 | "检查你的推理是否存在矛盾" |
| 覆盖性检查 | 查找是否遗漏关键条件 | "检查你的回答是否覆盖所有要求" |
| 正确性检查 | 判断是否使用了错误前提 | "检查你的推导是否基于所有已知条件" |
10.5.3 自反思的三阶段结构
| 阶段 | 目标 | 内容 |
|---|---|---|
| 审查(Review) | 读取自己的输出,与条件对比 | 是否遗漏要求、是否存在矛盾、推理是否合理 |
| 诊断(Diagnose) | 明确指出错误,结构化说明 | 发现的问题:1... 2... |
| 修正(Refine) | 给出修正后的最终答案 | 不能重复错误,输出必须简洁准确 |
10.5.4 自反思提示模板
# Self-Reflection Template
## Step 1:Review
检查你的回答是否:
- 覆盖所有要求?
- 使用了正确前提?
- 是否存在矛盾或逻辑错误?
- 是否有遗漏关键条件?
## Step 2:Diagnose
列出发现的问题(如果有):
1. …
2. …
## Step 3:Refine
基于检查结果:
- 修正错误、补全遗漏
- 输出最终、简洁、结构化答案10.5.5 CoT / RPC / Self-Reflection 的协作
| 项目 | CoT | RPC | Self-Reflection |
|---|---|---|---|
| 作用 | 生成推理链 | 控制推理路径 | 审查并修正推理链 |
| 侧重点 | 步骤内容 | 步骤顺序 | 错误纠正 |
| 位置 | 推理阶段 | 推理执行阶段 | 推理后阶段 |
| 稳定性 | 中 | 高 | 最高 |
最终效果:CoT 生成 → RPC 控制 → Self-Reflection 校验 → 最终答案可靠
10.5.6 什么时候必须使用 Self-Reflection
| 场景 | 原因 |
|---|---|
| 高风险任务 | 避免错误放大 |
| 数学/代码/分析 | 易出现推理错误 |
| 多阶段任务 | 中间步骤常出错 |
| Agent 系统 | 避免行动走偏 |
本节小结
关键要点
- Self-Reflection 是大模型输出质量提升的关键机制
- 通过审查→诊断→修正提高稳定性
- 能显著减少幻觉、错误、遗漏
- 与 CoT 和 RPC 搭配效果最强
自反思是推理控制的最后一环,接下来我们将学习:推理控制综合案例。


