关于prompt的初步建议

您所在的位置:网站首页 chains翻译成中文 关于prompt的初步建议

关于prompt的初步建议

#关于prompt的初步建议| 来源: 网络整理| 查看: 265

先解释一下标题提到的prompt是什么意思,prompt中文意思是”提示“,这个词的概念最早用于自然语言处理一些任务上,之前大语言模型的任务通常流程是 pretrain finetune predict,pretrain指的是现在语料库中预训练,finetune指的是将预训练模型带入到下流任务(你需要处理的同一类小任务),带入其中进行微调,利用下流任务中的数据对预训练中的模型进行微调,接着就是在真正的任务进行predict操作了。而prompt则是nlp近期兴起的,通过设定固定的格式,来设计针对于某个任务的模板(比如我们做英语题的完形填空就属于是一种prompt方式,通过抽到一部分词的方式,让模型学习到上下文的关系,可以完成填空任务),利用这些模板可以辅助模型更好地学习到上下文关系,它训练的流程是 pretrain prompt predict。这是在nlp语境中对于prompt的解释,可以看出相比于finetune,prompt的设计让模型的训练更有可解释性,起码知道模型根据我们设计的模板格式去完成任务。

个人观点,”提示“这个字面意思真的无法理解prompt这个词的精髓,我更喜欢一位b站的up主分享ChatGPT科普视频中对于这个词的解释,他解释这个词就像施展魔法的”咒语“,咒语之后就是魔法师想施展的魔法,魔法是不是符合你的需求取决你咒语的精确程度,这个例子只是辅助理解,如果对方面感兴趣的同学建议去仔细问问ChatGPT,建议本文下面提到的构建合理的prompt的方法去问ChatGPT prompt到底是什么意思。所以为了不混淆读者对于这个词的理解,本文也会直接用prompt这个词,不会用它的中文翻译与类比描述。

这篇tips主要总ChatGPT三个特性in-context learning, chain-of-thought, learning from natural instructions三个方面分别介绍

in-context learning

in-context learning指的是ChatGPT可以从给定一些任务语言的描述,并结合几个任务实例,作为模型的输入,可以让模型从给定的场景中学习新任务并得到满意的结果。这个特性在nlp也有一个概念 few-shot,意思是模型可以通过很少的样本学习到一个任务的需求。

1. 规范回答格式 对于有些需要固定回答格式的问题,可以给出几个有一定格式的例子,然后要求ChatGPT按照这个格式去回答问题

2.用例子去制造例子 这非常适合一些知识点的记忆,按照一定的模板去批量生成一些重要习题,只是需要注意生成内容的正误

Chain of Thought

这个方法的思想就类似于分治法,人类对于一些复杂的问题,直接让人说出来答案也是不现实的,需要将大问题划分成不同的子问题,一步一步解决;。所以让ChatGPT一步一步生成相应的文本,比直接让ChatGPT生成答案会更有帮助,所以ChatGPT刚发布的时候,在志哥的群里面,有群友吐槽 ChatGPT可以解决动态规划但算不对鸡兔同笼问题,现在想想其实很好理解,动态规划问题一般都需要一步一步解决,而网友如果直接问答案,它会跳过计算过程直接生成答案,很可能生成错误结果,但是现在版本的ChatGPT似乎已经给一些简单的计算问题默认加了chain of thought。

1.对于较为复杂的问题加入”Let's think step by step“或者”让我们一步一步回答这个问题“的prompt 至于为啥加了这句话就好使了,现在还没有准确的答案,有人猜测是ChatGPT在训练代码库的语料中学习到了分治法的思想,用这些思想去解决常用的问题会比较好使。

上面这个例子选取prompt教学网站,有趣的是网站上原本第一个问题的回答只是一个错误的答案,而现在将这个问题输入给ChatGPT,不仅得到了正确的答案还给了一定的推理过程,这也印证了我上文对于ChatGPT对于一些计算题默认加了chain of thought的猜测。

2.对于较为复杂的问题可以让ChatGPT划分成不同的子问题 有些问题希望自己独立思考出问题的答案,不太希望完全接受ChatGPT的生成答案,可以加上"在解决这个问题之前,需要解决哪些子问题?"的prompt。

Learning from natural instructions

ChatGPT的论文并没有开放出来,但是之前openai发布了instructGPT的论文,而在instructGPT的训练时,更注重于指令的训练,而ChatGPT中更注意聊天的语境的训练,但仍然保留了对于指令的回复能力。 ChatGPT这个特性可以发挥的空间就特别特别大了,怎么用取决于你的想象力了,这里我提供几个最常见的思路。

1.分配给ChatGPT有利于回答你问题的专家人设

2.要求文本按照一系列规则去生成 知乎上有人利用这条规则去,按照一定的指令的prompt直接根据相应的文本生成相应的思维导图针对指令的prompt教程

我最近也在用new bing 上用来自于chatpaper中会用到的prompt,挺好用的 ”请尝试用自己的话回答,不要联网搜索,你现在是一个强化学习领域的博士生,现在需要帮我按照下面的内容总结这篇文章:

先概述这篇文章提出了什么方法,利用了什么技术,实现了什么效果? 他们的方案相比过去的方案有哪些优势,解决了什么过去的方法解决不了的问题? 请结合method章节的内容,详细描述该方法的main procedure,关键变量请使用LaTeX展示。 请结合experiments章节,总结该方法在什么任务上,实现了什么性能?请列出具体的数值。 请结合conclusion章节,总结这个方法还存在什么问题?” 上面的prompt挺妙的,首先给new bing不要联网的需求,只用了new bing的ChatGPT生成的功能,接着利用了专家人设的指令,最后分别给出相关指令的问题。

未完待续,以上三个特性也可以通过自由组合组合成更多巧妙的prompt,后续想到再更



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3