当前位置: 首页 > news >正文

‘再战千问:启程你的提升之旅‘,如何更好地提问?

例如,很多时候我们提出一些问题,然而通义千问提供的答案,并非完全符合我们的期望。这并非由于通义千问的智能程度不足,而是提问者的“提问技巧”尚未掌握得当。

难道提问还需要讲究艺术性吗?确实如此。今天,我们将为大家介绍一个关键概念——Prompt Engineering,即“提示词工程”。

那么,什么是提示词工程(Prompt Engineering)呢?它是指在与AI模型交互时,用户所提供的输入文本,这些文本旨在引导AI模型生成特定类型的精准输出内容。这里的输入可以是具体的问题表述、任务描述或情境描绘。

向AI模型提问或者下达指令,就如同与人交流一样,提问者首先需要确保问题表述清晰明了。如果问题阐述得模糊不清,即便是最顶尖的专家也无法给出你所期待的答案。

下面两个例子,就是提示词的错误示例:

很明显这并不是我想要的答案,我明明想要一 giao 我里 giao giao,因为问题并没有表述清楚,结果给我初始了一个rapper的角色其实可以看到他已经自由发挥了,同样也没描述清楚具体的一些细节,

因此,为了确保AI模型能够提供更为精确的答案,我们有必要掌握一系列针对AI的提问策略和技术,而这一整套策略和技术体系即所谓的“提示词工程”。在ChatGPT的应用中,提示词工程扮演着不可或缺的核心角色,它负责将用户的需求翻译成GPT模型可以有效理解和响应的语言结构。通过精心设计和运用恰当的提示词,我们可以有效地引导GPT模型生成既具有针对性又高质量的回复内容。故此,深入学习并熟练应用提示词技术是充分挖掘ChatGPT潜能的关键,有助于满足各种不同场景下的应用需求。

那么,如何开启对提示词工程的学习之旅呢?

初步涉足提示词工程领域,首要任务是对提示词的各种类型有一个全面的认识。当前,在实践中广泛采用的提示词主要分为六大类别。

1.信息检索类Prompt

向ChatGPT询问某些固有的知识,比如这样输入:“新中国成立时间”

2.文本生成类Prompt

根据特定要求来生成文本,比如这样输入:"我彩票中了一个亿,我不想干了,请向我的领导写一封离职信,要求字数在300字以内”

3.机器翻译类Prompt

给定某一种语言的内容,翻译成另一种语言,比如这样输入:"请将'I'm Iron Man翻译成中文。”

4.创意写作类Prompt

提出具有开放性的要求,比如这样输入:“写一个以美国南北战净为历史背景的短篇爱情小说,要求字数2000字以内。“

(截取了部分)

5.文本摘要类Prompt

指定一篇文章,提炼出文章的核心要点,比如这样输入:"请为上面的输出总结出一个50字的摘要"

6.咨询建议类Prompt

列举现实情况,提出咨询建议,比如这样输入:“我是一个00后北漂,我喜欢rapper,我应该如何学习?”

上述内容仅列举了提示词的一些常见类型。然而,要有效地提出优质问题,首要步骤是明确你所使用的提示词类别,这样才能做到精准定位,如同对症下药般解决问题。

一个真正高质量的提示词,应当具备三大要素:首先,目标指向必须清晰明了;其次,应具有特定的前提条件设定;最后,需对回答的形式和范围做出明确限定。

想要满足这些要求,你的Prompt需要包含四大组成部分,分别是任务、上下文、指令、角色。

1.任务(Task)

所谓任务,是指用户期望模型执行的具体事务,这可能包括解答疑问、提出指导性意见等内容。

2.上下文(Context)

有助于模型更好地掌握任务的上下文信息,这包括但不限于相关领域的专业知识、具体的应用场景等元素。

3.指令(Instruction)

具体要求包括但不限于按照特定方式引导模型完成任务,例如规定答案的格式、确定回答的深度等。

4.角色(Role)

在互动流程中,为模型预设一个身份角色,例如专家、助手等,使其能够在交流中发挥作用。

对于这四个组成部分,我们来举一个应用的例子。输入内容:作为一个项目经理,你的项目组成员因工资待遇要求离职,请给出有效的解决办法,解决方法列举5条以上,总字数在200-300之间,

任务部分是“给出有效的解决方法”

上下文部分是“你的项目组成员因工资待遇要求离职“

指令部分是“解决方法列举5条以上,总字数在200-300字之间。”

角色:项目经理

这样的提示词就是一个清晰完整的提示词,大概率可以给出你准确而又有价值的回答。

针对这个问题,回答如下:

当然,也并非每一个问题都一定要严格包含着四大要素,只有在希望生成较为复杂和专业的内容时,才需要兼备这些要素。

以上是实现优质提示词的基本要求。此外针对一些特殊场景,我们也需要用到几种提示词的高级技巧。

都有哪些提示词的高级技巧呢?在下一讲我会为大家详细说明,敬请期待。

欢迎大家围观,

想学习更多AI技能,比如说利用AI提高生产力,或者做一些副业都可以联系我,入局AI 共同成长。关注公众号发送【ChatGPT资料】领取ChatGPT全套资料、提示词。

相关文章:

‘再战千问:启程你的提升之旅‘,如何更好地提问?

例如,很多时候我们提出一些问题,然而通义千问提供的答案,并非完全符合我们的期望。这并非由于通义千问的智能程度不足,而是提问者的“提问技巧”尚未掌握得当。 难道提问还需要讲究艺术性吗?确实如此。今天&#xff0c…...

java SSM社区文化服务管理系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计

一、源码特点 java SSM社区文化服务管理系统是一套完善的web设计系统(系统采用SSM框架进行设计开发,springspringMVCmybatis),对理解JSP java编程开发语言有帮助,系统具有完整的 源代码和数据库,系统主…...

go执行静态二进制文件和执行动态库文件

目的和需求:部分go的核心文件不开源,例如验证,主程序核心逻辑等等 第一个想法,把子程序代码打包成静态文件,然后主程序执行 子程序 package mainimport ("fmt""github.com/gogf/gf/v2/os/gfile"…...

通过示例解释序列化和反序列化-Java

序列化和反序列化是Java(以及通常的编程)中涉及将对象转换为字节流,以及反之的过程。当你需要传输或存储对象的状态时特别有用,比如将其通过网络发送或持久化到文件中。 序列化: 定义:序列化是将对象的状…...

k8s源码阅读环境配置

源码阅读环境配置 k8s代码的阅读可以让我们更加深刻的理解k8s各组件的工作原理,同时提升我们Go编程能力。 IDE使用Goland,代码阅读环境需要进行如下配置: 从github上下载代码:https://github.com/kubernetes/kubernetes在GOPATH目…...

Java JDBC整合(概述,搭建,PreparedStatement和Statement,结果集处理)

一、JDBC的概述: JDBC:是一种执行sql语句的Java APL,可以为多种关系类型数据库提供统一访问,它由一组用Java语言编写的类和接口组成。有了JDBC,Java人员只需要编写一次程序就可以访问不同的数据库。 JDBC APL&#xf…...

Nginx 负载均衡集群 节点健康检查

前言 正常情况下,nginx 做反向代理负载均衡的话,如果后端节点服务器宕掉的话,nginx 默认是不能把这台服务器踢出 upstream 负载集群的,所以还会有请求转发到后端的这台服务器上面,这样势必造成网站访问故障 注&#x…...

uniapp 多轴图,双轴图,指定哪几个数据在哪个轴上显示

这里使用的在这里导入&#xff0c; 秋云 ucharts echarts 高性能跨全端图表组件 - DCloud 插件市场 这里我封装成一个组件&#xff0c;自适应的&#xff0c;可以直接复制到自己的项目中 <template><qiun-data-charts type"mix":opts"opts":cha…...

Kotlin 协程 supervisorScope {} 运行崩溃解决

前言 简单介绍supervisorScope函数&#xff0c;它用于创建一个使用了 SupervisorJob 的 coroutineScope&#xff0c; 该作用域的特点&#xff1a;抛出的异常&#xff0c;不会 连锁取消 同级协程和父协程。 看过很多 supervisorScope {} 文档的使用&#xff0c;我照抄一摸一样…...

【Spring 篇】JdbcTemplate:轻松驾驭数据库的魔法工具

欢迎来到数据库的奇妙世界&#xff0c;在这里&#xff0c;我们将一同揭开Spring框架中JdbcTemplate的神秘面纱。JdbcTemplate是Spring提供的一个简化数据库操作的工具&#xff0c;它为我们提供了一种轻松驾驭数据库的魔法。本篇博客将详细解释JdbcTemplate的基本使用&#xff0…...

Web开发SpringBoot SpringMVC Spring的学习笔记(包含开发常用工具类)

开发框架学习笔记 一.Spring SpringMVC SpringBoot三者的联系SpringMVC工作原理 二.SpringBoot的学习2.1 注解2.1.1 SpringBoot的核心注解2.1.2 配置导入注解(简化Spring配置写XML的痛苦)Configuration和Bean(人为注册Spring 的 Bean)Import(补)ImportResource(补)AutowiredQua…...

微服务下的SpringSecurity认证端

从三板斧开始微服务下的SpringSecurity开始 一、引入组件包 <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-oauth2</artifactId> </dependency> 二、创建适配器 AuthorizationServerConfig…...

苹果电脑菜单栏应用管理软件Bartender 4 mac软件特点

Bartender mac是一款可以帮助用户更好地管理和组织菜单栏图标的 macOS 软件。它允许用户隐藏和重新排列菜单栏图标&#xff0c;从而减少混乱和杂乱。 Bartender mac软件特点 菜单栏图标隐藏&#xff1a;Bartender 允许用户隐藏菜单栏图标&#xff0c;只在需要时显示。这样可以…...

笙默考试管理系统-MyExamTest----codemirror(65)

笙默考试管理系统-MyExamTest----codemirror&#xff08;65&#xff09; 目录 一、 笙默考试管理系统-MyExamTest----codemirror 二、 笙默考试管理系统-MyExamTest----codemirror 三、 笙默考试管理系统-MyExamTest----codemirror 四、 笙默考试管理系统-MyExamTest---…...

git在本地创建dev分支并和远程的dev分支关联起来

文章目录 git在本地创建dev分支并和远程的dev分支关联起来1. 使用git命令2. 使用idea2.1 先删除上面建的本地分支dev2.2 通过idea建dev分支并和远程dev分支关联 3. 查看本地分支和远程分支的关系 git在本地创建dev分支并和远程的dev分支关联起来 1. 使用git命令 git checkout…...

【C++】深入了解构造函数之初始化列表

目录 一、再谈构造函数 1、引入 1&#xff09;构造函数体赋值 2&#xff09;不同成员变量赋值 2、初始化列表 一、再谈构造函数 1、引入 1&#xff09;构造函数体赋值 在创建对象时&#xff0c;编译器通过调用构造函数&#xff0c;给对象中各个成员变量一个合适的初始值…...

差分--差分数组快速计算L到R值相加后的数组

目录 差分&#xff1a;思路代码&#xff1a; 原题链接 差分&#xff1a; 输入一个长度为 n 的整数序列。 接下来输入 m 个操作&#xff0c;每个操作包含三个整数 l,r,c &#xff0c;表示将序列中 [l,r] 之间的每个数加上 c 。 请你输出进行完所有操作后的序列。 输入格式 第…...

《NLP入门到精通》栏目导读(01/2)

一、说明 栏目《NLP入门到精通》本着从简到难得台阶式学习过度。将自然语言处理得知识贯穿过来。本栏目得前导栏目是《深度学习》、《pytorch实践》,因此,读者需要一定得深度学习基础,才能过度到此栏目内容。 二、博客建设理念 本博客基地,将建成人工智能领域的参考资料库;…...

three.js实现电子围栏效果(纹理贴图)

three.js实现电子围栏效果&#xff08;纹理贴图&#xff09; 实现步骤 围栏的坐标坐标转换为几何体顶点&#xff0c;uv顶点坐标加载贴图&#xff0c;移动 图例 代码 <template><div class"app"><div ref"canvesRef" class"canvas-…...

DHSP和DNS

一、服务程序 1.1DHCP定义 DHCP&#xff08;动态主机配置协议&#xff09;是一个局域网的网络协议。指的是由服务器控制一段IP地址范围&#xff0c;客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。默认情况下&#xff0c;DHCP作为Windows Server的一个服务组…...

浅谈 React Hooks

React Hooks 是 React 16.8 引入的一组 API&#xff0c;用于在函数组件中使用 state 和其他 React 特性&#xff08;例如生命周期方法、context 等&#xff09;。Hooks 通过简洁的函数接口&#xff0c;解决了状态与 UI 的高度解耦&#xff0c;通过函数式编程范式实现更灵活 Rea…...

JavaSec-RCE

简介 RCE(Remote Code Execution)&#xff0c;可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景&#xff1a;Groovy代码注入 Groovy是一种基于JVM的动态语言&#xff0c;语法简洁&#xff0c;支持闭包、动态类型和Java互操作性&#xff0c…...

vscode里如何用git

打开vs终端执行如下&#xff1a; 1 初始化 Git 仓库&#xff08;如果尚未初始化&#xff09; git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...

应用升级/灾备测试时使用guarantee 闪回点迅速回退

1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间&#xff0c; 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点&#xff0c;不需要开启数据库闪回。…...

【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器

——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的​​一体化测试平台​​&#xff0c;覆盖应用全生命周期测试需求&#xff0c;主要提供五大核心能力&#xff1a; ​​测试类型​​​​检测目标​​​​关键指标​​功能体验基…...

uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖

在前面的练习中&#xff0c;每个页面需要使用ref&#xff0c;onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入&#xff0c;需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...

全球首个30米分辨率湿地数据集(2000—2022)

数据简介 今天我们分享的数据是全球30米分辨率湿地数据集&#xff0c;包含8种湿地亚类&#xff0c;该数据以0.5X0.5的瓦片存储&#xff0c;我们整理了所有属于中国的瓦片名称与其对应省份&#xff0c;方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

剑指offer20_链表中环的入口节点

链表中环的入口节点 给定一个链表&#xff0c;若其中包含环&#xff0c;则输出环的入口节点。 若其中不包含环&#xff0c;则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...

自然语言处理——循环神经网络

自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元&#xff08;GRU&#xff09;长短期记忆神经网络&#xff08;LSTM&#xff09…...

AspectJ 在 Android 中的完整使用指南

一、环境配置&#xff08;Gradle 7.0 适配&#xff09; 1. 项目级 build.gradle // 注意&#xff1a;沪江插件已停更&#xff0c;推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...