---
title: "Self-Refine Prompting — 自我提炼提示"
source: "https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA"
wiki: "systems-analysis.info/int"
article: "Self-Refine_Prompting_—_自我提炼提示"
language: "zh"
categories:
  - "Category:Chinese"
  - "Category:Large language models"
  - "Category:Machine learning"
  - "Category:Prompt engineering"
revision_id: 6631
wiki_created_at: 2026-09-07T00:08:03Z
wiki_modified_at: 2026-09-07T00:08:03Z
downloaded_at: 2026-09-07T23:14:55Z
---

# Self-Refine Prompting — 自我提炼提示

**Self-Refine**（**自我提炼**或**自我修正**）是提示工程领域的一种方法，它允许大型语言模型 (LLM)根据自身的反馈来迭代式地改进其生成的回答<sup>[\[1\]](https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA#cite_note-madaan2023-1)</sup>。这一想法由阿曼·马丹（Aman Madaan）领导的一组研究人员于2023年提出，其基础是观察到语言模型与人类相似，并非总能一次性生成最佳结果。

在该方法中，同一个 LLM 依次扮演三个角色：

1.  **生成器 (Generator)**: 针对请求创建初始的草稿回答。
2.  **批判器 (Feedback)**: 评估自己的回答并提供建设性的反馈。
3.  **精炼者 (Refiner)**: 利用此反馈来创建改进版的回答。

这个“生成 → 反馈 → 改进”的迭代循环可以重复多次，直到达到要求的质量或满足停止条件。

重要的是，Self-Refine 不需要额外的模型训练、微调或外部数据——整个过程完全通过推理阶段（*inference*）的提示词来控制<sup>[\[1\]](https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA#cite_note-madaan2023-1)</sup>。

## 实现机制

Self-Refine 方法通过一系列精心设计的提示词来实现，这些提示词引导模型的行为。

1.  **初始生成**。模型接收原始提示词并生成草稿回答。
2.  **创建反馈**。模型接收指令，分析其先前的回答并指出其中的缺陷。例如，它可能会指出回答不够详细或包含逻辑错误。最终结果是包含具体意见和建议的文本反馈。
3.  **迭代改进**。模型将原始请求、其初步回答以及生成的反馈作为新的提示词输入。基于这些信息，它会创建一个改进版的回答。

这个“批判→修正”的两步循环可以执行多次。每次新迭代的上下文中都包含之前的回答版本和评论，这有助于模型避免重复错误<sup>[\[2\]](https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA#cite_note-selfrefine_info-2)</sup>。为了控制模型的行为，通常会使用*few-shot prompting*技术，即在提示词中包含期望的反馈格式和修正示例。

## 效率与应用

Self-Refine 方法在一系列需要多次优化的任务中展示了其有效性，例如：

- 生成对话式回答。
- 创造性地续写故事。
- 通过分步推理解决数学问题。
- 优化程序代码。

在最初的研究中，通过 Self-Refine 获得的回答，在人类评估和自动度量指标中，平均比单步生成的结果要好**约20%**<sup>[\[1\]](https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA#cite_note-madaan2023-1)</sup>。即使是对于像GPT-4这样最先进的模型，也能实现性能提升，这表明即使是强大的 LLM，通常也只需增加一个反思步骤来纠正自身的错误。

类似的方法，如**RCI**（Recursive Criticism and Improvement），在交互式任务中也表现出高效，例如在计算机控制和逻辑问题解决方面。将 RCI 与“思维链”（Chain-of-Thought）技术相结合产生了协同效应，通过内置的自我检查步骤，显著提高了模型解决复杂问题的能力<sup>[\[3\]](https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA#cite_note-kim2023_rci-3)</sup>。

## 局限性与当前研究

尽管取得了令人鼓舞的成功，但研究表明，自我迭代改进存在一些局限性。

- **自我偏见 (self-bias)**: 模型很难公正地评判自己的回答。LLM倾向于正面看待自己生成的文本，而对其评估不够批判性，这可能导致经过几次迭代后质量停滞甚至下降<sup>[\[4\]](https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA#cite_note-huang2023-4)</sup>。
- **过度自信**: 有观察发现，随着自我修正迭代次数的增加，模型可能会对其回答变得过度自信，即使这些回答并未变得更准确。这会导致*预期校准误差 (Expected Calibration Error, ECE)* 指标的上升——即模型置信度与实际准确性之间的偏差<sup>[\[5\]](https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA#cite_note-zhu2025_calibration-5)</sup>。
- **计算成本**: 与单次生成相比，该方法需要多次调用 LLM 才能获得一个最终答案，这显著增加了延迟和成本。

当前的研究旨在解决这些问题。一个方向是在每次迭代步骤中引入置信度校准机制。另一个方向是利用外部信息源或工具（例如，执行代码、搜索数据）以进行更客观的自我评估<sup>[\[6\]](https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA#cite_note-beyond_accuracy_study-6)</sup>。

## 与其他技术的比较

- **思维链 (Chain-of-Thought, CoT)**: CoT 专注于生成线性的推理链以得出答案。而 Self-Refine 则专注于迭代改进已经生成的答案（该答案可能包含 CoT）。
- **思维树 (Tree of Thoughts, ToT)**: ToT 以树状结构探索多个并行的推理路径，而 Self-Refine 则是迭代地改进单一路径。ToT 是一种解决方案空间探索技术，而 Self-Refine 是一种优化特定解决方案的技术。

## 外部链接

- <a href="https://selfrefine.info/" class="external text" rel="nofollow">Self-Refine 项目官方网站</a>
- <a href="https://arxiv.org/abs/2303.17651" class="external text" rel="nofollow">原始研究论文《Self-Refine: Iterative Refinement with Self-Feedback》</a>

## 参考文献

- Madaan, A. et al. (2023). *Self-Refine: Iterative Refinement with Self-Feedback*. <a href="https://arxiv.org/abs/2303.17651" class="external text" rel="nofollow">arXiv:2303.17651</a>.
- Kim, G. et al. (2023). *Language Models Can Solve Computer Tasks*. <a href="https://arxiv.org/abs/2303.17491" class="external text" rel="nofollow">arXiv:2303.17491</a>.
- Gou, Z. et al. (2023). *CRITIC: Large Language Models Can Self-Correct with Tool-Interactive Critiquing*. <a href="https://arxiv.org/abs/2305.11738" class="external text" rel="nofollow">arXiv:2305.11738</a>.
- Huang, J. et al. (2023). *Large Language Models Cannot Self-Correct Reasoning Yet*. <a href="https://arxiv.org/abs/2310.01798" class="external text" rel="nofollow">arXiv:2310.01798</a>.
- Pan, L. et al. (2023). *Automatically Correcting Large Language Models: Surveying the Landscape of Diverse Self-Correction Strategies*. <a href="https://arxiv.org/abs/2308.03188" class="external text" rel="nofollow">arXiv:2308.03188</a>.
- Jiang, C. et al. (2024). *Importance Weighting Can Help Large Language Models Self-Improve*. <a href="https://arxiv.org/abs/2408.09849" class="external text" rel="nofollow">arXiv:2408.09849</a>.
- Liang, X. et al. (2024). *Internal Consistency and Self-Feedback in Large Language Models: A Survey*. <a href="https://arxiv.org/abs/2407.14507" class="external text" rel="nofollow">arXiv:2407.14507</a>.
- Zhu, D. et al. (2025). *Beyond Accuracy: The Role of Calibration in Self-Improving Large Language Models*. <a href="https://arxiv.org/abs/2504.02902" class="external text" rel="nofollow">arXiv:2504.02902</a>.
- Hao, Q. et al. (2025). *RL of Thoughts: Navigating LLM Reasoning with Inference-time Reinforcement Learning*. <a href="https://arxiv.org/abs/2505.14140" class="external text" rel="nofollow">arXiv:2505.14140</a>.
- Cui, Y. et al. (2023). *Check Your Facts and Try Again: Improving Large Language Models by Reducing Hallucination*. <a href="https://arxiv.org/abs/2302.12813" class="external text" rel="nofollow">arXiv:2302.12813</a>.
- Wei, Z. et al. (2024). *ReSearch: Iterative Self-Reflection for Better LLM Calibration*. <a href="https://arxiv.org/abs/2405.13022" class="external text" rel="nofollow">arXiv:2405.13022</a>.

## 注释

1.  <span id="cite_note-madaan2023-1">↑ <sup>[1.0](https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA#cite_ref-madaan2023_1-0)</sup> <sup>[1.1](https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA#cite_ref-madaan2023_1-1)</sup> <sup>[1.2](https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA#cite_ref-madaan2023_1-2)</sup> Madaan, Aman; et al. «Self-Refine: Iterative Refinement with Self-Feedback». *arXiv*. <a href="https://arxiv.org/abs/2303.17651" class="external autonumber" rel="nofollow">[1]</a></span>
2.  <span id="cite_note-selfrefine_info-2">[↑](https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA#cite_ref-selfrefine_info_2-0) «Self-Refine: Iterative Refinement with Self-Feedback». *项目官方网站*. <a href="https://selfrefine.info/" class="external autonumber" rel="nofollow">[2]</a></span>
3.  <span id="cite_note-kim2023_rci-3">[↑](https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA#cite_ref-kim2023_rci_3-0) Kim, Geunwoo; et al. «Language Models can Solve Computer Tasks». *arXiv*. <a href="https://arxiv.org/abs/2303.17491" class="external autonumber" rel="nofollow">[3]</a></span>
4.  <span id="cite_note-huang2023-4">[↑](https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA#cite_ref-huang2023_4-0) Huang, Jie; et al. «Large Language Models Cannot Self-Correct Reasoning Yet». *arXiv*. <a href="https://arxiv.org/abs/2310.08118" class="external autonumber" rel="nofollow">[4]</a></span>
5.  <span id="cite_note-zhu2025_calibration-5">[↑](https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA#cite_ref-zhu2025_calibration_5-0) Zhu, D., et al. (2025). «Beyond Accuracy: The Role of Calibration in Self-Improving Large Language Models». *arXiv*. <a href="https://arxiv.org/html/2504.02902v1" class="external autonumber" rel="nofollow">[5]</a></span>
6.  <span id="cite_note-beyond_accuracy_study-6">[↑](https://systems-analysis.info/int/Self-Refine_Prompting_%E2%80%94_%E8%87%AA%E6%88%91%E6%8F%90%E7%82%BC%E6%8F%90%E7%A4%BA#cite_ref-beyond_accuracy_study_6-0) «Beyond Accuracy: The Role of Calibration in Self-Improving Large Language Models». *arXiv*. <a href="https://arxiv.org/html/2504.02902v1" class="external autonumber" rel="nofollow">[6]</a></span>
