当前位置: 首页 > news >正文

【LLM 论文】Self-Refine:使用 feedback 迭代修正 LLM 的 output

论文:Self-Refine: Iterative Refinement with Self-Feedback

⭐⭐⭐⭐

CMU, NeurIPS 2023, arXiv:2303.17651

Code: https://selfrefine.info/

论文速读

本文提出了 Self-Refine 的 prompt 策略,可以在无需额外训练的情况下,在下游任务上产生更好的效果。

该方法的直观 insight:我们在写一封 email 时,往往写出一个 draft,然后再修改其中措辞不当的地方,修改为更好的版本。

其思路如下图:

在这里插入图片描述

  • 首先,给定一个 input x x x,在 prompt p g e n p_{gen} pgen 下让 LLM 先生成一个初始 output y 0 y_0 y0
  • 进行迭代,每一轮 t t t 中:
    • Feedback:将 input x x x、上一轮 output y t y_t yt 和 prompt p f b p_{fb} pfb 给 LLM,得到这一轮的 feedback f b t fb_t fbt
    • Refine:将 input x x x、历史的所有 feedback 和 output、prompt p r e f i n e p_{refine} prefine 给 LLM,得到这一轮的 output t t + 1 t_{t+1} tt+1

如此迭代,直到 feedback 中被检查出有 stop 标识符,或者达到了最大迭代次数。

下面是一个使用 Self-Refine 来进行 code optimization 的示例:

在这里插入图片描述

总结

论文提出了 Self-Refine,核心就是反复迭代 Feedback 和 Refine 操作,从而让 LLM 在具体任务上有更好的表现。

论文在多个任务上进行了实验,发现 Self-Refine 可以有效地在各种任务上提升 LLM 的表现,当在较弱的小模型上则表现不佳(会重复输出)。

相关文章:

  • 微信小程序tabar属性
  • 使用 C# 和 OpenXML 读取大型 Excel 文件
  • vue3+vue-router+vite 实现动态路由
  • react动态渲染列表与函数式组件
  • 智能体实战:开发一个集成国内AI平台的GPTs,自媒体高效智能助手
  • 用网上抓取的天气的接口做了一个系统
  • php中闭包(Closure)的bindTo函数用法
  • 详细介绍MySQL的索引(下)
  • [深度学习] 自编码器Autoencoder
  • C++用Crow实现一个简单的Web程序,实现动态页面,向页面中输入数据并展示
  • 信息安全体系架构设计
  • 线程池666666
  • Linux 生产消费者模型
  • 力扣61. 旋转链表(java)
  • panda处理数据
  • 【Redis学习笔记】2018-06-28 redis命令源码学习1
  • 【干货分享】SpringCloud微服务架构分布式组件如何共享session对象
  • Brief introduction of how to 'Call, Apply and Bind'
  • conda常用的命令
  • egg(89)--egg之redis的发布和订阅
  • Java知识点总结(JDBC-连接步骤及CRUD)
  • JS题目及答案整理
  • leetcode-27. Remove Element
  • MobX
  • MySQL主从复制读写分离及奇怪的问题
  • Node 版本管理
  • Webpack 4 学习01(基础配置)
  • 阿里云应用高可用服务公测发布
  • 从PHP迁移至Golang - 基础篇
  • 搭建gitbook 和 访问权限认证
  • 对JS继承的一点思考
  • 对超线程几个不同角度的解释
  • 那些年我们用过的显示性能指标
  • 实战:基于Spring Boot快速开发RESTful风格API接口
  • 我看到的前端
  • 移动互联网+智能运营体系搭建=你家有金矿啊!
  • python最赚钱的4个方向,你最心动的是哪个?
  • 基于django的视频点播网站开发-step3-注册登录功能 ...
  • ​LeetCode解法汇总2583. 二叉树中的第 K 大层和
  • # 学号 2017-2018-20172309 《程序设计与数据结构》实验三报告
  • #QT(QCharts绘制曲线)
  • #stm32整理(一)flash读写
  • #微信小程序:微信小程序常见的配置传旨
  • $.ajax中的eval及dataType
  • ( 10 )MySQL中的外键
  • ()、[]、{}、(())、[[]]等各种括号的使用
  • (Repost) Getting Genode with TrustZone on the i.MX
  • (zhuan) 一些RL的文献(及笔记)
  • (二十三)Flask之高频面试点
  • (附源码)计算机毕业设计SSM疫情居家隔离服务系统
  • (简单) HDU 2612 Find a way,BFS。
  • . NET自动找可写目录
  • .apk文件,IIS不支持下载解决
  • .Net 8.0 新的变化
  • .Net组件程序设计之线程、并发管理(一)