ExpertLLaMA:超越Vicuna,通过角色扮演增强指令,显著提升回答质量

news2024/11/20 12:41:51

4d927dd50c1cec5e976f1c69bf1daf3a.gif

本文向大家介绍我们刚刚开源的对话模型及相应的训练数据。

首先是 git Repo 和 paper 链接,欢迎大家给我们⭐star⭐

1041501fb327a54f21ff763781394ece.png

论文标题:

ExpertPrompting: Instructing Large Language Models to be Distinguished Experts

论文链接:

https://arxiv.org/abs/2305.14688

代码链接:

https://github.com/OFA-Sys/ExpertLLaMA

目前模型权重已经 Release,使用方法参考 Repo,线上 demo 地址为(Huggingface Space  CPU 运行,速度较慢,请见谅):

https://huggingface.co/spaces/OFA-Sys/expertllama

我们提出了 ExpertPrompting:一种提示方法,和与之相对应的 ExpertLLaMA:基于前者构造数据,训练得到的 ChatBot。


348a3d4fe5cdacfc0b2cc18966d83a71.png

ExpertPrompting

1803cea313de104389c8c5b03e994e75.png

▲ ExpertPrompting框架

ExpertPrompting 是一种简单、有效、自动化的 prompt 策略,分两步:

  • Step1: 使用上下文学习为指令设计一个 Expert 代理角色(Agent),对其进行详实、全面的描述

  • Step2: 将这一描述和原始指令拼接,对指令进行增强,即可获得更高质量的答案

示例如下图:

c3df1466b5620f8e146020f5374966f2.png

▲ ExpertPrompting的效果示意

0baa2eb75c65c19fbb0e66488842e7c7.png

ExpertLLaMA

数据生产:我们将 ExpertPrompting 方法应用到 GPT-3.5-Turbo,并直接复用了 Alpaca [3] 中的 52k 条指令,构造得到了 Expert Data 数据

模型训练:基于 Expert Data 数据,使用 LLaMA-7B [1] 训练得到对话模型 ExpertLLaMA。

自动评估:使用目前主流的 GPT4 自动评测方法,在 Vicuna80 测试集上对比了 ExpertLLaMA 和其他开源模型的性能。

实验结论:

仅使用 7B 的规模,ExpertLLaMA 就已经取得比 Vicuna 13B [5]、LLaMA-GPT4 [4] 更好的性能,且在具体分数上达到了相较于 ChatGPT(即 GPT-3.5)大约 96% 的能力(基于 GPT4+Vicuna80 自动评测基准)

ExpertLLaMA 使用更低的构建成本,实现了更强的性能:

  • 指令数据:ExpertLLaMA 使用的是和 Alpaca、LLaMA-GPT4 完全一致的通过 Self-Instruct [2] 自动构造的指令数据,而 Vicuna 使用了真实用户分享上传的指令。

  • LLM:ExpertLLaMA 使用的是成本显著低的 GPT3.5,相较于 LLaMA-GPT4 使用的是 GPT4。

  • ExpertLLaMA 也比开源模型 GPT4All [6] 成本显著更低,总共耗费了2*52k=100k次请求,而后者总共耗费了 1000k(1M)次请求。

d3a103a1b0185c2dad404cb92101283a.png

5c4c20fb1ad47a47df76feab8692205c.png

更多细节请 refer 我们的 paper,欢迎大家来给我们 star,谢谢~

9ce140686115e07da60d80196dce7b54.png

总结

本文介绍了我们的开源项目:

  • ExpertPrompting 作为一种简单、有效的 Instruction 增强方式,能够获得更好质量的答案

  • ExpertLLaMA 基于上述方法产出的数据构建得到,能够达到较强的对话能力

后续我们会尝试进一步探索,ExpertPrompting 这一自适应增强的思想,在更多场景下的有趣用法~

outside_default.png

参考文献

outside_default.png

[1] LLaMA: Open and Efficient Foundation Language Models. Hugo Touvron, Thibaut Lavril, Gautier Izacard, Xavier Martinet, Marie-Anne Lachaux, Timothée Lacroix, Baptiste Rozière, Naman Goyal, Eric Hambro, Faisal Azhar, Aurelien Rodriguez, Armand Joulin, Edouard Grave, Guillaume Lample.https://arxiv.org/abs/2302.13971v1

[2] Self-Instruct: Aligning Language Model with Self Generated Instructions. Yizhong Wang, Yeganeh Kordi, Swaroop Mishra, Alisa Liu, Noah A. Smith, Daniel Khashabi, Hannaneh Hajishirzi.https://arxiv.org/abs/2212.10560

[3] Taori R, Gulrajani I, Zhang T, et al. Stanford alpaca: An instruction-following llama model[J]. GitHub repository, 2023.

[4] Peng B, Li C, He P, et al. Instruction tuning with gpt-4[J]. arXiv preprint arXiv:2304.03277, 2023.

[5] Chiang W L, Li Z, Lin Z, et al. Vicuna: An open-source chatbot impressing gpt-4 with 90%* chatgpt quality[J]. 2023.

[6] GitHub - nomic-ai/gpt4all: gpt4all: an ecosystem of open-source chatbots trained on a massive collections of clean assistant data including code, stories and dialogue

更多阅读

8e5df2bbe9ec3cd0cec481e89f55cf93.png

e45fb3fff196ba9cafed7e9734188ccd.png

be20c4b4fc83beeae88b87745c478c64.png

a42de2885c1a189abc12f64b70307ef7.gif

#投 稿 通 道#

 让你的文字被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。

📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算

📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿

e097f1ddfb2e42eaccd5fb848debac45.png

△长按添加PaperWeekly小编

🔍

现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧

·

·

0417cbd721b0ca7472d75cd81690b82e.jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/640943.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

.Net7矢量化的性能优化

前言 矢量化是性能优化的重要技术,也是寄托硬件层面的优化技术。本篇来看下。文章来源:微软官方博客 概括 一:矢量化支持的问题: 矢量化的System.Runtime.Intrinsics.X86.Sse2.MoveMask 函数和矢量化的Vector128.Create().Extract…

get 、post请求 后台@RequestParam、@RequestBody 接收的方法集合

post、get请求 参数:数组、JSON对象、JSON字符串、地址栏 RequestParam、RequestBody 后端接收 //定义json对象,同时包含数组 var _queryData { jflb:"婚姻家庭纠纷",zlay:"xxxxx",ysCode:["0123","4567"]}…

机柜PDU与普通插座的区别,以及如何选择品牌专业PDU产品详解

PDU(Power Distribution Unit),是将来自UPS的输出电流分配到各个IT设备的末端配电设备,是连接供电等基础设施与IT系统、关联机房内所有设备正常运转的关键设备。作为机房用电安全的重要保障,PDU设备的稳定与安全直接关…

FPGA驱动FT601实现USB3.0相机HDMI视频采集 提供工程源码和QT上位机源码

目录 1、前言2、FT601芯片解读和时序分析FT601功能和硬件电路FT601读时序解读FT601写时序解读 3、我这儿的 FT601 USB3.0通信方案4、详细设计方案5、vivado工程详解6、上板调试验证7、福利:工程代码的获取 1、前言 目前USB3.0的实现方案很多,但就简单好…

我们来谈谈udp

"却还有那些洗礼,那几句问候,那份温柔~" 一、 常用的Linux命令 (1) netstat查看网络状态 netstat是一个用来查看网络状态的重要工具,可以携带很多选项。 n 拒绝显示别名,能显示数字的全部转化成数字. l 仅列出有在 Listen…

【unity之IMGUI】所以你还想在百度上搜IMGUI的底层原理是什么吗?

👨‍💻个人主页:元宇宙-秩沅 👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍💻 本文由 秩沅 原创 👨‍💻 收录于专栏:uni…

安装python详细步骤(超详细,保姆级,一步一图)

❄️作者介绍:奇妙的大歪❄️ 🎀个人名言:但行前路,不负韶华!🎀 🐽个人简介:云计算网络运维专业人员🐽 前言 作为一个实用学习的主义的学习者,最关心的问题一…

光亚展 | 移远通信Matter解决方案,照亮智能家居产业未来

6月9-12日,第二十八届广州国际照明展览会(光亚展)在中国进出口商品交易会展馆举行。本次展会以“光未来”为主题,整个照明、灯饰产业链的上下游企业、品牌在此汇聚,共同探讨照明行业未来的发展方向。 作为照明行业智能…

智见|黄铁军:未来的大模型生态中将会只有少数赢家

2023智源大会可谓群星璀璨。中外200余位人工智能顶级专家参会,人工智能领域最关键的人物、机构悉数亮相。 全面、专业、前沿,会场上大咖们观点激荡、多元碰撞,会场下观众们兴奋异常、座无虚席。 会上,北京智源人工智能研究院院长黄…

英语知识点-填空-考试酷

第一章 英语知识填空题 一、语法 1.词法:介词将关系建立在人/物A与人/物B,可能会形成修饰限制关系,有定语成分;介词将关系建立在事A与物B,可能有事A动作发生时环境因素,有状语成分;写作中经常用…

【Vue.js】1711- 深入浅出 Vue3 自定义指令

Vue.js[1] 提供了丰富的指令来简化开发者的工作。除了内置指令外,Vue.js 还支持自定义指令,开发者可以根据自己的需求扩展 Vue.js 的指令库。Vue.js 3.x 相较于 Vue.js 2.x 在自定义指令方面进行了一些改进,本文将介绍 Vue.js 3.x 中自定义指…

HLS 设计数字时钟

绪论 该项目的目标是展示 HLS 在设计数字系统方面的能力。为此,本文展示如何在 HLS 中描述数字时钟。如果有兴趣学习 HLS 编码技术,请参阅: ❝ https://highlevel-synthesis.com/ ❞ ❝ https://www.udemy.com/course/hls-combinational-circ…

2023 年的 5G 和网络安全风险

5G 网络的推出出奇地缓慢。作为一个概念,它于 2016 年推出,但直到 2019 年才在全球范围内推出。 四年后,在大多数国家地区,拥有 5G 设备的人数仍然很少。 不确定采用缓慢背后的原因是负担能力、缺乏必要性还是关于它的严重错误…

【redis】redis集群

这里是redis系列文章之《redis集群》,上一篇文章链接:【redis基础】哨兵_努力努力再努力mlx的博客-CSDN博客 目录 概念 作用 集群算法-分片-槽位slot 槽位与分配的概念及两者的优势 官网介绍分析 槽位 分片 两者的优势 slot槽位映射的三种解决方…

linux eventfd事件通知 比信号量更好用

专栏内容:linux下并发编程个人主页:我的主页座右铭:天行健,君子以自强不息;地势坤,君子以厚德载物. 目录 前言 概述 原理简介 使用场景 接口说明 头文件 参数说明 代码演示 默认参数 …

1740_使用Python+ImageMagick实现图像的批量压缩

全部学习汇总: GreyZhang/python_basic: My learning notes about python. (github.com) 前些年使用Linux的时候为了能够方便地往网络上上传照片,使用shell ImageMagick的组合进行照片的批量压缩一直觉得比较方便。不过,那时候即使这么简单的…

JMeter从入门到精通--开始你的第一个JMeter脚本

JMeter是一款在国外非常流行和受欢迎的开源性能测试工具,像LoadRunner 一样,它也提供了一个利用本地Proxy Server(代理服务器)来录制生成测试脚本的功能,但是这个功能并不好用。所以在本文中介绍一个更为常用的方法——…

软考A计划-2023系统架构师-知识点集锦(4/4)

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列 👉关于作者 专注于Android/Unity和各种游戏开发技巧&#xff…

redis的远程登录配置

目录 服务端: 客户端: 服务端: 步骤一:关闭防火墙 systemctl stop firewalld iptables -F setenforce 0 步骤二:配置/etc/redis.conf配置文件 vim /etc/redis.conf bind 127.0.0.1 改为 bind 0.0.0.0 (…

【图书推荐 | 13】前端系列

【赠书活动第十三期 】 图书推荐 本期书籍:前端系列 图书列表: Vue.js核心技术解析Nuxt.js实战Nuxt.js Web开发实战HTML5CSS 从入门到精通Flutter2 开发实例精解Electron项目开发实战 Vue.js核心技术解析 Nuxt.js实战 Nuxt.js Web开发实战 HTML5CSS 从入…