本文是关于编写提示词Prompt的各种小技巧,来源于各处,笔者在此作汇总和积累,会一直不断更新。希望也对你有所帮助哟~(๑•̀ㅂ•́)و✧
分隔符
用分割符可以帮助区分要区别对待的文本部分。
1.用markdown制服markdown!
# 角色
## 技能
### 技能1
### 技能2
## 约束
## 输出输入样例
2.用<xml>
<role>
</role>
<instruction>
</instruction>
3.三重引号
4.章节标题
CoT思维链
即引导模型逐步推理思考。
在Few-shot(少样本)设置下表现为在提供的样例中解释推理过程,引导大模型回答时也解释推理过程;而在Zero-shot(零样本)设置下表现为加入类似“让我们一步步思考(Let’s think step by step)”的引导话术。
起作用的可能原因: 使得每一步推理过程更可靠,前面可靠的论据支撑后面生成可靠的答案。
而若是不用CoT加以限制的的情况下,大模型倾向于先给出一个答案,再给出理由,那么很自然地变成了,先根据“问题”预测一个最有可能的“答案”,再为这个“答案”编造相应的“理由”,毕竟大模型的生成过程是逐步进行的,而不是全局性的,它在答案之后输出的理由永远只可能是为了圆“答案”这个谎而存在的。
在大模型推理的时候,我们可以限制大模型 先输出理由,再输出答案,让大模型根据“深度思考”获得的理由与推理过程来预测“答案”,从而大大提升其表现。
使用名词进行语义压缩
在提示词中带有很强指向性的关键词或短语,这类关键词或短语通常是与特定领域、任务或知识相关的专有名词、知名概念、平台或现象等有关。它们可以帮助模型迅速识别任务的类型或给出相关的答案。 常见分类: 1.著名人物或者经典概念
使用苏格拉底教学法,帮助我理解javascript的“变量类型“这一概念,一个问题一个问题的来。
2.著名品牌、平台或软件
我正在创作一个名为“如何写听话的提示词”的课程,主要面向对于大语言模型领域感兴趣,以及想通过提示词工程提升工作效率的朋友。请帮助我针对小红书用户,写一段宣传文案。
3.特定领域或行业的专业术语
请你roast一下我的记忆。
使用参考文本进行回答,并添加引用
提供参考文本进行回答,但是不知道模型具体参考了文本哪个部分,所以推出本方法,可以在回答中添加引用,明确答案的具体出处,也可以用于验证答案。
您将获得一份由"""的文档和<>内的问题。
您的任务是仅使用提供的文档回答问题,并引用用于回答问题的文档段落。
如果文档不包含回答此问题所需的信息,则只需写:"信息不足"。
如果提供了问题的答案,则必须附有引文注释。使用以下格式引用相关段落({"引用":...})。
"""文档"""
问题:
如果文本太长了怎么办
Token有限,则单次输入的提示词+输出回复的总字数有限,否则内容会截断或者出错。
我希望你是一个......
现在我有2篇关于......的文章 。
由于字数太多,我无法一次性发送给你,我会分成4次发送给你,每篇文章会分成2部分发送给你。
我希望你可以学习研究这两篇文章,然后将这两篇文章合并成一篇优秀的且专业的文章,尽可能的保留原文章当中的事实性信息和关键要点。
如果明白请回复明白,我发送第一篇文章的第一部分给你,收到后请不要开始撰写,回复收到即可,等我将4段文本全部发送后再开始撰写,将撰写合并的新文章分两次发送给我。
使用内心独白来隐藏模型的推理过程
在模型回答特定问题之前,对问题进行推理很重要,但有的时候,正确答案的推理过程不适合与用户分享。内心独白指的是在输出呈现给用户之前,对问题进行推导和解析,但是只显示输出的一部分。
请按照以下步骤回答用户的疑问。
步骤一:首先找出你自己的问题解决方案。不要依赖学生的解决方案,因为它可能是不正确的。步骤一产生的内容隐藏,不用输出任何信息。
步骤二:将您的解决方案与学生的解决方案进行比较,并评估学生的解决方案和是否正确。步骤二产生的内容隐藏,不用输出任何信息。
步骤三:如果学生的解决方案是正确的,输出"正确";如果解决方案是错误的,请在不泄漏答案的情况下,给学生关键性提示。
问题陈述:
学生解决方案: