提示工程中的10个设计模式

我们可以将提示词定义为向大型语言模型(Large Language Model,LLM)提供的一个查询或一组指令,这些指令随后使模型能够维持一定程度的自定义或增强,以改进其功能并影响其输出。我们可以通过提供细节、规则和指导来引出更有针对性的输出,从而使提示词更加具体。提示词越具体,输出就越精确,关于提示工程的更多信息可以参考《解读提示工程(Prompt Engineering)》以及《Agent 应用于提示工程》。

而设计模式可以理解为对常见问题的通用可重复解决方案。每个设计模式绝不是一个可以直接应用于问题的完整解决方案,而是一个可以用来更好地构建应用最佳实践的解决方案的模板或框架。设计模式在面向对象编程领域应用广泛,在本文中,老码农尝试总结了提示工程中的10个常见设计模式。

3f1c8c26826249bb576656027960dd62.jpeg

1. 人物角色模式

人物角色模式是一种通过向语言模型注入特定的人格或说话的语气来实现。通过定义不同的角色,我们能够控制生成文本的风格和方式,以适应各种不同的应用场景。以下是一些示例:

  • 客户支持:在客户支持领域,一个友好、耐心的角色可能更有效地与客户进行沟通,解决问题并提供帮助。例如,当客户提出问题时,语言模型可以以礼貌和亲切的语气回应,并提供清晰明了的解决方案,从而增强客户满意度。

  • 故事讲述:在虚构故事或创意写作中,不同的角色可能需要具有不同的语气和情感表达。例如,一个幽默风趣的角色可能会使用幽默感和夸张来讲述故事,而一个严肃的角色可能会使用严肃和沉稳的语调。

  • 教育内容:在教育领域,语言模型可以扮演各种不同的角色,以更好地适应不同学习者的需求和学习风格。例如,对于儿童教育内容,模型可以采用轻松、活泼的语气来吸引他们的注意力,而对于专业技术课程,模型可以采用更正式、严谨的语气来传递知识。

通过人物角色模式,语言模型能够以更加灵活、个性化的方式生成文本,从而提高与用户的互动体验,并在各种应用场景中发挥更大的作用。

2. 食谱模式

类似于烹饪食谱,食谱模式提供了一种逐步指导大模型生成文本的方法。这种模式对于需要详细和连续指令的任务非常有价值,例如教程、过程文档或制作装配指南。以下是部分示例:

  • 教程:想象一下,正在写一篇教程文章,向读者介绍如何学会某项技能,比如学习编程或学习绘画。通过食谱模式,你可以提供清晰的步骤和指导,使读者能够逐步理解和实践所学内容,从而更容易地掌握新技能。

  • 过程文档:在工业生产或科学实验中,经常需要编写详细的过程文档,以记录和共享操作步骤。利用食谱模式,你可以逐步描述每个操作步骤,确保读者能够准确地重现操作过程,从而提高工作效率并减少错误发生的可能性。

  • 制作装配指南:在制造业中,制作装配指南对于工厂工人来说至关重要。你可以为每个装配步骤提供详细的说明,包括所需工具、材料和操作步骤,以确保产品能够正确组装并符合质量标准。

通过这种模式,大模型可以提供连贯性和结构性的文本输出,使读者能够轻松理解和实践其中的指导,从而在各种应用场景中实现更高效的工作和学习。

3. 反向查询模式

在反向查询模式中,大模型被要求以一种特殊的方式工作:首先,它接收一个输出或响应作为启动条件,然后被要求生成最适合的查询或输入,以产生特定的输出。这种技术不仅仅可以用于问答场景,还可以应用于各种其他情境中。以下是一些示例:

  • 智能助手:假设你正在与智能助手对话,你问了一个问题,但是你想深入了解更多相关信息。在这种情况下,反向查询模式可以应用。你的智能助手可以根据你的问题生成一个响应,然后询问你是否想了解更多相关内容,从而引出更深入的查询。

  • 搜索引擎优化:在网页内容创作中,反向查询模式可以用于优化搜索引擎结果。假设你是一个网站管理员,希望你的网站在特定的搜索查询中排名更高。你可以使用反向查询模式来创建内容,以确保网站在搜索引擎中出现在相关的查询结果中。

  • 个性化推荐系统:在电子商务或内容推荐领域,反向查询模式可以用于个性化推荐系统。系统可以根据用户的行为和偏好生成一些输出,然后根据这些输出生成相应的查询,以提供更加个性化和精准的推荐。

通过反向查询模式,大模型能够根据特定的输出生成相应的查询或输入,从而更好地满足用户的需求,并提高系统的性能和用户体验。

e97266d5219846145c09315f5bb3b8de.jpeg

4. 输出自动化模式

输出自动化模式是一种利用指示词来规范化大模型生成结构化或格式化输出的方式,以实现重复任务的自动化。举例来说,它可以用于以下情形:

  • 报告生成:在企业环境中,每天都需要生成销售报告。通过输出自动化模式,可以将销售数据输入到语言模型中,然后生成预定义格式的报告,省去了人工编写报告的时间和劳动。

  • 摘要生成:在学术研究中,需要从大量文献中提取信息并生成摘要。利用输出自动化模式,可以令大模型根据用户给定的关键词或主题自动生成文献摘要,极大地提高了处理大量文本的效率。

  • 响应生成:在客户服务领域,经常需要对客户的常见问题进行快速响应。通过输出自动化模式,可以根据问题的关键词或分类,让语言模型自动生成适当的响应,从而提高客户服务的效率和准确性。

  • 代码编写:对于开发人员来说,编写重复性代码是一种常见的任务。输出自动化模式可以被用来指示语言模型根据用户选择的首选编码语言自动生成代码段,从而加速开发过程并减少编码错误。

输出自动化模式特别是在涉及数据分析、内容生成和软件开发等领域中,它能够极大地提高工作效率和准确性。

5. 思维链模式

思维链(CoT)模式是一种指导大模型按照特定的推理或论证路径进行生成的技术。这种模式对于创作有说服力的文章、评论或者复杂的讨论非常有价值,因为逻辑流是构建其可信度和可理解性的关键要素。以下是一些示例:

  • 评论文章:在撰写评论文章时,必须确保论点的逻辑连贯性和严谨性。思维链模式可以指导语言模型按照辩论的逻辑结构生成论据、反驳和结论,从而使文章更具有说服力和逻辑性。

  • 科学论文:在科学领域,论文必须以科学推理为基础,确保实验结果和结论的可信度和可重复性。思维链模式可以帮助语言模型按照科学推理的逻辑链条,从问题陈述到实验设计再到结果分析,生成符合科学标准的论文。

  • 辩护词:在法律场景中,律师必须提供有力的辩护词以支持其客户。思维链模式可以引导语言模型按照法律逻辑生成辩护词,包括陈述事实、引用法律条文、提出论证和反驳对方观点,从而为案件提供强有力的辩护。

通过思维链模式,大模型可以按照逻辑思维的路径生成文本,使其更具有连贯性、说服力和可理解性,从而在各种领域中发挥重要作用。

6 图谱辅助模式

图谱辅助模式是一种利用已有知识来增强提示的方法,从而帮助大型语言模型生成更准确的输出结果。这种模式通过将知识图谱或领域专业知识与模型结合,以提供更多背景信息和上下文,从而改善模型的理解能力和输出质量。以下是部分示例:

  • 医学诊断:在医学领域,图谱辅助模式可以用于帮助语言模型更好地理解临床病例或医学报告。通过结合医学知识图谱和患者历史记录,模型可以生成更精准的诊断建议或治疗方案。

  • 智能客服:在客户服务领域,图谱辅助模式可以用于改善智能客服系统的响应质量。模型可以利用行业领域知识图谱,为客户提供更专业和准确的解决方案,从而提高客户满意度。

  • 法律咨询:在法律领域,图谱辅助模式可以帮助语言模型更好地理解法律文书或案件细节。通过整合法律知识图谱和案例法规,模型可以提供更精准的法律建议或法律分析,帮助律师和法律专业人士更好地处理案件。

通过图谱辅助模式,大模型可以利用丰富的知识资源来增强其输出的准确性和可靠性,从而在各种应用场景中发挥更大的作用。

4e37219932fdebba34718f03091864a6.jpeg

7. 事实检查模式

为了降低产生错误或误导信息的风险,事实检查模式促使大型语言模型根据可靠的外部来源或数据库验证其输出。这种模式鼓励大模型提供支持性证据来证明其答案的可信性,从而促进准确的结果。以下是一些示例:

  • 新闻报道:在新闻领域,事实检查模式可以帮助语言模型验证新闻事件的准确性。模型可以引用可信的新闻机构或官方消息来源,以支持其报道的事实,从而减少虚假信息的传播。

  • 学术论文:在学术写作中,事实检查模式可以确保语言模型引用了经过同行评审的研究或权威性数据,以支持其论述。这有助于确保论文的准确性和可信度。

  • 医学咨询:在医疗领域,事实检查模式可以帮助语言模型核实医学信息的准确性。模型可以引用权威的医学期刊或医学数据库,以支持其提供的医学建议或解释,从而降低误导性信息的风险。

通过事实检查模式,大模型可以提供更加可靠和准确的输出,从而增强其在各种应用场景中的可信度和实用性。

8. 反射模式

反射模式鼓励大模型以批判性的视角评估其生成的文本。这种模式促使大模型审视其输出中存在的潜在偏见或不确定性。以下是一些示例:

  • 社交媒体评论:在社交媒体上,语言模型可能被用于生成评论或回复。在反射模式下,模型应当反思其生成的评论是否存在歧视性言论或误导性信息,并尽可能避免这些问题。

  • 新闻报道:在新闻报道中,语言模型可能被用于撰写文章或提供评论。在反射模式下,模型应当审视其生成的内容是否准确、客观,并且是否有可能受到外部因素的影响。

  • 教育资料:在教育领域,语言模型可能被用于生成教育资料或解答问题。在反射模式下,模型应当考虑其生成的内容是否有益于学习,是否存在错误或者主观偏见,并且是否需要进一步的核查或修正。

通过反射模式,大模型可以更加自觉地评估其输出,避免不当的言论或误导性信息,并且提供更加负责任和可信的回答。

9.问题精炼模式

问题精炼模式是一种迭代方法,其中根据语言模型的反馈不断优化输入的查询或提示。通过分析模型对不同提示的响应,开发人员可以微调查询,从而提高模型的性能。以下是一些示例:

  • 搜索引擎优化:假设你是一个网站管理员,你想通过搜索引擎优化来提高你的网站在搜索结果中的排名。你可以使用问题精炼模式来不断优化你的搜索查询,根据语言模型的反馈调整关键词、语句结构等,以提高你的网站在搜索引擎中的可见性。

  • 语音助手:在语音助手应用中,用户可能会提出各种问题或指令。通过问题精炼模式,开发人员可以分析语言模型对不同查询的响应,然后调整用户界面或系统设置,以改善语音助手的准确性和响应速度。

  • 自然语言处理应用:在自然语言处理应用中,例如聊天机器人或智能客服系统,问题精炼模式可以用来不断优化模型的响应。开发人员可以通过分析模型对用户不同问题的回答,然后对模型进行微调,使其更加智能和适应性更强。

通过问题精炼模式,开发人员可以与语言模型进行交互,不断改进模型的性能和效果,从而提供更好的用户体验和更准确的结果。

68b6d5e0eb43db2db10959c52a04c7bd.jpeg

10.部分拒绝模式

有时,人工智能模型在面对复杂的查询时可能会回答“我不知道”或拒绝生成输出。为了更有效地处理这种情况,引入了“断路拒绝模式”。这种模式的目标是训练模型在面对困难或无法准确回答的情况下,能够提供有用的答复或部分答案,而不是直接拒绝。以下是一些示例:

  • 聊天机器人:当用户向聊天机器人提出一个超出其知识范围的问题时,传统的做法可能是简单地回答“我不知道”。然而,通过断路拒绝模式,聊天机器人可以尝试根据已有的信息或上下文提供相关的信息或建议,即使是部分答案也能为用户提供一些帮助。

  • 搜索引擎:当搜索引擎无法找到与用户查询完全匹配的结果时,通常会显示一条消息,说明未找到结果。然而,采用本模式,搜索引擎可以尝试根据用户查询的意图提供相关的内容,即使没有完整的答案,也能提供一些相关信息或指导。

  • 语音助手:在语音助手应用中,当用户提出一个超出语音助手知识范围的问题时,语音助手可以采用断路拒绝模式,尝试提供有用的提示或建议,以帮助用户更好地理解或解决问题,而不是简单地回答“我不知道”。

通过该模式,人工智能模型可以更加灵活和智能地处理复杂的情况,提高其适应性和用户体验。

没有结束

提示工程的设计模式是一种强大的工具,能够更好地发挥大模型的能力。本文介绍的这些模式可以帮助提高给定大模型的整体质量。通过利用这些模式,我们可以定制特定用例的输出,识别和纠正错误,并优化提示以获得更准确和更富有见地的响应。随着人工智能技术的不断发展和新模式的涌现,提示工程仍可能是创造更可靠和更智能的人工智能会话系统的关键因素之一。

【关联阅读】


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/301576.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

fakebook-攻防世界

题目 先目录扫描一下 dirseach 打开flag.php是空白的 访问robots.txt,访问user.php.bak <?php class UserInfo { public $name ""; public $age 0; public $blog ""; public function __construct($name, $age, $blog) { …

Day5-Hive的结构和优化、数据文件存储格式

Hive 窗口函数 案例 需求&#xff1a;连续三天登陆的用户数据 步骤&#xff1a; -- 建表 create table logins (username string,log_date string ) row format delimited fields terminated by ; -- 加载数据 load data local inpath /opt/hive_data/login into table log…

GitHub教程:最新如何从GitHub上下载文件(下载单个文件或者下载整个项目文件)之详细步骤讲解(图文教程)

&#x1f42f; GitHub教程&#xff1a;最新如何从GitHub上下载文件(下载单个文件或者下载整个项目文件)之详细步骤讲解(图文教程) &#x1f4c1; 文章目录 &#x1f42f; GitHub教程&#xff1a;最新如何从GitHub上下载文件(下载单个文件或者下载整个项目文件)之详细步骤讲解(图…

四、书城开发--1、书城首页的开发

书城开发需求分析&#xff1a; 书城首页有标题搜索->随机推荐->猜你喜欢->热门推荐->精选->分类推荐->全部分类->分类列表 还有搜索列表页、图书详情页 题外话&#xff0c;隔了几天时间去小捣了一下vue3的项目的时候改了一下node版本&#xff0c;结果导…

2024.4.8-day12-CSS 常用样式属性和字体图标

个人主页&#xff1a;学习前端的小z 个人专栏&#xff1a;HTML5和CSS3悦读 本专栏旨在分享记录每日学习的前端知识和学习笔记的归纳总结&#xff0c;欢迎大家在评论区交流讨论&#xff01; 文章目录 作业2024.4.8-学习笔记盒子阴影文本阴影透明的vertical-align字体使用 作业 &…

Linux网络编程二(TCP图解三次握手及四次挥手、TCP滑动窗口、MSS、TCP状态转换、多进程/多线程服务器实现)

文章目录 1、TCP三次握手(1) 第一次握手(2) 第二次握手(3) 第三次握手 2、TCP四次挥手(1) 一次挥手(2) 二次挥手(3) 三次挥手(4) 四次挥手 3、TCP滑动窗口4、TCP状态时序图5、多进程并发服务器6、多线程并发服务器 1、TCP三次握手 TCP三次握手(TCP three-way handshake)是TCP协…

UE4_动画基础_角色的缩放

以第三人称模板进行制作。 一、首先为角色缩放新建粒子效果 1、新建niagara system&#xff0c;重命名为NS_Shrink。 2、双击打开设置参数&#xff1a; 发射器重命名&#xff1a; Emitter State&#xff1a; 发射器一次喷发数量&#xff1a; 粒子初始大小&#xff0c;生命周…

DLDP简介

定义 设备链路检测协议DLDP&#xff08;Device Link Detection Protocol&#xff09;用来监控光纤或铜质双绞线&#xff08;例如超五类双绞线&#xff09;的链路状态。如果发现单向链路存在&#xff0c;DLDP协议会根据用户配置&#xff0c;自动关闭或通知用户手工关闭相关接口…

法向量估计

法向量估计 1. 求解点P法向量的原理2. 法向量估计的证明3. 为什么求点P的法向量&#xff0c;需要使用以P为中心的邻域内的点&#xff1f;4. 法向量估计的应用和思考5. 权重法向量估计 1. 求解点P法向量的原理 已知有一组点 P ( p 1 , p 2 , p 3 , . . . , p n ) , p i ∈ R 3…

基于Springboot+Vue实现前后端分离酒店管理系统

一、&#x1f680;选题背景介绍 &#x1f4da;推荐理由&#xff1a; 近几年来&#xff0c;随着各行各业计算机智能化管理的转型&#xff0c;以及人们经济实力的提升&#xff0c;人们对于酒店住宿的需求不断的提升&#xff0c;用户的增多导致酒店管理信息的不断增多&#xff0c;…

表单流程管理系统:推进数字化转型理想助手

在数字化转型新时代&#xff0c;谁拥有理想的软件平台助手&#xff0c;谁就能在流程化管理新进程中迈出坚实的步伐。面对激烈的市场竞争&#xff0c;低代码技术平台及表单流程管理系统正在广阔的市场环境中越扎越稳&#xff0c;成为助力企业数字化转型升级的重要利器设备。想要…

20240325-1-HMM

HMM 直观理解 马尔可夫链&#xff08;英语&#xff1a;Markov chain&#xff09;&#xff0c;又称离散时间马尔可夫链&#xff08;discrete-time Markov chain&#xff0c;缩写为DTMC&#xff09;&#xff0c;因俄国数学家安德烈马尔可夫&#xff08;俄语&#xff1a;Андре…

【退役之重学Java】pom文件没啥问题但报红

复制过来的pom文件&#xff0c;有几处版本号报红 刚开始以为是版本号的问题&#xff0c;但是按道理从大佬那里复制过来的&#xff0c;应该不会有问题&#xff0c;还是检查了一下&#xff1a; 把项目压缩发给师傅&#xff0c;师傅哪里没报错好吧&#xff0c;我已经猜到了为什么……

MS SQL Server STUFF 函数实战 统计记录行转为列显示

目录 范例运行环境 视图样本设计 数据统计要求 STUFF函数实现 小结 范例运行环境 操作系统&#xff1a; Windows Server 2019 DataCenter 数据库&#xff1a;Microsoft SQL Server 2016 视图样本设计 假设某一视图 [v_pj_rep1_lname_score] 可查询对某一被评价人的绩效…

基于Vue3 中后台管理系统框架

基于Vue3 中后台管理系统框架 文章目录 基于Vue3 中后台管理系统框架一、特点二、源码下载地址 一款开箱即用的 Vue 中后台管理系统框架&#xff0c;支持多款 UI 组件库&#xff0c;兼容PC、移动端。vue-admin, vue-element-admin, vue后台, 后台系统, 后台框架, 管理后台, 管理…

Jenkins 持续集成 【CICD】

持续集成 &#xff08;Continuous integration&#xff0c;简称CI&#xff09; 持续集成是一种开发实践&#xff0c;它倡导团队成员频繁的集成他们的工作&#xff0c;每次集成都通过自动化构建&#xff08;包括编译、构建、打包、部署、自动化测试&#xff09;来验证&#xff…

SpringBoot集成Skywalking链路追踪

安装skywaling 参考&#xff1a;Centos7搭建 SkyWalking 单机版-CSDN博客 下载Agents https://archive.apache.org/dist/skywalking/java-agent/9.0.0/apache-skywalking-java-agent-9.0.0.tgz 1. 在IDEA中使用skywalking agent 在VM options中填入如下信息 -javaagent后是…

[C++][算法基础]字符串统计(Trie树)

维护一个字符串集合&#xff0c;支持两种操作&#xff1a; I x 向集合中插入一个字符串 x&#xff1b;Q x 询问一个字符串在集合中出现了多少次。 共有 N 个操作&#xff0c;所有输入的字符串总长度不超过 &#xff0c;字符串仅包含小写英文字母。 输入格式 第一行包含整数…

Centos 7 安装通过yum安装google浏览器

在CentOS 7上使用yum安装Google Chrome浏览器稍微复杂一些&#xff0c;因为Chrome并不直接包含在默认的Yum仓库中。按照以下步骤来操作&#xff1a; 1、添加Google Chrome仓库 首先&#xff0c;您需要手动添加Google Chrome的Yum仓库。打开终端&#xff0c;并使用文本编辑器&a…

MySQL如何创建存储过程

工作中有时候需要自己去创建存储过程&#xff0c;然后调用存储去获得一些数据等&#xff0c;接下来就给大家介绍下MySQL如何创建存储过程。 语法&#xff1a; CREATE PROCEDURE 存储程名([[IN|OUT|INOUT] 参数名 数据类型[,[IN|OUT|INOUT] 参数名 数据类型…]]) [特性 …] 过…