Prompt Engineering技术大全
Prompt Engineering技术大全
什么是提示工程?
提示工程是一种构建指令系统的活动,在人工智能领域中尤其常见。具体来说,在这种系统中需要通过设计一系列指令来引导(提问或教导)智能体(如ChatGPT等语言模型)生成所需文本内容。这种系统设计不仅能够引导智能体执行指定任务的核心功能,还能够协助用户调控智能体输出结果以满足特定的应用场景和目标。
提示公式(prompt formular)
提示的特定格式,一般包含 3 个主要元素:
- 任务(task):一份清晰简洁的陈述旨在指示模型生成所需内容。
- 指令(instructions):当生成文本时,请确保遵循以下规则以指导模型操作。
- 角色(role):在此过程中,请明确角色并确保其符合指定的要求。
指令提示技术
指令提示技术的核心在于要求模型必须能够清晰具体地设定模型任务,并且严格按照指定的指令执行。
举例来说,在生成客户服务响应时需包含以下两个方面:针对客户的查询做出回应(task),回复需具备专业性且提供准确信息(instructions)。
【示例】
- 产出客户反馈: 任务:产出针对客户的反馈 ,指令要求回应应专业且信息需精确。提示公式:“根据上述指示,请针对客户的反馈作出专业且精确的回答。”
角色提示技术
通过向模型提供特定的角色指令(role prompting technique),能够引导 ChatGPT 输出符合预期的文本。根据上下文环境定制化处理后创建的内容。这一方法非常有效。要充分发挥这一技术的优势,则需明确指示model具备相应的知识背景。如需创建符合特定场景的服务回应,则应明确指示model具备相应的知识背景
【示例】
- 生成客户服务响应: 任务:生成对客户咨询的响应 ,角色:客户服务代表。 提示公式:“作为客户服务代表,生成对客户咨询的响应。”
- 生成法律文件: 任务:生成法律文件, 角色:律师。 提示公式:“作为律师,生成法律文件。”
使用【指令提示】、【种子词提示】的【角色提示技术】,将增强 ChatGPT 的输出。
【示例】
任务是为新型智能手机制定产品描述方案;指令要求产品描述需包含信息内容,并且具备说服力的同时还要突出手机的独特功能;角色明确为营销人员;种子词"创新"将贯穿整个内容;提示公式指出作为营销人员需按照指示完成产品描写工作并强调其创新特性
标准提示技术
标准提示信息是一种常见的预设配置参数,默认情况下会被激活以指导ChatGPT处理特定的任务设定
【示例】
撰写这篇新闻文章的摘要并完成这项任务要求。
零样本、单样本、小样本提示技术
零示例型、单示例型、小型示例型提示技术,在无示例情况下辅助 ChatGPT 输出文本内容。该类任务的适用场景包括数据资源匮乏的情况以及任务目标不够清晰的情形,并涉及新型且尚未有明确定义的任务领域。
要点:
- 当缺乏可用于任务(task)的训练范例时, 可采用零样本指导机制. 模型将设定一个泛任务空间, 并基于理解自动生成相应的文本内容.
- 当仅存在单个训练范例适用于任务时, 可采用一次性指导机制. 模型将与范例协同工作, 基于理解生成特定的任务实例.
- 当面临任务规模受限的情况时, 可采用小规模指导机制. 模型将与训练范例共同作用, 基于理解生成具体的任务案例.
“让我们想一下”提示技术
思考一下这个提示
要点:只需要在“让我们想一下”之后跟一个主题、问题。
【示例】
改写说明
要在 ChatGPT 中使用“让我们想一下”,需遵循以下步骤:
- 明确核心论点并进行规划。
- 制定提示时需要明确主题和想法,并启动对话以生成内容。
- 在提供提示之前,请您考虑一下或讨论一下以启动会话。
【示例】
- 提示:"请考虑气候变化对农业的影响如何?"
- 提示:"请探讨人工智能的发展状况如何?"
- 提示:"深入探讨远程工作带来的优势与挑战是什么?"
自洽提示技术
自洽性提示机制,通过 ChatGPT 的输出与输入保持一致,在事实核查、数据验证以及文本生成的过程中核对前后结果是否一致。
要点:在处理完输入内容后,请及时执行指令"请确保以下输出保持逻辑一致性或上下文的一致性"(即保持自洽);此外也可以向模型发出指令使其生成与当前输入保持一致性的输出(即自洽)。
【示例】
- 文本生成 :任务:生成产品评论 , 指令:审核过程需确保与提供的产品信息相符 。 提示公式:"生成与以下产品信息[插入产品信息]一致的产品评论"
- 文本摘要 :任务:总结一篇新闻文章 , 指令:摘要需包含文章提供的关键信息 。 提示公式:"以以下新闻文章[插入新闻文章]的关键点进行提炼"
- 文本补全 : 任务:补充完整一个句子 , 指令:补充内容需遵循输入中的上下文逻辑 。 提示公式:"请依据以下上下文[插入句子]的信息完成句子的后续表述"
- 事实核查 : 任务:验证新闻文章中的数据一致性 , 输入文本:"数据显示7月平均气温为30度 , 并记录最低气温为20度" 提示公式:"请确保以下数据描述自洽 :数据显示7月平均气温为30度 并记录最低气温为20度"
- 数据验证 : 任务:审查数据集中的数值一致性 , 输入文本:"数据显示7月平均气温为30度 , 最低气温记录为20度" 提示公式:"请审查以下数据集中的温度记录是否自洽 :数据显示7月平均气温为30度 并记录最低气温为20度"
种子词提示技术
种子词提示,提供特定种子词、短语,控制 ChatGPT 输出。
要点:种子词、种子词组,后面跟着指令“请根据以下种子词生成文本”。
【示例】
- 文本生成: 任务:生成一个关于龙的故事, 种子词:“龙”。 提示公式:“请根据以下种子词生成文本:龙”
- 语言翻译: 任务:将一个句子从英语翻译成西班牙语, 种子词:“你好”。 提示公式:“请根据以下种子词生成文本:你好”
通过结合角色提示与指令提示来引入种子词, 可以使模型生成的内容更具针对性与具体性, 并附加所需输出类型及相关信息, 从而使得模型生成的文本与其阐述能够与目标角色保持一致的风格及语气. 同时, 该功能也允许用户对生成的文本进行高度定制, 并广泛应用于各类应用场景.
【示例】
- 文本生成:任务:生成一首诗 , 指令:该诗应与种子词"爱"相关 , 并应以十四行诗的形式书写 , 角色:诗人 。提示公式:"以诗人身份创作与种子词'爱'相关的十四行诗"示例 。
- 文本补全:任务:补全一个句子 , 指令:补全内容应与种子词"科学"相关 , 书写形式应为研究论文 , 角色:研究员 。 提示公式:"以与种子词'科学'相关的写作风格作为研究人员论文的一部分 , 补全以下句子:"示例。
- 文本摘要: 任务:总结一篇新闻文章 , 指令:摘要应与种子词"政治"相关 , 以中立和公正的语气撰写 , 角色:记者 。 提示公式:"以记者的中立和公正的语气用与种子词'政治'相关的写作方式总结以下新闻文章:"示例。
知识生成提示技术
知识生成提示,用于从 ChatGPT 中获取新鲜且原始的信息。
要点:“请生成关于 X 的新的和原始的信息”,这里的 X 是感兴趣的主题。
这种技术,使用模型里预先存在的知识,用来生成新信息、回答问题。
为了在 ChatGPT 中实现知识生成提示的应用,在向模型提供问题或任务作为输入的同时,还需将问题与任务一并输入给模型以获取潜在答案。同时还需要考虑输出相关信息如所需输出文本类型及相关具体要求与限制。
【示例】
- 知识生成:任务:产出围绕特定主题的新信息, 指令:应确保所生成的信息准确且与指定主题高度相关. 提示公式:"产出关于[特定主题]的新且准确的信息".
- 问答:任务:解答一个问题, 指令:答案需精确且直接针对提出的问题. 提示公式:"解答以下问题:".
- 知识整合: 任务:整合新信息到现有的知识体系中, 指令:整合过程需准确且与主题紧密相关. 提示公式:"将以下信息整合到现有的关于[特定主题]的知识体系中".
- 数据分析: 任务:从给定的数据集中产出关于客户行为的新见解, 提示公式:"请从该数据集中产出关于客户行为的新见解".
知识整合提示技术
知识整合提示表明,在模型中利用已有的知识来整合新数据并建立不同知识模块之间的关联。
要点:输入新数据来源、已有数据基础;以及任务需求需包含明确的输出方向
【示例】
- 知识整合: 任务:将新信息与现有知识相结合 , 指令:结合现有的关于[特定主题]的知识,并融入新的信息 。提示公式:"结合现有的关于[特定主题]的知识,并融入新的信息"。
- 连接信息片段: 任务:将不同的信息片段进行有逻辑的连接 , 指令:连接应体现相关性和逻辑性 。提示公式:"利用新的关于[特定主题]的信息来更新现有知识"。
- 更新现有知识 :任务:用新信息更新现有知识 , 指令:利用新的关于[特定主题]的信息来更新现有知识 。 提示公式:"结合现有的关于[特定主题]的知识,并融入新的信息"
多项选择提示技术
多选提示项基于该模型构建了对应的问题/任务,并设置了一组预设的答案选项列表作为候选答案选项。
当生成仅限于一组特定选项的文本时,提供多选提示会非常有用,在例如问答系统、文本补全等场景下尤其常见;此外,在某些情况下,则可以通过预设选项列表来实现功能。
为了在 ChatGPT 中使用多项选择提示,请确保将问题、任务及预设选项一并告知模型,并附加相关输出指示。同时需附加相关输出指示以确保生成结果符合预期要求清晰明确的所有英文都不要改变数字和字母和字符和标点不能修改
【示例】
- 问答 :请根据预设选项回答相关问题 ,指令:回答应该是预定义的选项之一 。 提示公式:"通过选择以下"+["(A)"]+"|(B)|(C)"+"的回答以完成此操作。
- 文本补全: 请从预设"(A)"|"(B)"|"(C)"中的一个来补充下一个空白位置。
- 情感分析: 将给定文本归类为"(A)正向评价"| "(B)中间评价"| "(C)消极评价"的一种类型。
可解读软提示技术
清晰易懂的引导,在生成的过程中赋予模型一定的灵活性。通过这种技术手段向模型输入受控的数据集,并整合额外的信息源以提高其处理能力。采用这种方法能够实现更高的可控性和更好的可解释性。
【示例】
- 文本生成 :任务要求根据给定的角色和主题创建一个完整的故事。提示公式:"根据以下人物和主题生成故事:" [插入人物], 主题: [插入主题]".
- 文本补全 : 指令是按照指定作者的风格继续完善以下句子.
- 语言建模 : 要求编写一段模仿指定时期风格的文字, 内容需基于提供的情境背景.
受控生成提示技术
基于约束的提示指示了生成文本的输出特性,并且具备很强的控制能力。提供特定指令作为输入内容时,在模板文件中加入词汇表和一组约束条件,并将这些设定用于指导生成流程。
【示例】
- 文本生成 :任务:依据指定模板编写故事情节, 指令:故事应基于特定模板 。提示公式:"请依据下面提供的模板撰写故事情节:"。
- 文本补全: 任务: 补充下列空缺的部分, 指令: 补充时应使用特定的词汇. 提示公式:"请用单词'神秘'补充下面这个句子:".
- 语言建模 :任务:依据给定的语言规则创作文字, 指令:文本应遵循一组特定的语法规则 。提示公式:"请按照下面的语言规则创作一段文字:"。
答疑提示技术
交互提示用于解答特定查询并指导具体目标。输入问题、任务及相关信息以完成互动过程。
【示例】
- 定义 :任务是以明确的方式阐述一个术语的意义 , 指令:定义需准确无误 。 提示公式:"请详细解释以下术语的概念与意义:[插入术语]""。
- 信息检索 :任务是通过系统地收集与目标相关的数据来获取所需信息 , 指令:所收集的信息需与主题相关 。 提示公式:"从指定数据库中提取与[特定主题]相关的详细信息:" [插入数据库名称] ""。
- 回答事实: 任务是以清晰简洁的方式给出确切的事实答案 , 指令:答案需精确可信 。 提示公式:"请就以下具体情况进行准确描述与陈述" [插入具体问题] ""。
摘要提示技术
摘要提示,生成给定文本的较短版本,同时保留其主要思想和信息。
【示例】
- 文章摘要: 任务是对一篇新闻文章进行概括, 指令是提供对该文章核心内容的简明概述. 提示公式"请用一句话概括以下新闻文章的核心内容"则要求将整篇文章浓缩为一个简洁有力的表述.
- 会议记录: 任务是提炼出会议的主要决定和采取的具体行动, 指令是明确列出所有关键决策及其实施步骤. 提示公式"请通过列举所有主要决策并说明采取的具体行动来总结以下会议记录"则强调了结果导向而非过程描述.
- 书籍摘要: 任务是对一本书进行归纳, 指令是简明扼要地介绍其主要内容及结构安排. 提示公式"请通过归纳该书籍的主要主题和发展脉络来概述以下书籍"则突出了对整体框架的关注.
对话提示技术
对话提示的作用在于引导生成模拟两个或多个实体之间发生的互动文本。通过为模型设定背景信息,并设计一系列角色及其属性,在其基础上创建多个角色之间的交流场景描述,并指示模型在此情景下进行交流互动。
必须为模型准备好背景信息,并包括一组特定的字符和一组实体及其角色属性及背景信息。此外,该模型还需要返回相关信息如对话内容及其类型的具体需求与约束。
【示例】
- 对话生成: 任务是生产两个角色之间的对话
- 故事写作: 任务是在故事中生成对话
- 聊天机器人开发: 任务是为客户服务聊天机器人生成对话
- 对话生成、故事创作与聊天机器人开发并存时的技术。
对抗性提示技术
对抗性引导下生成的内容可具备抗干扰能力以抵御特定类型的信息干扰与认知偏差。经过训练的模型不仅更加稳定且具抵抗力还具备抗干扰能力以抵御特定类型的信息干扰与认知偏差。
应为模型增添提示的目的,在于使模型不容易生成与所需输出相符合的文字内容;同时也包含输出的文本类型以及任何特定要求或约束条件。
【示例】
- 文本分类的相关性指引 :任务是设计用于区分不同类别且容易被误判的任务 , 指令是指导这类问题应具备的特点 。 提示公式:"基于复杂背景但易受误判的任务"(此处对原始提示进行了优化)
- 情绪分析的相关性指引 : 问题设定是需要创建一个无法被情感分析模型准确识别的情绪样本 。 提示公式:"无法满足常规情感识别标准的情景"
- 语言翻译的相关性指引 : 设计目标是制造一种无法被机器理解或转换的语言现象 。 提示公式:"不具备通用可转换特征的语言场景"
聚类提示技术
聚类提示是一种基于特定特征或独特属性的方法,在分析大量数据时可将其划分为若干集群以实现分类功能。该方法通过将一组具有共同特征的数据实例划分为多个集群来实现分类功能,并以数据的某些特征或独特属性作为划分依据完成分类操作。这一技术在数据分析、机器学习以及自然语言处理等领域的应用均展现出显著的效果
如何接入 ChatGPT 模型:给定一批数据样本(文本类型),要求基于特定属性(情绪、主题等)进行分类处理。同时应指定必要的参数设置,并包括必要的约束条件和特殊要求。
【示例】
- 客户评论的聚类: 任务:将相似的客户评论分组在一起, 指令:应根据情绪对评论进行分组。提示公式:“根据情绪将以下客户评论分组:[插入评论]”
- 新闻文章的聚类: 任务:将相似的新闻文章分组在一起, 指令:文章应根据主题分组。 提示公式:“将以下新闻文章根据主题分组:[插入文章]”
- 科学论文的聚类: 任务:将相似的科学论文分组在一起, 指令:论文应按研究领域分组。 提示公式:“根据研究领域将以下科学论文分组:[插入论文]”
强化学习提示技术
强化学习中的提示信息能够帮助模型从历史行为数据中提取知识,在长时间运行的过程中持续提升其执行效率。
为了实现强化学习提示与 ChatGPT 的协同工作,在设计阶段需要预先设定一组输入指令及相应的奖励机制,在模型执行完特定任务后能够根据反馈调整策略。在设计阶段还应确保所有提示中应明确所需输出内容以及任何特定要求或约束条件等信息。
做决策、玩游戏、自然语言生成,用上它很巴适。
【示例】
- 文本生成的强化学习:通过强化学习机制生成符合特定风格的文字内容。
- 语言翻译的强化学习:利用强化学习技术实现不同语言之间的自动转换。
- 用于问答的强化学习:基于强化学习的方法输出准确且有深度的答案。
课程学习提示技术
课程学习过程中, 模型通过逐步提升训练难度的方式, 逐渐掌握复杂任务的技术. 在运用ChatGPT进行训练时, 需依次设计不同难度的任务序列以确保有效学习. 提示信息应明确指定输出目标, 如最终目标等关键要求. 自然语言处理、图像识别以及机器学习等领域所展现的技术表现尤为出色.
【示例】
- 用于文本生成的课程学习: 任务:生成与特定样式一致的文本, 指令:在转向更复杂的样式之前,应先对模型进行简单样式的训练。 提示公式:“使用课程学习按以下顺序[插入顺序]生成符合以下样式[插入样式]的文本”
- 用于语言翻译的课程学习: 任务:将文本从一种语言翻译成另一种语言, 指令:在转向更复杂的语言之前,应先对模型进行简单语言的训练。 提示公式:“使用课程学习按以下顺序[插入顺序]从以下语言[插入语言]翻译文本”
- 课程学习的问答: 任务:生成问题的答案, 指令:在转向更复杂的问题之前,应先对模型进行简单问题的训练。 提示公式:“使用课程学习按以下顺序[插入顺序]生成以下问题[插入问题]的答案”
情感分析提示技术
为了实现这一目标,请结合ChatGPT等工具进行情感分析研究与实践探索,在实际应用中可能会涉及以下几点:首先需要明确需要检测的情绪类型(如正面情感、负面情感等);其次还可以设置特定的情感强度阈值来指导分类结果
【示例】
- 客户评论的情感分析: 任务是分析客户评论的情绪状态 模型应根据情感强度将每条评论归类为正面 负面或中性 提示公式 "请根据情感强度对以下客户评论 [插入评论] 进行分析 并将其归类为正面 positive 负面 negative 或中性 neutral"。
- 推文(推特文字)的情感分析: 任务是评估推文的情感状态 模型应根据情感强度将每条推文归类为正面 positive 负面 negative 或中性 neutral 提示公式 "请根据情感强度对以下推文 [插入推文] 进行分析 并将其归类为正面 positive 负面 negative 或中性 neutral"。
- 产品评价的情感分析: 任务是评估产品评价的情感状态 模型应根据情感强度将每条产品评价归类为正面 positive 负面 negative 或中性 neutral 提示公式 "请根据情感强度对以下产品评价 [插入评价] 进行分析 并将其归类为正面 positive 负面 negative 或中性 neutral"。
命名实体识别提示技术
命名实体识别 (NER),该技术能够支持对文本中命名实体的识别与归类(例如人员、组织、位置、日期等)。在 ChatGPT 中应用时,请让模型处理一段输入文本,并指示模型进行NER任务。提示应当明确类型,并附加特定要求或限制条件以满足具体需求。
【示例】
- 新闻文章中的命名实体识别: 任务:识别和分类新闻文章中的命名实体 ,指令:该模型应当识别和分类人员、组织、地点、日期 。提示公式:“对下面的新闻文章[插入文章]进行命名实体识别,并对人员、组织、地点、日期,进行识别、分类。”
- 法律文件中的命名实体识别 :任务:识别和分类法律文件中的命名实体, 指令:该模型应当识别和分类人员、组织、地点、日期 。提示公式:“对以下法律文件[插入文件]进行命名实体识别,并对人员、组织、地点、日期,进行识别、分类。”
- 研究论文中的命名实体识别 :任务:识别和分类研究论文中的命名实体, 指令:该模型应当识别和分类人员、组织、地点、日期。 提示公式:“对以下研究论文[插入论文]进行命名实体识别,并对人员、组织、地点、日期,进行识别、分类。”
文本分类提示技术
该技术具备将文本划分为不同层级和类别的能力,并在自然语言处理、文本分析以及情感分析等领域具有广泛的应用价值。
为了在ChatGPT中实施文本分类提示, 需向模型发送一段待分类的文本内容, 并指示模型基于预先设定好的类别标签对输入进行分类处理. 同时还需要说明输出结果所需包含的具体信息, 例如具体的类别名称及其数量, 以及任何附加的要求或限制条件.
【示例】
- 客户评论的文本分类: 划分不同类别, 如电子产品, 衣服及家具, 指导模型基于评论内容对其进行分门别类
- 新闻文章的文本分类: 划分不同类别, 如体育赛事, 政治动态及娱乐新闻, 指导模型依据文章内容对其进行归类
- 电子邮件的文本分类: 划分不同类别, 如垃圾信箱, 重要电邮或紧急电邮, 指导模型依据内容与发件人信息将其区分为三类
文本生成提示技术
文本生成相关的提示策略,在书中涉及的各种提示方法之间具有关联性。例如零样本、单样本和小样本指导等方法之间存在密切联系,并且这些方法涵盖了从受控生成相关的指导策略到翻译导向型的技术方案等多种类型。
文本生成提示可用于微调预训练模型,或为特定任务训练新模型。
【示例】
- 故事写作的文本生成 :任务:根据给定的提示生成故事 ,指令:故事应至少 1000 字,包括一组特定的角色和情节 。提示公式:“根据以下提示[插入提示],生成一个至少1000字的故事,包括人物[插入人物]和情节[插入情节]。”
- 语言翻译的文本生成 :指令:将给定的文本翻译成另一种语言,说明:翻译应该准确和地道。提示公式:“将以下文本 [插入文本] 翻译成 [插入目标语言] 并确保它是准确和地道的。”
- 用于文本补全的文本生成: 任务:完成给定的文本, 指令:生成的文本应与输入文本连贯一致。 提示公式:“完成以下文字[插入文字],并确保与输入的文字连贯一致。”
标签:
