ChatGPT Prompt 提示词设计技巧必知必会
本文内容整理自图灵社区直播《朱立成:ChatGPT Prompt提示词技巧必知必会》。
朱立成,图灵社区《ChatGPT即学即用》视频课程作者,软件工程师,对新事物充满好奇,关注ChatGPT应用。
2001年毕业于浙江大学,从事软件开发,参与或主持开发过PC外设驱动程序、数字法庭系统、电商平台等项目,有过创业经历,参与公司运营和管理。
在使用ChatGPT进行交互式对话时,设计一个好的提示词是非常重要的。
我们发送给ChatGPT的内容,称为prompt,中文名称叫提示词,一个优质的提示词可以让ChatGPT更好地理解你的需求,从而生成更符合你期望的结果。
一个优质提示词应该考虑以下几个要点:
1. 扮演的角色,即我们希望ChatGPT扮演的角色。
2. 用户身份,即自己的身份是什么。
3. 背景,这次提问或交谈的背景。
4. 输入数据,与提问或交谈有关的数据。
5. 任务或期望输出,也就是给ChatGPT下达的任务,或者说期望它输出什么结果。
6. 其他约束或特殊要求,我们希望ChatGPT在输出结果时,需要满足的特殊要求。
我们需要考虑以上这些要点,但并不是要包括所有要点。实际上大多数提示词,都只是包含这些要点的一个或者几个。
其中,第 5 点任务或期望输出是必须包含的。我们需要ChatGPT为我们提供帮助或解答问题,当然期望它输出一个结果给我们。
在设计提示词时,我们可以逐一考虑是否要包含上述要点,并根据我们的需求进行选择,从而让ChatGPT更好地理解我们的需求,设计出更符合我们期望结果的提示词。
我们来举一个例子,帮助你更好地理解上述要点。
提示词:
我是一名男性业余钢琴家,今晚要在一场婚礼上演奏,气温为20摄氏度,请帮我做一套形象设计,包括发型和鞋服。
这个提示词包含了2、3、4、5四个关键要点。
我是一个男性钢琴演奏师 – 用户身份
今晚要在一场婚礼上演奏 – 背景
气温为20摄氏度 – 输入数据
请帮我做一套形象设计,包括发型和鞋服– 期望输出
我个人倡导非必要的要点不需要添加,如果输出结果与用户身份无关,就不需要额外添加对于用户身份的说明。
这里加入用户身份,是为了使输出结果更加符合实际情况,加入婚礼的背景说明也是为了使形象设计符合目标场合。加入气温信息,是为了搭配合适的服装。
这里要不要给ChatGPT定义一个角色,假定它的身份是一个形象设计师呢?
不用!
在使用ChatGPT时,我们并不需要给它安排一个角色或头衔,因为这并不会影响到它的表现。即使你不给它安排一个角色,它也能根据提示词为你提供相应的结果。
网上大多数的提示词攻略,倾向于尽量给ChatGPT安排一个角色。例如形象设计师、作家或诗人等,但这并不是必要的。
那什么时候需要给它按头衔呢?
如果你需要模拟一个"两个人"的交互场景,就需要给ChatGPT安排一个头衔,让它扮演某个角色。
无招胜有招
既然我们说ChatGPT是人工智能,那我们就把它当成一个人来和它交互。这就是所谓的无招胜有招。
之所以所说的6个要点,是为了帮助我们设计一个优质提示词。当你理解了这6个要点,并最终找到了和ChatGPT交互的感觉,就可以不用再死记这些要点。
就好比武侠小说里所讲的,你必须先学习招式,把招式练熟并融会贯通,然后才是把招式忘记,做到无招胜有招。
我们来举个例子,如何把ChatGPT当一个人来交互。
假设你周末想去杭州玩,你想要一份旅游攻略,如果你向你的同学求助,是不是大概就是这么一个聊法?
你:这周末想去杭州玩一下,帮我规划一下啊,景点怎么安排,哪里有好吃的
友:好鸭,你什么时候来啊,准备玩几天啊
你:周五晚上到,周日晚上离开杭州
友:你有没有想过哪些特别想去的景点,其他的我帮你推荐一下啊
你:西湖肯定要去的,灵隐寺也想去一下,其他的你帮我推荐
友:你打算住在哪里
你:我打算住友好饭店
友:好的,了解了,我想想啊
……
所以,设计一个旅游攻略需要考虑到的因素,就是玩几天、哪些必玩的景点以及住在哪里。既然这样,那我们在向ChatGPT求助时,也把它当成一个人。把你的需求和必要的信息告诉它,让它帮你设计就可以了。
提示词:
我想去杭州旅游,周五晚上到达杭州,周日晚上6点乘坐高铁离开,我打算住在杭州友好饭店,我想坐一下西湖游船去三潭印月,还想去一下灵隐寺,其他景点请你推荐,请帮我设计一个攻略,包括行程和美食。
我们来看看它的回复:
这份还算马马虎虎的攻略还有改进的空间,但它已经提供了一些具体的建议,可以帮助我们更好地规划本次的旅游路线。
迭代式提问
迭代就是指在开发一个产品,或者解决一个问题的过程中,不追求一次达到完美,而是一轮一轮的推进,直到满意为止。
在使用ChatGPT时,我们可能无法预先给出所有的约束条件或输入条件。当ChatGPT给出的回复不完全符合我们的期望时,我们可以再次向它提出修改要求,通过迭代来获得最终满意的结果。
启发式提问
启发式提问是指,在提出一个灵活度较高的问题时,先通过一些问题打开ChatGPT的思路,再进行正式提问。这样可以启发ChatGPT更好地理解问题,提供更准确的答案。
例如在设计旅游攻略时,我们先让ChatGPT为我们介绍一些有名的景点,并提问它哪些是游人去得比较多的景点?最后我们再切入正题,把最想问的问题抛给它,让它设计旅游攻略。
启发式提问,就是要先打开它的思路,然后再问它问题,这样它给出的答案就会相对比较完美一点。
分解式提问
分解式提问就是当你需要ChatGPT生成一篇很长的内容时,最好把它分解成多个小的任务来分别提问。
比如,我们请ChatGPT帮我们写一篇演讲稿,可以先把题目告诉它,并让它引用一些例子,然后询问它打算将演讲稿分成几个部分来写。
根据它的回答,我们可以逐步让它完成每个部分的写作,并及时纠正有问题的段落,或让它对不够详细的段落进行分解和细化,从而最终得到准确、完整、符合我们需求的演讲稿。
分解式提问的好处在于,可以在正式写之前就检查整体思路是否有问题,写作过程中可以及时纠正错误,还可以发现需要进一步细化的内容,及时让它去进行分解细化。
关于提示词的几个注意点
1. 提出具体且明确的任务或输出
具体且明确的信息有助于 ChatGPT 更好地理解你的意图,并生成更准确和有意义的响应。
一个错误的示范是,请告诉我关于狗的知识。
这个问题没有具体的信息,不清楚要求ChatGPT提供狗的哪些知识,是品种知识还是喂养知识等,这样会让ChatGPT的回答模棱两可。
正确的提问应该是这样:
“请告诉我人类对狗的驯养历史方面的知识”或者“请告诉我金毛犬的生活习性以及喂养方面的知识”。
这样问就比较具体和明确了。
2. 确保输入的上下文清晰明了
比如说我和ChatGPT有一个持续的会话,在这个会话里,我跟它讨论一部正在写作的小说。当我需要它帮我续写一段的时候,就要交代我写到哪里了。
我已经写到了陈凡被疯道人追杀,落入了山崖,挂在一棵树上。请帮我写一段他在树后面发现一个山洞,并在其中获得武林秘籍如来神掌的详细过程,要加入适当的人物心理描写。
这里就把背景交代清楚了,上下文也很清晰。
3. 尽量提供简短、明了的输入
错误范例:
我们领导让我发一封我们公司新款智能手表的营销邮件,还剩1个小时就要下班了,我还没有想好邮件的标题,今天可能又要加班了,本来我还想去看电影的,看来是泡汤了,请你帮我拟定一个标题吧,强调手表的智能功能和优秀的设计。
这个范例使用了无关的关键词和语气,例如“领导”、“加班”、“电影”。这些关键词会干扰ChatGPT对我们真实意图的判断,从而生成不恰当的响应,搞不好它来安慰你,那就跑题了。
毕竟在这个使用场景里,我们用ChatGPT的意图是提高效率,而不是闲聊。
正确的提问应该是这样:
请帮我拟定一个关于我们公司新款智能手表的营销邮件标题,强调手表的智能功能和优秀的设计
这样的提示词干脆利落,简短明了。
更多详细内容,可见《ChatGPT即学即用》视频课程。
ChatGPT已经融入了我们的工作和生活,完全可以辅助我们的日常生活,我们一定要拥抱它。在《ChatGPT即学即用》这套教程里面,我也选取了比较有代表性的16个应用方向。
其中8个应用方向,对应着不同职业的人群,分别是自媒体博主、初创公司、企业营销部门、企业公关部门、作家、教育工作者、外语学习者、IT工作者。
每个应用方向里面,我都细化了多个小的应用场景示例,比如自媒体博主应用示例,我讲解了自媒体博主日常所涉及到的方方面面,如启发创作灵感、生成爆款标题、生成视频脚本、自动生成视频、生成短文笔记、生成较长的文章、生成封面图片。
再比如初创公司的应用示例,我讲解了如何利用ChatGPT协助进行市场调研、协助制定差异化竞争策略、、协助设计品牌元素、提供产品设计和工艺方面的建议、协助完善公司运营和管理、编写商业计划书等初创公司日常所涉及到的方方面面。
其他的我就不一一列举了,总之每个应用方向,我都尽量细化到日常所涉及到的方方面面了。
还有8个是Office办公的应用方向,是所有职场人士,以及自由职业者都通用的office办公技能,包括Excel、Word、PPT如何与ChatGPT搭配使用,分别是速查Excel公式、将ChatGPT接入Excel中、协助编写Excel宏代码、批量处理Excel文件、将ChatGPT接入Word中、批量处理Word文件、自动生成PPT文件、在线自动生成PPT文件。
每一个应用方向都精选了几个常见的实例,掌握了这一整套用法,Office办公效率能提高十倍以上,个别应用场景甚至能提升百倍的效率,打破你对常见做法的认知。
点击“阅读原文”,查看课程详情。
相关文章:
ChatGPT Prompt 提示词设计技巧必知必会
本文内容整理自图灵社区直播《朱立成:ChatGPT Prompt提示词技巧必知必会》。 朱立成,图灵社区《ChatGPT即学即用》视频课程作者,软件工程师,对新事物充满好奇,关注ChatGPT应用。2001年毕业于浙江大学,从事软…...
尚硅谷-云尚办公-项目复盘
尚硅谷-云尚办公-项目复盘 资料地址本文介绍问题汇总问题1.knife4j无法下载 视频4问题2.dev等含义 视频5问题3.wrapper继承/实现图 视频8问题4.修改统一返回结果 视频11问题5.修改后新增也变修改 视频29问题6.redis中key值乱码 视频55-60问题7.RangeError: Maximum call stack …...
nacos升级到2.0.3(单机模式)
前提:https://github.com/alibaba/spring-cloud-alibaba/wiki/版本说明 Spring Cloud AlibabaSpring CloudSpring BootNacos2.2.7.RELEASESpring Cloud Hoxton.SR122.3.12.RELEASE2.0.3 一、pom.xml文件 <parent><groupId>org.springframework.boot&…...
Koa学习3:用户添加、错误处理
模型 在src目录下创建model目录,用来存放模型 创建用户模型 user.model.js 注意: UUID类型是无法自增的,将id设置为UUID类型时只需要为其指定默认值即可 // 数据类型 const { DataTypes } require(sequelize); // 导入已经连接了数据库…...
网络安全入门学习第十五课——PHP基础
文章目录 一、WEB技术1、什么是web2、B/S架构3、C/S架构 二、PHP概述1、PHP是什么2、PHP受欢迎的原因3、基于MVC模式的PHP框架4、常用编译工具5、PHP环境搭建6、开发工具 三、PHP基本语法格式1、标记2、输出语句3、注释4、标识符 四、数据与运算1、常量1.1、常量定义1.2、预定义…...
电子科技大学 数学专业-功不唐捐,玉汝于成
电子科技大学 数学专业 功不唐捐,玉汝于成 1.本科背景 本科是坐落于湖南湘潭的湖南科技大学,专业为网络工程专业,因热爱数学专业,所以决定跨考数学专业。 本科专业课平均成绩85,排名10/104。CET 4 474分,…...
Android10.0 iptables用IOemNetd实现删除子链功能的实现
1.前言 在10.0的系统rom定制化开发中,在system中netd网络这块的产品需要中,会要求设置屏蔽ip地址之内的功能, liunx中iptables命令也是比较重要的,接下来就来在IOemNetd这块实现删除创建子链的相关功能 2. iptables用IOemNetd实现删除创建子链功能的实现的核心类 syste…...
OpenGL光照之光照贴图
文章目录 漫反射贴图镜面光贴图放射光贴图代码 每个物体都拥有自己独特的材质从而对光照做出不同的反应的方法。这样子能够很容易在一个光照的场景中给每个物体一个独特的外观,但是这仍不能对一个物体的视觉输出提供足够多的灵活性。 我们将整个物体的材质定义为一个…...
2018~2019 学年第二学期《信息安全》考试试题(B 卷)
北京信息科技大学 2018 ~2019 学年第 2 学期 《信息安全》课程期末考试试卷 B 课程所在学院:计算机学院 适用专业班级:计科 1601-06,重修 考试形式:(闭卷) 一. 选择题(本题满分 10 分,共含 10 道小题,每小题 1 分) 网络中存在的安全漏洞主…...
LeetCode-C#-0002.两数相加
0.声明 该题目来源于LeetCode 如有侵权,立马删除。 解法不唯一,如有新解法可一同讨论。 1.题目 0002两数相加 给你两个非空的链表,表示两个非负的整数,它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一…...
访问修饰符private,default,protected,public访问等级区别
private:private是最严格的访问修饰符,它将成员声明为私有的。私有成员只能在声明它们的类内部访问,其他类无法直接访问私有成员。这样可以确保数据的封装性和安全性。 default(默认):如果没有明确指定访问…...
阿里云(Linux)安装Docker教程
首先安装docker,需要找到帮助文档,那肯定是我们的官网: Install Docker Engine on CentOS | Docker Documentation 找到对应的位置,这里是安装在CentOS中,版本需要Ce…...
Linux C编程基础:获取时间
1.前言 对于linux下的编程,无论是用户态还是内核态,时间获取都是经常需要使用到的。以下分别从用户态和内核态整理了几个常用的时间获取接口,供编写代码时快速查阅。 2.用户态获取时间 2.1 clock_gettime() #include <time.h>int c…...
Spring核心注解
1、Bean注解 作用:用于把当前方法的返回值作为bean对象存入spring的ioc容器中位置: 一般出现在方法上面属性: name:用于指定bean的id。当不写时,默认值是当前方法的名称细节:当我们使用注解配置方法时,如果方法有参数,…...
哈希表原理,以及unordered_set/和unordered_map的封装和迭代器的实现
哈希表 unordered系列unordered_set和unordered_map的使用哈希哈希概念哈希冲突哈希函数闭散列开散列哈希表的扩容哈希表源码(开散列和闭散列) 封装unordered_set/和unordered_map,以及实现迭代器节点定义unordered_set定义unordered_map定义…...
如何把歌曲里的伴奏音乐提取出来,分享几个方法给大家!
对于一首歌,我们都知道,它有两部分组成:背景音乐人声。这两者合在一起,便是我们经常听的歌。部分用户想要直接获取歌曲伴奏,那么可以在UU伴奏网上下载。 操作方法比较简单,直接搜索想要的歌曲名称就可以了…...
区块链产业快速发展 和数集团开启区块链应用新时代
UTONMOS区块链游戏要来了。 就在5月底,UTONMOS品牌所属公司上海和数集团在泰国发布了【神念无界】系列的多款国际版链游,包括【神念无界-源起山海】、【北荒传奇】、【神宠岛】、【神农园】等区块链游戏。 以【神念无界-源起山海】为例,其是…...
初出茅庐的小李博客之常见字符串函数使用
C语言字符数组与字符串数组 在C语言中,字符数组和字符串数组实际上是同一种类型。字符串是由字符组成的字符数组,通常以空字符 ‘\0’ 结尾。C语言中的字符串是一种常见的数据类型。我们可以通过两种方式定义字符数组跟字符串数组 char charArray[10];…...
运筹学工程化流程和常见的运筹学算法分类以及常见软件
文章目录 前言运筹学工程化流程运筹学算法分类运筹学软件参考文献 前言 自2023年初新冠疫情管控放开后,各家公司各类岗位的人员都有被裁的消息传出,但用人市场上运筹学算法岗位却反其道行之,用工出现了激增。可以预见的是数据算法将从传统的…...
JAVA面向对象(三)
第三章 封装与继承 目录 第三章 封装与继承 1.1.封装 1.2.包 1.3.访问权限控制 1.4.static修饰符 1.4.1.成员变量 1.4.2.成员方法 1.4.3.代码块 总结 内容仅供学习交流,如有问题请留言或私信!!!!࿰…...
前端面试题---跨域处理和异常、错误处理
一.跨域处理 在前端开发中,当我们在浏览器中向不同域名或端口发起请求时,就会遇到跨域请求的限制。为了处理跨域请求,有几种常见的方法 1.JSONP(JSON with Padding) JSONP是一种利用 <script> 标签可以跨域加载…...
网络安全之反序列化漏洞分析
简介 FastJson 是 alibaba 的一款开源 JSON 解析库,可用于将 Java 对象转换为其 JSON 表示形式,也可以用于将 JSON 字符串转换为等效的 Java 对象分别通过toJSONString和parseObject/parse来实现序列化和反序列化。 使用 对于序列化的方法toJSONStrin…...
19 贝叶斯线性回归
文章目录 19 贝叶斯线性回归19.1 频率派线性回归19.2 Bayesian Method19.2.1 Inference问题19.2.2 Prediction问题 19 贝叶斯线性回归 19.1 频率派线性回归 数据与模型: 样本: { ( x i , y i ) } i 1 N , x i ∈ R p , y i ∈ R p {\lbrace (x_i, y_…...
第七十天学习记录:高等数学:微分(宋浩板书)
微分的定义 基本微分公式与法则 复合函数的微分 微分的几何意义 微分在近似计算中应用 sin(xy) sin(x)cos(y) cos(x)sin(y)可以用三角形的几何图形来进行证明。 假设在一个单位圆上,点A(x,y)的坐标为(x,y),点B(x’, y’)的坐标为(x’, y’)。则以两点…...
Jmeter
目录 一、jmeter 安装 二、jmeter 介绍 1、jmeter是什么? 2、jmeter 用来做什么? 3、优点 4、缺点 5、jmeter 目录介绍 ①_bin 目录介绍 ② docs 目录 — — 接口文档目录 ③ extras目录 — — 扩展插件目录 ④ lib 目录 — — 所用到的插件目录 ⑤ lic…...
Flutter 学习 之 时间转换工具类
Flutter 学习之时间转换工具类 在 Flutter 应用程序开发中,处理时间戳是非常常见的需求。我们通常需要将时间戳转换为人类可读的日期时间格式。为了实现这一点,我们可以创建一个时间转换工具类。 实现方法 以下是一个简单的时间转换工具类的示例&…...
docker consul
docker consul的容器服务更新与发现 服务注册与发现是微服务架构中不可或缺的重要组件,起始服务都是单节点的,不保障高可用性,也不考虑服务的承载压力,服务之间调用单纯的通过接口访问的,直到后来出现多个节点的分布式…...
全志V3S嵌入式驱动开发(开发环境再升级)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 前面我们陆陆续续开发了差不多有10个驱动,涉及到网口、串口、音频和视频等几个方面。但是整个开发的效率还是比较低的。每次开发调试的…...
ChatGPT:人工智能助手的新时代
ChatGPT:人工智能助手的新时代 文章目录 ChatGPT:人工智能助手的新时代引言ChatGPT的原理GPT-3.5架构概述预训练和微调过程生成式对话生成技术 ChatGPT的应用场景智能助理客服机器人虚拟角色教育辅助创意生成个性化推荐 ChatGPT的优势ChatGPT的使用技巧与…...
【面试】二、Java补充知识
JVM中的存储 JVM的五块存储区: 方法区(线程共享) 方法区用来存储类的各种信息(类名、方法信息等)、静态变量、常量和编译后的代码也存储在方法区中 方法区中也存在运行时常量池 常量池中会存放程序运行时生成的各种…...
简单网上书店网站建设php/中国行业数据分析网
坑 意味着没有输出。变量都会保存到console里边 如果取消这个选项,则:有输出,运行完就结束了...
网站建设宗旨及商业模式/天津seo诊断
最近想做一个企业邮箱,有C#开发,其功能跟lotus domino差不多,可以发企业内部,也可以外发的那种, 我想用winform,还没有思路,希望园子里的大哥们给点思路。谢谢!! 转载于:…...
学做网站会员/拼多多网店代运营要多少费用
1、控件的生命周期——控件消隐之后,会不会依然可点,导致出现进一步的响应?这个之前没想过,之后需要加入到测试点中 2、在登录界面同时出现弹窗: 如:特殊情况下,同时出现弹窗,又刚好…...
商城网站建设哪家好/百度seo关键词排名推荐
文章目录散点图matplotlib绘制散点图seaborn绘制散点图pyecharts绘制散点图源码地址本文可以学习到以下内容:matplotlib 中文乱码解决办法seaborn 中文乱码解决办法seaborn 库csv数据下载地址用matplotlib、seaborn、pyecharts绘制散点图 散点图 小凡在做数据分析的…...
搜索引擎优化是什么?/营销推广seo
ON DEMAND物化视图的特性及其和ON COMMIT物化视图的区别,即前者不刷新(手工或自动)就不更新物化视图,而后者不刷新也会更新物化视图,——只要基表发生了COMMIT。 创建定时刷新的物化视图(指定物化视图每天刷新一次): SQL> crea…...
wordpress慕课/宁波seo推荐推广平台
推荐算法(1):协同过滤总结 推荐算法(2):基于内容的推荐 推荐算法(3):利用用户标签数据 推荐算法(4)利用上下文信息 推荐算法(5)利用社交网络数据 推荐算法(6&…...