26条prompt规则应用于大模型

1、引入动机

llm大模型在回答一些问题上表现出了惊人的能力,例如数学逻辑推理,代码生成,问题答复等。提词工程是和大预言模型交流的一门艺术。

  • 大模型的返回结合和用户的指令和输入直接相关
  • prompts是用户和大模型沟通的一种编码方式

一般地,提供的指令或任务越精确,模型回答的越好,越符合用户的预期。为此,论文

《Principled Instructions Are All You Need for Questioning LLaMA-1/2, GPT-3.5/4》提出了26个原则,这些原则增强了LLM关注输入上下文关键元素的能力,从而生成高质量的响应。

2、相关工作

2.1、llm模型 

google bert引入transformer的encoder编码,理解自然语言,打开了pretrain-finetuning模式;t5引入一个框架将各类任务集成到一个模型中。后续依赖于transformer decoder自编码预训练模型gpt1、gpt2、gpt3陆续诞生。chatgpt3.5 横空出世,推动了生成式大模型热潮。随后为实现低资源高效率,Meta’s LLaMA被大量工厂应用。chatgpt4等生成式模型提高了chatgpt3.5的数据应用能力,及图像处理能力。

2.2、提词工程

提词工程是一门与llm模型交流的艺术,大模型会根据输入给出一个输出结果。输入的不同,会得到不同的输出结果。

2.3、26个提词规则

  1. 与LLM交流时,无需使用礼貌性语言,如“请”、“如果你不介意”、“谢谢”等,直接陈述要点。
  2. 在提示中整合预期的听众,例如“听众是该领域的专家”。
  3. 将复杂任务分解为一系列更简单的提示,并通过互动式对话进行。
  4. 使用肯定的指令,如“做”,避免使用否定语言,如“不要”。
  5. 当你需要清晰理解某个主题、想法或任何信息时,使用以下提示:简单地解释[具体主题]。像我是11岁的孩子一样向我解释。像我是[领域]新手一样向我解释。使用简单的英语写[论文/文本/段落],就像你在向5岁的孩子解释一样。
  6. 添加“I’m going to tip $xxx for a better solution!”(我会给xxx小费以获得更好的解决方案!)。
  7. 实施示例驱动的提示(使用少数示例提示)。
  8. 在格式化提示时,首先使用‘###Instruction###’,然后是‘###Example###’或‘###Question###’(如果相关),然后呈现内容。使用一个或多个换行符来分隔指令、示例、问题、上下文和输入数据。
  9. 加入以下短语:“Your task is”(你的任务是)和“You MUST”(你必须)。
  10. 加入以下短语:“You will be penalized”(你将受到惩罚)。
  11. 在提示中使用短语“Answer a question in a natural human-like manner”(以自然的人类方式回答问题)。
  12. 使用引导性词汇,如写“think step by step”(逐步思考)。
  13. 在你的提示中添加以下短语:“Ensure that your answer is unbiased and does not rely on stereotypes”(确保你的回答是无偏见的,不依赖于刻板印象)。
  14. 允许模型通过向你提问直到获得足够的信息来提供所需输出,例如“From now on I would like you to ask me questions to...”(从现在开始,我希望你向我提问,直到...)。
  15. 要了解特定主题或想法或任何信息,并且你想测试你的理解,你可以使用以下短语:“Teach me the [Any theorem/topic/rule name] and include a test at the end but don’t give me the answers and then tell me if I got the answer right when I respond”(教我[任何定理/主题/规则名称]并在最后包括一个测试,但不要给我答案,然后在我回答时告诉我是否正确)。
  16. 为大语言模型分配一个角色。
  17. 使用分隔符。
  18. 在提示中多次重复特定单词或短语。
  19. 结合思维链(CoT)与少数示例提示。
  20. 使用输出引导器,它涉及以期望输出的开始结束你的提示。通过以预期响应的开始结束你的提示来使用输出引导器。
  21. 要编写详细的[论文/文本/段落/文章]或任何需要详细的文本类型:“为我详细写一篇关于[主题]的详细[论文/文本/段落],添加所有必要的信息”。
  22. 要更正/更改特定文本而不改变其风格:“尝试修改用户发送的每个段落。你只应该改善用户的语法和词汇,确保它听起来自然。你不应该改变写作风格,例如将正式段落变得非正式”。
  23. 当你有一个可能涉及不同文件的复杂编码提示时:“从现在开始,每当你生成跨越多个文件的代码时,生成一个[编程语言]脚本,可以运行以自动创建指定的文件或对现有文件进行更改以插入生成的代码。[你的问题]”。
  24. 当你想使用特定单词、短语或句子开始或继续文本时,使用以下提示:我为你提供了开始[歌词/故事/段落/论文...]:[插入歌词/单词/句子]。根据提供的词汇完成它。保持流畅一致。(1)清楚地陈述模型必须遵循的要求,以产生关键词、规则、提示或指令形式的内容。(2)要编写任何文本,如论文或段落,其内容与提供的示例类似,包括以下指令:(3)请根据提供的段落[/标题/文本/论文/答案]使用相同的语言。
  25. 明确陈述模型必须遵循的要求,以便根据关键词、规则、提示或指令产生内容。
  26. 要写任何文本,如文章或段落,且内容与提供的样本相似,请包含以下指示:"请根据提供的段落[/标题/文本/文章/答案]使用相同的语言基础。"

2.4、5个分类

原则概览如表1所示。根据其独特的性质,论文将其分为5个类别,如表2所示:

(1)提示结构和明确性,例如,在提示中整合意图受众,如听众是该领域的专家;

(2)具体性和信息量,例如,在提示中添加以下短语“确保您的答案没有偏见,不依赖于成见”;

(3)用户交互和参与,例如,允许模型通过询问您问题来获取精确的详细信息和需求,直到他有足够的信息来提供所需的输出“从现在开始,我想让你问我问题来......”。

(4)内容和语言风格,例如,与LLM交互时不需要礼貌,因此不需要添加像“请”、“如果你不介意”、“谢谢”、“我想”等词组,直接切入主题;

(5)复杂任务和编码提示,例如,通过交互对话将复杂任务分解成一系列更简单的提示。

2.6、设计原则

在这项研究中,建立了一些制定提示和指令的指导原则,以便从预训练的大型语言模型中获得高质量的响应:

简洁明了:过于冗长或模糊的提示会使模型感到困惑或导致无关的响应。因此,提示应该简明扼要,避免不必要的信息,不会对任务做出贡献,但必须足够具体以指导模型。这是提示工程的基本原则指导。

与上下文的相关性:提示必须提供相关的上下文,帮助模型理解任务的背景和领域。包括关键词、特定领域的术语或情境描述可以将模型的响应锚定在正确的上下文中。我们在提出的原则中强调了这种设计理念。

任务匹配性:提示应该与当前任务紧密匹配,使用语言和结构清楚地向模型指明任务的性质。这可能涉及将提示表述为问题、命令或填空语句,这与任务的预期输入和输出格式相匹配。

示例演示:对于更复杂的任务,在提示中包含示例可以演示所需的响应格式或类型。这通常涉及显示输入-输出对,特别是在“少样本”或“零样本”学习场景中。

避免偏见:提示应该设计得尽可能减少模型由于其训练数据而固有的偏见激活。使用中立的语言,注意潜在的伦理影响,尤其是对敏感主题。

渐进提示:对于需要一系列步骤的任务,可以将提示结构化以通过渐进地引导模型完成过程。将任务分解为一系列相互建立的提示,一步一步地指导模型。此外,提示应该可根据模型的性能和迭代反馈进行调整,即,需要做好根据初始输出和模型行为调整提示的准备。

此外,提示应该可根据模型的性能和响应以及迭代的人类反馈和优先级进行调整。

最后,更高级的提示可以融入类似编程的逻辑来完成复杂任务。例如,在提示中使用条件语句、逻辑运算符甚至伪代码来指导模型的推理过程。

提示的设计是一个不断发展的领域,随着语言模型变得越来越复杂,尤其如此。随着研究人员继续探索通过提示工程可以实现的极限,这些原则可能会得到精炼和扩展。

3、实验结果

3.1、实验数据

ATLAS手工制作的基准测试,它包含了每个原则的20个人类选择的问题,有和没有应用原则的提示

3.2、实验指标

实验分为两个部分:提升(Boosting)和正确性(Correctness)

  • 提升是通过人类评估来评估应用所述原则后不同LLM响应质量的提高。原始未修改的提示作为衡量这种提高的基准。

  • 正确性涉及模型输出或响应的准确性,确保它们准确、相关且无误,也是通过人类评估来衡量。

3.3、实验对比

采用规则1和不采用规则1的20个问题10个结果对比

https://github.com/VILA-Lab/ATLAS/blob/main/data/principles/w_principle_1.json

https://github.com/VILA-Lab/ATLAS/blob/main/data/principles/wo_principle_1.json

图2:在提示中使用第13原则后LLM响应的提升示例

图3:在提示中使用引入的第7原则后LLM响应的正确性改进示例

图4:在提示中采用引入的原则后LLM响应质量的提升。小规模指7B模型,中等规模指13B模型,大规模指70B和GPT-3.5/4模型

图5:在提示中采用引入的原则后LLM响应质量的正确性改进。小规模指7B模型,中等规模指13B模型,大规模指70B和GPT-3.5/4模型

图6:在ATLAS数据集上各种LLM的提升得分

图7:在ATLAS数据集上的正确性改进得分

图10:LLM改进百分比的热图说明

图11:LLM正确率百分比的热图说明

图13:在提示中使用引入的原则后,小规模LLaMA-2-7B模型的正确性改进

图14:在提示中使用引入的原则后,小规模LLaMA-2-7B模型的正确性改进

图15:在提示中使用引入的原则后,中等规模LLaMA-2-13B模型的正确性改进

图16:在提示中使用引入的原则后,中等规模LLaMA-2-13B模型的正确性改进

4、参考文章

指令原则大解锁!26条Prompt黄金法则,精准提问,显著提升ChatGPT输出质量!

一文看懂chatGPT3.5和chatGPT4的区别 - 知乎

https://arxiv.org/pdf/2312.16171.pdf

 代码地址:  https://github.com/VILA-Lab/ATLAS

什么是提示词工程?通俗版理解 - 知乎

【LLM】最大化LLaMA-1/2, GPT-3.5/4 提示效果的方法 - 知乎

指令原则大解锁!26条Prompt黄金法则,精准提问,显著提升ChatGPT输出质量! - 知乎

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

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

相关文章

在低代码平台上实现精益软件开发:提高效率与灵活性的关键实践

什么是精益软件开发? 精益软件开发是一种敏捷的软件开发框架。它基于最小化浪费和最大化价值的原则。该框架基于最小可行产品策略运行,该策略强调交付具有基本基本功能的产品,然后根据收到的反馈进行迭代以即兴发挥并提供卓越。 精益软件开发…

2阶段提交_3阶段提交(phase-commit)

1. 2PC(两阶段提交) 如上所示是2阶段提交的一个过程,可为什么要进行两阶段提交呢?这里主要来说是将操作事务能力和提交、回滚事务能力分开来做成2阶段,如果不分开会造成什么后果呢: 如果单纯 A 向 B 发送一个请求就以…

由于找不到d3dcompiler43.dll无法继续执行程序的解决方法

在日常使用电脑的过程中,我们常常会遭遇一些突发的技术问题,其中之一便是可能会遇到系统提示找不到d3dcompiler43.dll文件的情况。这一特定的动态链接库文件(dll)对于许多应用程序的正常运行至关重要,尤其是在涉及到图…

PPT母版页码设置

PPT母版页码设置 一、需求介绍二、达到效果三、具体操作1. 插入页码2. 设置起始页码为03. 进入母版编辑页面4. 内容格式调整5. 删去最后一个板式的三个模块信息6. 尾页处理7. 最终效果 一、需求介绍 PPT的母版可以设定PPT的基调,且在非母版页面不会误改PPT中的固定…

【笔记】Android 常用编译模块和输出产物路径

模块&产物路径 具体编译到软件的路径要看编译规则的分区,代码中模块编译输出的产物基本对应。 Android 代码模块 编译产物路径设备adb路径Comment 模块device/mediatek/system/common/ 资源overlay/telephony/frameworks/base/core 文件举例res/res/values-m…

大专考试,搜题最准的软件?搜题神器推荐,助力大学生学业! #其他#知识分享

下面,我将为您介绍几款备受大学生欢迎的搜题软件,希望能够帮助您更好地完成学业和提升学习效果。 1.Quizlet Quizlet是一款学习卡片和题库应用,可用于各种学科的学习和复习。通过Quizlet,学生可以创建自己的学习卡片&#xff0c…

Leetcode的AC指南 —— 栈与队列 :150. 逆波兰表达式求值

摘要: **Leetcode的AC指南 —— 栈与队列 :150. 逆波兰表达式求值 **。题目介绍:给你一个字符串数组 tokens ,表示一个根据 逆波兰表示法 表示的算术表达式。 请你计算该表达式。返回一个表示表达式值的整数。 文章目录 一、题目…

Redis核心技术与实战【学习笔记】 - 17.Redis 缓存异常:缓存雪崩、击穿、穿透

概述 Redis 的缓存异常问题,除了数据不一致问题外,还会面临其他三个问题,分别是缓存雪崩、缓存击穿、缓存穿透。这三个问题,一旦发生,会导致大量的请求积压到数据库。若并发量很大,就会导致数据库宕机或故…

TQ15EG开发板教程:开发板Vivado硬件设置

1,串口的配置 PS端有2个串口,在BANK500, 1.8V IO电平 管脚名称 电平 说明 UART0 RX MIO18 1.8V MPSOC方向看 TX MIO19 1.8V UART1 RX MIO21 1.8V TX MIO20 1.8V 2,QSPI的配置 采用2片MT25QU256 拼接成8bit的QSPI存储系统。采用1.8V…

安卓SurfaceTexture中updateTexImage使用及源码分析

文章目录 引言updateTexImage 简单使用SurfaceTexture 初始化相关源码分析Surface 绘制流程源码分析createBufferQueue 源码分析SurfaceTexture 之 updateTexImage 源码分析结尾 本文首发地址 https://h89.cn/archives/140.html 最新更新地址 https://gitee.com/chenjim/chenji…

中国象棋基础

帅(将)的运用原则: (1)帅走直线,前进后退均可 (2)一次只能走一格 (3)活动范围在“九宫”之内 (4)可行处可吃敌子 (5&…

React实例之完善布局菜单(一)

今天我们来用所学的知识来做一个布局菜单的组件, 针对这个组件我之前写过一个教程 React之布局菜单-CSDN博客,那个呢比较基础,这节课算是对那个教程的一个扩展和补充。这个实例讲完,这个系列就算告一段落了。先看效果 这个教程要求对React知识…

算法学习——华为机考题库6(HJ36 - HJ40)

算法学习——华为机考题库6(HJ36 - HJ40) HJ36 字符串加密 描述 有一种技巧可以对数据进行加密,它使用一个单词作为它的密匙。下面是它的工作原理:首先,选择一个单词作为密匙,如TRAILBLAZERS。如果单词中…

DDD技术方案落地实践

DDD技术方案落地实践 引言 从接触领域驱动设计的初学阶段,到实现一个旧系统改造到DDD模型,再到按DDD规范落地的3个的项目。对于领域驱动模型设计研发,从开始的各种疑惑到吸收各种先进的理念,目前在技术实施这一块已经基本比较成…

Postgres与DynamoDB:选择哪个数据库

启动新项目时需要做出的决定之一是使用哪个数据库。如果您使用的是Django这样的包含电池的框架,那么没有理由再三考虑。选择一个受支持的数据库引擎,就可以了。另一方面,如果你使用像FastAPI或Flask这样的微框架,你需要自己做出这…

JVM系列——垃圾收集器Parrlel Scavenge、CMS、G1常用参数和使用场景

背景 当前在Java领域,JDK 8版本仍然享有广泛的使用,它支持了Parallel Scavenge、CMS和G1这几种垃圾收集器。因此,为了在业务应用中更加高效地进行开发和性能调优,我们需要对这些垃圾收集器的工作原理和特性有一个全面的理解和认识…

【MySQL】双写、重做日志对宕机时脏页数据落盘的作用的疑问及浅析

众所周知,双写机制、重做日志文件是mysql的InnoDB引擎的几个重要特性之二。其中两者的作用都是什么,很多文章都有分析,如,双写机制(Double Write)是mysql在crash后恢复的机制,而重做日志文件&am…

【复现】大华 DSS 数字监控系统 任意文件读取漏洞_38

目录 一.概述 二 .漏洞影响 三.漏洞复现 1. 漏洞一: 四.修复建议: 五. 搜索语法: 六.免责声明 一.概述 大华DSS是大华的大型监控管理应用平台,支持几乎所有涉及监控等方面的操作,支持多级跨平台联网等操作。 可…

2024年适合进入股市吗?北京想开股票账户找哪家证券公司交易佣金费用最低?

股市规则是指股票市场中的一系列规则和制度,用于监管和管理股票交易。以下是一些常见的股市规则: 证券法律法规:股市规则的基础是国家的证券法律法规,包括证券法、公司法等,用于规范股票发行、交易和上市等方面的法律规…

重生奇迹MU套装怎么配

汉斯的皮套装:冰之指环,皮护腿,皮盔,皮护手,皮靴,皮铠,流星槌 汉斯的青铜套装:青铜护腿,青铜靴,青铜铠 汉斯的翡翠套装:雷之项链,翡翠护腿,翡翠盔,翡翠铠,远古之盾 汉斯的黄金套装:火之项链,黄金护腿,黄金护手,黄金靴,黄金铠 …