概述
这很重要,因为模型通常可以在无需额外训练或人工反馈的情况下发现并纠正自己的错误。
深入探讨
Madaan 及其同事于 2023 年推出的 Self-Refine 运行相同的模型,扮演三个角色:生成者、批评者和修订者。首先,模型产生一个初始答案。然后,系统会提示对该答案提供具体的、可操作的反馈(例如,“此代码缺乏错误处理”或“此摘要错过了成本数字”)。最后,它使用该反馈重写答案。重复该循环,直到模型确定输出足够好或达到步长限制。至关重要的是,不需要额外的培训、奖励模型或外部工具,只需巧妙的提示即可。在代码优化、对话和情感重写等任务中,该循环比单次生成显着提高了质量。
现实世界的实施
通过使模型标记缺少边缘情况来改进生成的代码,然后重写函数来处理它们
通过自我批评的语气和清晰度完善电子邮件草稿或论文草稿,然后针对目标受众进行修改
通过检查每个步骤并纠正算术错误来优化数学或推理问题的答案
完善客户支持回复,使其直接解决用户的问题,而不是给出通用的回复
自我完善迭代输出改进的未来
Self-Refine 正在成为代理系统的构建模块,其中模型在采取行动之前迭代地起草、测试和修复代码或计划。期望与外部验证器(单元测试、计算器、搜索)更紧密地集成,因此批评是基于真实信号而不是模型的意见。研究正在探索自我批评何时有帮助,何时模型顽固地重复错误,以及自适应控制器来决定给定任务实际上需要多少轮细化来平衡质量与成本。
付诸实践
为什么这很重要
- 速度与规模. 语言工作流程可以在不牺牲一致性的情况下更快地移动。
- 交通与覆盖范围. 它扩展了跨语言和沟通方式的访问。
- 更清晰的判决. 团队可以花更多时间进行判断,而自动化则可以处理重复。
留意
- 幻觉的事实可以悄悄地进入报告、支持流程或研究成果。
- 及时的敏感性可能会在类似的请求中产生不一致的结果。
- 如果访问控制薄弱,敏感文本数据可能会暴露。
后续步骤
- 在推出之前定义输出格式、语气和质量标准。
- 当准确性很重要时,请使用可信来源进行地面响应。
- 为高风险输出保留人工审查检查点。
- 跟踪故障模式并定期重新训练提示或工作流程。
不断探索
常见问题
什么是“自我优化迭代输出改进”?
自我优化是一种提示技术,语言模型会批评自己的输出并重写它,循环直到答案得到改善。这很重要,因为模型通常可以发现并修复自己的错误,而无需任何额外的培训或人工反馈。
单个模型在 Self-Refine 循环中扮演哪三个角色?
Self-Refine 在三个提示角色中使用一种模型:生成草稿、对其进行批评,然后对其进行修改。
除了提示工作之外,自我精炼还需要什么?
Self-Refine 的一个决定性特征是它不需要额外的培训、奖励模型或人工反馈,只需要提示。
为什么在生成草稿的单独提示中生成反馈很有帮助?
在新的提示中进行批评鼓励客观评价,而不是使原始答案合理化。
什么样的反馈使得细化步骤最有效?
具体的、可操作的批评(例如“添加错误处理”)推动有针对性的编辑;模糊的反馈会产生模糊的修改。
什么时候自我精炼往往无法提高输出?
如果模型无法识别问题,它的自我批评就不会浮现出来,因此修订无法解决它。