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

一种全新且灵活的 Prompt 对齐优化技术

并非所有人都熟知如何与 LLM 进行高效交流。

一种方案是,人向模型对齐。 于是有了 「Prompt工程师」这一岗位,专门撰写适配 LLM 的 Prompt,从而让模型能够更好地生成内容。

而另一种更为有效的方案则是,让模型向人对齐。 这也是大模型研究中非常重要的问题,无论是 GPT 还是 Claude,在对齐技术上花费大量的时间与精力。但,随着模型规模变大,基于训练的对齐技术也需要耗费更大量的资源。

因此,我们提出另外的一种方案,即黑盒提示对齐优化技术(Black-box Prompt Optimization),通过优化用户指令,从输入角度对模型进行对齐。

图片

这种方法可以在不对 LLM 进行训练的情况下,大幅提升与人类偏好的对齐程度。

而且 BPO 可以被替换到各种模型上,包括开源模型和基于API的模型。

下面是我们做的一个简单评估:

图片

在 VicunaEval 上使用 GPT-4 进行自动评估,BPO 能够大幅提升 ChatGPT、Claude 等模型的人类偏好,并助力 llama2-13b 模型大幅超过 llama2-70b 的版本。

_论文:https://arxiv.org/abs/2311.04155
_

代码:https://github.com/thu-coai/BPO

技术交流群

建了技术答疑、交流群!想要进交流群、资料的同学,可以直接加微信号:mlc2060。加的时候备注一下:研究方向 +学校/公司+CSDN,即可。然后就可以拉你进群了。

前沿技术资讯、算法交流、求职内推、算法竞赛、面试交流(校招、社招、实习)等、与 10000+来自港科大、北大、清华、中科院、CMU、腾讯、百度等名校名企开发者互动交流~

方式①、添加微信号:mlc2060,备注:技术交流
方式②、微信搜索公众号:机器学习社区,后台回复:技术交流

在这里插入图片描述

一、方 法

BPO黑盒优化的目标是让模型更好地理解和满足人类的喜好。我们通过调整输入内容,使模型生成的输出更符合用户的期望。这个过程可以分为三个主要步骤:

图片

**1、反馈数据收集:**为了建模人类偏好,我们首先搜集了一系列带有反馈信号的开源指令微调数据集,并对这些数据经过精心筛选和过滤。

**2、构造提示优化对:**我们使用这些反馈数据来引导大型模型识别出用户偏好的特征。我们首先让模型分析用户喜欢的回复和不喜欢的回复,找出其中蕴含的人类偏好特征。接着,基于这些特征,我们再利用模型优化原始的用户输入,以期得到更符合用户喜好的模型输出。

**3、训练提示优化器:**经过步骤一和步骤二,我们得到了大量隐含人类偏好的提示对。利用这些提示对,我们训练一个相对较小的模型,从而构建提示偏好优化器。

最终,我们可以利用该提示优化器对用户指令进行优化,并应用在广泛的LLM上。

二、效 果

我们基于英文部分开源反馈数据集和 llama2-chat-7b 构建了 BPO 优化模型。

BPO对齐技术对 GPT-3.5-turbo 有22%的提升,对 GPT-4 有 10% 的提升。

图片

BPO 能够助力 llama2-13b 大幅超过 llama2-70b 版本的模型效果,并让 llama2-7b 版本的模型逼近比它大 10 倍的模型。

图片

在 vicuna-7b 和 vicuna-13b 上,使用 BPO 对齐的模型超过了常用的反馈学习方法—— PPO(Proximal Policy Optimization) 和 DPO(Direct Preference Optimization)的效果,并且能够和这些方法相结合进一步提升模型效果。

图片

此外,BPO还可以用于提升SFT数据的质量,帮助构建更高质量的SFT模型。

图片

三、研究者说

问:BPO 和反馈学习方法(PPO、DPO)以及 Prompt Engineering方法(如OPRO)的区别是什么?

答:与PPO和DPO相比,BPO最大的优势在于不需要训练原本的LLM,只需要额外训练一个较小的模型即可,并且我们的实验证明这两种技术是可以相结合的。

图片

与 OPRO 对比,BPO 最大的特点在于更加通用,OPRO 等现有的 Prompt Engineering 技术大多需要针对特定的数据进行搜索,并且会搜索得到一个针对特定任务的提示。因此,如果用户希望使用此类方法,需要针对每种任务准备相应的数据集。而 BPO 在训练得到提示优化器后,可以优化各种用户指令。

问:BPO能否针对一条指令进行迭代优化?

答:我们在 VicunaEval 数据上验证了迭代优化指令的效果,大约在第四轮时,优化后的指令对 ChatGPT 效果最好。

图片

问:BPO 究竟对用户指令做了怎样的优化?

答:我们在论文的第五小节总结了BPO的一些常见优化策略,包括:推理解释、完善用户问题、要点提示以及安全增强。

图片

图片

图片

图片


相关文章:

一种全新且灵活的 Prompt 对齐优化技术

并非所有人都熟知如何与 LLM 进行高效交流。 一种方案是,人向模型对齐。 于是有了 「Prompt工程师」这一岗位,专门撰写适配 LLM 的 Prompt,从而让模型能够更好地生成内容。 而另一种更为有效的方案则是,让模型向人对齐。 这也是…...

8:kotlin 类型检查和转换(Type checks and casts)

在运行时可以执行类型检查以检查对象的类型。类型转换将对象强制转换为不同的类型 is 和 !is 可以使用is或者!is来判断实例是不是指定的类型 fun main() {var obj : Any "cast"if (obj is String) {println(obj.length) // 4}obj 123if (obj !is String) { pr…...

命令模式 (Command Pattern)

定义 命令模式(Command Pattern)是一种行为型设计模式,它将一个请求封装为一个对象,从而允许用户使用不同的请求、队列或日志来参数化其他对象。命令模式也支持可撤销的操作。主要目的是将命令的发送者和接收者解耦,引…...

蓝桥杯官网练习题(奇怪的数列)

题目描述 从 X 星截获一份电码,是一些数字,如下: 13 1113 3113132113 1113122113 ⋯ YY 博士经彻夜研究,发现了规律: 第一行的数字随便是什么,以后每一行都是对上一行"读出来" 比如第 2…...

flink的异常concurrent.TimeoutException: Heartbeat of TaskManager with id的解决

背景 在使用flink进行集成测试时,我们会使用MiniClusterWithClientResource类,但是当我们断点导致在某个方法执行的时间比较长时,会有错误发生,那么该如何解决这个错误呢? 处理concurrent.TimeoutException: Heartbe…...

火电安全事故vr模拟仿真培训强交互更真实

VR消防,利用VR虚拟现实技术,将VR和消防教育融合在一起达到寓教于乐的效果, VR消防教育是对于家中、校园内、大型商场、公司办公室等情景产品研发的消防安全培训类VR系统软件,根据互动体验、互动、视角实际操作、视听觉系统多度自然…...

ELK企业级日志分析平台

目录 一、elasticsearch 1、集群部署 2、cerebro部署 3、elasticsearch-head插件部署 4、elasticsearch集群角色分类 二、logstash 1、部署 2、elasticsearch输出插件 3、file输入插件 4、file输出插件 5、syslog 插件 6、多行过滤插件 7、grok过滤 三、kibana数…...

.NET面试题1

1.什么是C#? C#(读作"C sharp")是一种通用的、面向对象的编程语言,由Microsoft开发。它是一种静态类型语言,支持强类型检查和面向对象编程(OOP)的概念。C#主要用于开发Windows应用程序…...

mongodb 日志详情

1 mongodb日志简介 MongoDB的日志包括两个主要部分:操作日志(oplog)和系统日志。 1.1 操作日志 操作日志(oplog)是一个特殊的集合,用于记录所有对数据库进行的操作(如插入、更新和删除&#x…...

Oracle中文显示???????解决办法

项目场景: Oracleoracle中文显示???解决办法 问题描述 原因分析: Oracle中文显示???通常是由于字符集不匹配或者编码问题导致的。当数据库中的数据使用的是某种字符集,而客户端或者应用程序使用的是另一种字符集时,就会出…...

Java查询数据放入word模板中并在前端导出下载

需求:查询数据放入word模板中并在前端导出下载 解决方法:在模板的位置定义参数如 {{name}} {{age}}等等,使用 poi 处理 伪代码: PostMapping("/practiceAppr")public AjaxResult practiceAppr(OutputStream outputSt…...

HarmonyOS ArkTS 应用添加弹窗(八)

概述 在我们日常使用应用的时候,可能会进行一些敏感的操作,比如删除联系人,这时候我们给应用添加弹窗来提示用户是否需要执行该操作,如下图所示: 弹窗是一种模态窗口,通常用来展示用户当前需要的或用户必须…...

排序算法-----快速排序(非递归实现)

目录 前言 快速排序 基本思路 非递归代码实现 算法分析 空间复杂度 时间复杂度 稳定性 前言 很久没跟新数据结构与算法这一栏了,因为数据结构与算法基本上都发布完了,哈哈,那今天我就把前面排序算法那一块的快速排序完善一下&#xff0…...

el-input限制输入整数等分析

文章目录 前言1、在 Vue 中,可以使用以下几种方式来限制 el-input 只能输入整数1.1 设置input 的 type为number1.2 使用inputmode1.3 使用自定义指令1.4 使用计算属性1.5 使用 onafterpaste ,onkeyup1.6 el-input-number 的precision属性 总结 前言 input 限制输入…...

医院手术麻醉信息系统全套源码,自主版权,支持二次开发

医院手术麻醉信息系统全套商业源码,自主版权,支持二次开发 手术麻醉信息系统是HIS产品的中的一个组成部分,主要应用于医院的麻醉科,属于电子病历类产品。医院麻醉监护的功能覆盖整个手术与麻醉的全过程,包括手术申请与…...

canvas扩展001:利用fabric绘制图形,可以平移,旋转,放缩

canvas可以使用Fabric.js来做扩展,您可以在画布上创建和填充对象; 诸如简单几何形状之类的对象 - 矩形、圆形、椭圆形、多边形或由数百或数千条简单路径组成的更复杂的形状。 然后,您可以使用鼠标缩放、移动和旋转这些对象; 修改它…...

什么是机器学习

前言 机器学习(Machine Learning, ML)是一个总称,用于解决由各位程序员自己基于 if-else 等规则开发算法而导致成本过高的问题,想要通过帮助机器 「发现」 它们 「自己」 解决问题的算法来解决 ,而不需要程序员将所有…...

电子桌牌如何赋能数字化会务?以深圳程序员节为例。

10月24日,由深圳市人民政府指导,深圳市工业和信息化局、龙华区人民政府、国家工业信息安全发展研究中心、中国软件行业协会联合主办的2023深圳中国1024程序员节开幕式暨主论坛活动在深圳龙华区启幕。以“领航鹏城发展,码动程序世界”为主题&a…...

打包和部署Java应用程序:Maven和Shell脚本的实用方法

在软件开发领域,高效打包和分发Java应用程序是至关重要的。本博客将探讨一种使用Maven插件和Shell脚本的简化方法,以创建一个分发包,其中包含了您项目的可执行JAR文件、配置文件和一个方便的启动脚本。 步骤1:Maven插件配置 旅程…...

Windows Python3安装salt模块失败处理

复现CVE-2020-11651时候运行CVE-2020-11651的poc时候需要salt模块 在下载时出现了错误 尝试在网上寻找解决方法: 1.更新 setuptools 和 wheel pip install --upgrade setuptools wheel 2. 安装Microsoft Visual C 14.0 因为salt模块包包使用了 C/C 扩展&#x…...

BlockTheSpot:3分钟实现Spotify无广告畅听的完整解决方案

BlockTheSpot:3分钟实现Spotify无广告畅听的完整解决方案 【免费下载链接】BlockTheSpot Video, audio & banner adblock/skip for Spotify 项目地址: https://gitcode.com/gh_mirrors/bl/BlockTheSpot BlockTheSpot是一款专为Windows平台设计的开源Spot…...

CitySim高精度无人机轨迹数据集:智能交通安全研究的全面验证平台

CitySim高精度无人机轨迹数据集:智能交通安全研究的全面验证平台 【免费下载链接】UCF-SST-CitySim1-Dataset Official github page of UCF SST CitySim Dataset 项目地址: https://gitcode.com/gh_mirrors/ucf/UCF-SST-CitySim-Dataset CitySim是一个基于无…...

【第3篇】Chatbox:它有几个 Cherry Studio 没有的独门绝技

系列导航:前两篇讲了 API 基础和 Cherry Studio,这篇说 Chatbox——它在程序员圈子里口碑极好,原因是它有几个 Cherry Studio 没有的独门绝技。一、Chatbox 是什么?如果把 Cherry Studio 比作 微信(界面友好&#xff0…...

CefFlashBrowser:Windows平台Flash内容兼容性解决方案技术指南

CefFlashBrowser:Windows平台Flash内容兼容性解决方案技术指南 【免费下载链接】CefFlashBrowser Flash浏览器 / Flash Browser 项目地址: https://gitcode.com/gh_mirrors/ce/CefFlashBrowser 随着Adobe停止对Flash Player的技术支持,大量基于Fl…...

如何彻底解决py-scrcpy-client安装中的Cython编译错误?

如何彻底解决py-scrcpy-client安装中的Cython编译错误? 【免费下载链接】py-scrcpy-client 项目地址: https://gitcode.com/gh_mirrors/py/py-scrcpy-client 在安装py-scrcpy-client项目时遇到Cython编译错误是许多开发者面临的技术障碍。这个基于Python的A…...

数据采集的烦恼?试试这个能“一键打包“五大平台的开源神器

数据采集的烦恼?试试这个能"一键打包"五大平台的开源神器 【免费下载链接】MediaCrawler-new 项目地址: https://gitcode.com/GitHub_Trending/me/MediaCrawler-new 你是不是也有过这样的经历?为了分析市场趋势,需要在小红…...

从UTC到Asia/Shanghai:一份给Java开发者的服务器时间配置与代码兼容性指南

从UTC到Asia/Shanghai:Java开发者必知的时间处理实战手册 当你在本地开发环境测试通过的代码,部署到服务器后突然发现所有时间记录都差了8小时——这种"时区漂移"现象是Java开发者最常见的部署陷阱之一。本文将带你深入理解时区问题的本质&…...

计算机网络期末考试之TCP的拥塞控制:从原理到实战的深度解析

计算机网络期末考试之TCP的拥塞控制:从原理到实战的深度解析作者:培风图南以星河揽胜 发布时间:2026-04-25 标签:#TCP #拥塞控制 #计算机网络 #期末复习 #CSDN博客 #网络协议 #拥塞避免 #慢启动 #AIMD前言:为什么TCP拥…...

围棋AI分析工具LizzieYzy:从入门到精通的终极指南

围棋AI分析工具LizzieYzy:从入门到精通的终极指南 【免费下载链接】lizzieyzy LizzieYzy - GUI for Game of Go 项目地址: https://gitcode.com/gh_mirrors/li/lizzieyzy 还在为围棋复盘找不到问题而烦恼吗?LizzieYzy可能是你正在寻找的完美解决方…...

手机号码定位神器:3步实现精准地理位置查询的终极指南

手机号码定位神器:3步实现精准地理位置查询的终极指南 【免费下载链接】location-to-phone-number This a project to search a location of a specified phone number, and locate the map to the phone number location. 项目地址: https://gitcode.com/gh_mirr…...