原文链接: https://mp.weixin.qq.com/s/3CmpCz2jrjGG2q44qMHf6g

本文收集并总结此文中prompt 优化技巧,从 prompt 运行过程探究一个优秀的 prompt应该如何写作。

Prompt的运行过程

1. 输入与终端捕获

当你把Prompt丢给模型时,系统就开始了第一步:解析你的“子台词”。无论是任务指令还是背景背景,模型都会将其视为一个待处理的原始信号,从而后续生成的边界。

Prompt 可以是:“写一篇关于气候变化的文章,包括其原因、影响和解决方案。”

2. 文本分拆与数字化编码

句子模型无法直接读取字符,因此需要进行Tokenization(分词)。将你的拆解成最小语义单元(Tokens),将其映射为一串Token ID。这些数字附加进入嵌入层,转化为高维空间的处理,让文字变成计算机能处理的数学特征。

3. 核心计算:Transformer架构的逻辑推演

这是模型“思考”的最深层,变压器神经网络中的数据经历了一系列复杂的化学反应:

  • 注入位置信息:由于模型本质上是零件的,它必须通过位置编码(位置编码)给每个Token标记“座次”,否则无法辨别语序带来的逻辑差异。
  • 激活自注意力机制(Self-Attention):这是最关键的一步。模型通过计算注意力权重(注意力权重),像雷达一样扫描全文,捕捉不同词汇间的细微联系(如代词指代、长句主谓联系),从而建立起全局理解。
  • 非线性表征提取:其次,前馈神经网络(前馈神经网络)对注意力的输出进行深刻变换机制,过滤杂讯并强化核心特征。
  • 多结构迭代:这种计算在多个 Transformer 层中反复进行,模型对提示的理解由浅入深,最终形成了一个极其复杂的语义表示。
  • 编码阶段:位置编码(Positional Encoding)被添加,以补充位置信息,因为自注意力机制本身不区分词汇的位置顺序。

4. 概率采样与迭代解密

理解完成后,模型进入解码(解码)阶段。其本质上是在做概率预测:根据当前的上下文,从词库中“抽取”下一个最可能的Token。

在这个阶段,模型可以采用贪心搜索(贪心搜索)以求稳健,或使用束搜索(束搜索)及其他随机抽样策略来增加文本的灵动性。每产生一个新词,都会将其反馈回序列中,循环往复。

5.输出精炼与格式规整

在最终交卷前,模型会进行后处理。

这包括检查生成的文本是否严格遵循了提示设定的字数限制或风格要求,明确排除可能出现的发音或格式硬伤,确保结果输出在逻辑和观感上都符合预期。

Prompt写作技巧

1. 一定要明确——目标和任务

清晰地阐述预期结果,严格叙述要求

明确的整体目标&Task,有目标时使用具体的词语和句子。

Eg: “请写一篇200字的文章,讨论气候变化对全球农业生产的影响,特别是对水资源管理和农作物产量的影响。”

2. 充分的上下文和背景信息

明确了任何必要的细节、限制条件和目标读者或用户群体。

方面:

  1. 角色和身份

  2. 依旧是具体目标和预期输出

  3. 相关历史和现状(之前的研究、项目进度或市场状况)

  4. 特定要求和条件

    字数限制、格式等明确的约束条件

  5. 明确的读者或受众 安排

    用以调整回答的复杂性和语言风格

以上结合举例:

假设你是一名城市规划师,正在为一个新兴城市设计一项公共交通系统。请撰写一份报告,评估当前已有的一些全球先进城市的交通系统,包括它们的优缺点和用户满意度情况。报告应包含对每个交通系统的详细分析,并提出适应你所在城市的建议

3. 衡量标准或考核维度

(1)明确、全面提供与目标和任务直接相关的衡量标准或考评维度。

(2)尽量一个目标对齐一个衡量标准,确保有评价依据。

(3)每个衡量准则都应该清晰完整地定义。

例子(来自原文)

任务描述:生成面试总结

👎请总结候选人的表现,说明其是否聪明、成熟、阳光。

说明:

  • 目标和任务对应性差:仅提供模糊的特质要求,没有明确的考评维度。
  • 维度不全面:考评维度缺乏细化,没有具体描述候选人每个特质的表现如何评估。
  • 衡量标准不完整:没有具体的衡量标准,容易导致主观性强,无法保证评估一致性。
  • 衡量标准不清晰:缺少明确的评分和评价细则,难以确保评估过程透明和公正。

👍 从三个人才特质(聪明、成熟、阳光)中提取相关内容,为候选人的面试表现生成摘要。

1.聪明(40分)

-会学习:评估候选人是否具有持续学习能力,是否能举一反三并学以致用。请提供具体实例并评分。

-有好奇:评估候选人是否保持好奇心,并在工作中不断探索新方法、新思路。请提供具体实例并评分。

-辩证思考:评估候选人是否能理解事物的本质和多样性,能否应对变化并有思考地决策和行动。请提供具体实例并评分

2.成熟(30分)

-略略略

3.阳光(30分)

-略略略

说明:

  • 目标和任务对应性高:明确考评维度与面试特质的关系,涵盖候选人的聪明、成熟和阳光等特质。
  • 维度全面且适用:各维度详细且适用于全面评估候选人的特质及综合能力。
  • 衡量标准完整:如会学习、有好奇、辩证思考、有自知、能共情、客观理性、有能量、够真诚和不抱怨等均有量化标准。
  • 衡量标准清晰且客观:明确的评分标准确保每个维度有具体的评估依据,确保评分过程透明和公正。

4. 明确的输入输出格式

给出输出模板,指定具体格式。

例如:

  • 文本格式(如长篇回答、摘要)
  • 结构化数据格式(如JSON、XML、CSV)
  • 编码数据格式(如源代码)
  • 模版:模板是一个预先定义的格式或结构,用于指导模型生成输出。

5. 给出明确的模型和示例

给出样本 one-shot 或 few-shot

示例一:

任务:基于以下描述生成一段产品评价,评价内容需要符合以下衡量标准:

- 准确性:评价的内容必须真实反映产品的特点,包括声音、舒适性和电池续航。

- 完整性:评价应包括产品的具体优点和缺点,例如音质、佩戴舒适度和电池续航等。

- 流畅性:评价必须语法正确,易于理解,且语言通顺。

样本

1
2
>输入:这款耳机音质非常好,但是佩戴时间长了耳朵会有些不舒服。电池续航也不错,能够支持一整天的使用。
>输出: -优点: 音质好,电池续航长 -缺点: 长时间佩戴后耳朵不舒服 -评价: 这款耳机的音质非常好,可以提供出色的听觉享受。另外,电池续航也很优秀,能够支持一整天的使用。不过,长时间佩戴可能会导致耳朵感到不适。

说明

  • 示例输出清晰地反映了输入中的产品特点,如音质好和电池续航长,同时也包括了舒适度欠佳的情况。无夸大或遗漏。
  • 示例输出详细提到了产品的具体优点和缺点,确保了评价的全面性。例如,强调了音质好和电池续航优秀,并指出佩戴长时间后耳朵不舒服。
  • 示例输出语法正确,结构清晰,语言通顺易懂。例如,综合句子连接自然,不显得生硬或断裂

示例二:

翻译任务:

  • 衡量标准:译文准确性、流畅性、语法正确性。
  • 样本关系:双语示例帮助模型掌握准确的翻译对,确保译文忠实且流畅。

6. 简洁直接

PROMPT应避免不必要的背景信息和复杂措辞,明确指令、内容精简、直达要点,明确任务要求以便模型能够迅速聚焦任务,准确生成内容。(直接说明所需要的,而不是说“不要……”,明确指令、内容精简、直达要点)

任务描述:《1984》的核心观点做个总结

反例:

我需要你帮我总结一下《1984》这本小说的主要内容和核心观点。请先介绍一下这本书的背景信息,包括写作年代和作者乔治·奥威尔的一些相关信息,然后再详细描述一下小说的主要剧情,包括但不限于故事发生的地点、时间,以及主要人物的关系和他们之间的主要冲突。除此之外,请重点分析小说的主题思想,并结合具体的情节进行阐述,尤其是要注意揭示极权主义、监控社会对人性的影响。你需要确保细节充分且分析到位,可以尽可能详尽一些。

说明:

  • 啰嗦:包含了多余的背景和具体的情节要求,信息量过大且有些不必要。
  • 不简洁:用词过于繁琐,任务分解过细,易使执行者陷入细节而忽略核心观点。
  • 容易误解:指令过于复杂,容易导致执行者在把握重点时出现偏差。

正例:

请总结《1984》的核心观点,尤其是其反对极权主义和监控社会的主题思想。

说明:

  • 简洁性:去除了冗长的描述,指令内容简明扼要。
  • 直接性:明确任务要求,聚焦于总结核心观点和主题思想。
  • 易执行:简洁明确的指令减少了误解的可能性,使执行者能够迅速聚焦任务。

7. 避免多义词、模糊短语

使用单一明确的词汇或加上具体的细节与上下文。

提供具体问题

反例: 解释这个问题

减少代词使用(明确指代对象)

- 例子:“他认为这样做不好。”(”他” 和 “这样做”的具体内容不明确。)

- 解决方法:具体指出代词指代的对象或动作。

- 优化后的描述:“约翰认为在雨天外出不好。”

8. 分步骤执行,层次化指导

将一个复杂任务分解成多个简单且明确的步骤,每一个步骤都被清晰地表述。

例如,在撰写一份研究报告时,将任务分解为选择主题、进行文献综述、设计研究方法、数据收集与分析、撰写报告等五个独立的步骤,使得每一步都有明确的目标和方法。

总体架构:引言->文献综述->研究方法->结果与讨论->结论与建议->参考文献

9. 充分考虑多种可能性和边界条件

可以设立纠错机制

考虑到可能出现的常见错误,并设置相应的检测和修正机制。

示例:

1
2
3
4
5
6
请提供地点和日期以查询天气情况。地点应包括城市或地区名称,日期格式为 yyyy-mm-dd。
1. 如果地点和日期格式不正确,请输出“输入格式错误,请重新输入。”
2. 如果地点不存在或无法识别,请输出“无法识别的地点,请检查您输入的地点名称。”
3. 如果日期是未来30天之后的时间,请输出“日期超出允许范围,请输入最近一个月的日期。”
4. 如果日期是过去的时间,请输出“日期是过去的时间,目前只支持查询未来的天气。”
注意:- 地点名称可以使用城市名或地区名,例如“纽约”或“东京”。- 日期必须符合 yyyy-mm-dd 格式。- 所有输出应友好、简洁,便于用户理解。

考虑语言和文化敏感性

  1. 使用中性语言。
  2. 考虑文化背景,避免对特定文化、族群、宗教或政治观点的偏见与歧视。
  3. 隐私保护。
  4. 避免冒犯性内容。

示例 Prompt 1:

1
2
3
“请描述中国新年的习俗。”
语言和文化敏感性:正面: 提供了一个特定文化背景下有意义的话题。改进空间: 需要确保所有文化背景的人理解何为“中国新年”。
伦理考虑:正面: 语言中性,没有冒犯性内容。改进空间: 若用户分享个人经验,需提醒其保护隐私。

内容约束

实例:撰写一篇关于气候变化影响的文章,必须包括至少三种应对策略。

说明:通过指定主题和信息点,可以确保生成内容集中且有深度地探讨特定问题。

实例:描述19世纪工业革命对英国经济的影响。

说明:适用于历史研究、时间序列分析等场景,确保内容准确反映特定历史时期。

格式约束

实例:生成一个包含引言、主体和结论三部分结构的技术报告。

说明:这种约束对文档或报告有特别的用处,使生成的内容便于阅读和分段。满足字数,长度的要求。

风格约束

实例:用幽默和轻松的语调撰写产品描述。

说明:适用于广告文案、博客文章等需要特定表达风格的场景,使内容更具吸引力。

实例:在生成的软件说明中,使用特定的编程术语。

说明:适用于技术文档或专业论文,确保内容精确且专业。