实用的Prompt工程技巧

 

 

在LLM领域中,prompt是指用于引导模型生成期望内容的输入文本。prompt可以是一个问题、一个主题、一段描述等等,它可以帮助模型理解用户的意图并生成相应的内容。在使用LLM进行内容生成时,prompt的选择和设计非常重要,因为它将直接影响生成内容的质量和准确性。

prompt engineering(提示工程):通过开发和优化prompt,帮助语言模型用于各种应用场景和研究领域。

 

写好prompt的一些具体原则总结:

(1)清晰的指令:足够清晰明确地向模型说明你的需求,避免模糊表达。

(2)提供上下文和例子:给出较为充分的上下文信息或者例子,让模型更好地理解相关背景和你的要求。

(3)善用符号和语法:使用清晰的标点符号、标记有助于模型理解意图,也可使输出更容易被解析。

(4)让模型一步一步地思考:在这种方法中,模型逐步进行思考,并给出涉及的步骤,这样做可以增强模型响应的可解释性和降低结果不准确的可能性。

(5)激励模型反思和给出思路:可以在prompt中用一些措辞激励模型给出理由,这样有助于我们更好地分析模型生成结果;思维过程的生成也有助于其生成更高质量的结果。

(6)给容错空间:若模型无法完成指定的任务,就给模型提供一个备用响应;例如针对文本提问,若无法提供答案则回复“无答案”。

(7)让模型给出信息来源:在模型结合搜索或者外部知识库时,要求模型提供其相应的信息来源,可以帮助LLM的响应减少捏造,并获取到最新的信息。

优质的prompt千变万化,但遵循上述规则,可以总结出一个比较实用的框架,可能可以帮助用户从LLM中收获更高质量的生成结果。包含如下内容:

system message:

你希望大模型扮演什么角色来解决你当前的问题。大模型具有较强的角色扮演能力,相比直接回答往往表现更好。system message中也可以规定大模型的回答范围。

prompt:

指令:明确说明你希望大模型做什么事情,不要含糊其辞。

例子:如果可能,提供尽可能丰富的例子信息。

原因:详细解释你希望模型做这件事情的原因、动机、希望的结果等,这样大模型能更好地理解你的想法,执行需求。

对于复杂任务,让大模型一步一步地思考,可以给出更加合理的答案。

对于输出格式的形容:对于部分场景,明确大模型输出格式的要求,可以更好地获取到更加结构化,适用系统调用的答案。

 

扩展

Search API + GPT

调用搜索接口得到结果,再让LLM对其结果进行归纳总结。

(New Bing 的设计思路 = Bing Search + GPT4)

Embedding Search + GPT

嵌入搜索加ChatGPT的模式非常适合做一个企业内部的Q&A机器人。因为这时企业的数据不需要全部上传到云端,也不需要去微调模型,既节省成本又保护(公司、用户)数据的隐私。

上面介绍的两种工具,一个具有联网能力的Search API,一个是具有本地数据的Embedding Search,都是GPT和某个特定的工具进行整合,那么模型是否可以同时和多个第三方工具进行整合呢?是否可以让模型自己去决定要在哪个步骤自动调用哪些工具呢?这就是今天要介绍的最后一个prompt技术,也是最神奇的,叫ReAct!

ReAct就是Reson(推理)+ Act(动作)

大致的思路是让模型进行推理。在推理过程中,自己决定要调用哪些外部工具,当调用外部工具后,再把结果告诉模型,然后继续推理下一步需要做什么,一步一步的直到把任务完成。

 

 

 

 

prompt学习文档:提示工程指南 | Prompt Engineering Guide (promptingguide.ai)

ChatGLM官方prompt教学文档:‌​‌​⁠‌​​⁠​​​‍‬​‬​​​​‌​​​‍​​⁠​‍​⁠‬‍​​‍‌​Prompt 工程实践教程 - 飞书云文档 (feishu.cn)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值