‘再战千问:启程你的提升之旅‘,如何更好地提问?
例如,很多时候我们提出一些问题,然而通义千问提供的答案,并非完全符合我们的期望。这并非由于通义千问的智能程度不足,而是提问者的“提问技巧”尚未掌握得当。
难道提问还需要讲究艺术性吗?确实如此。今天,我们将为大家介绍一个关键概念——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全套资料、提示词。


相关文章:
‘再战千问:启程你的提升之旅‘,如何更好地提问?
例如,很多时候我们提出一些问题,然而通义千问提供的答案,并非完全符合我们的期望。这并非由于通义千问的智能程度不足,而是提问者的“提问技巧”尚未掌握得当。 难道提问还需要讲究艺术性吗?确实如此。今天,…...
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…...
Nginx 负载均衡集群 节点健康检查
前言 正常情况下,nginx 做反向代理负载均衡的话,如果后端节点服务器宕掉的话,nginx 默认是不能把这台服务器踢出 upstream 负载集群的,所以还会有请求转发到后端的这台服务器上面,这样势必造成网站访问故障 注&#x…...
uniapp 多轴图,双轴图,指定哪几个数据在哪个轴上显示
这里使用的在这里导入, 秋云 ucharts echarts 高性能跨全端图表组件 - DCloud 插件市场 这里我封装成一个组件,自适应的,可以直接复制到自己的项目中 <template><qiun-data-charts type"mix":opts"opts":cha…...
Kotlin 协程 supervisorScope {} 运行崩溃解决
前言 简单介绍supervisorScope函数,它用于创建一个使用了 SupervisorJob 的 coroutineScope, 该作用域的特点:抛出的异常,不会 连锁取消 同级协程和父协程。 看过很多 supervisorScope {} 文档的使用,我照抄一摸一样…...
【Spring 篇】JdbcTemplate:轻松驾驭数据库的魔法工具
欢迎来到数据库的奇妙世界,在这里,我们将一同揭开Spring框架中JdbcTemplate的神秘面纱。JdbcTemplate是Spring提供的一个简化数据库操作的工具,它为我们提供了一种轻松驾驭数据库的魔法。本篇博客将详细解释JdbcTemplate的基本使用࿰…...
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 软件。它允许用户隐藏和重新排列菜单栏图标,从而减少混乱和杂乱。 Bartender mac软件特点 菜单栏图标隐藏:Bartender 允许用户隐藏菜单栏图标,只在需要时显示。这样可以…...
笙默考试管理系统-MyExamTest----codemirror(65)
笙默考试管理系统-MyExamTest----codemirror(65) 目录 一、 笙默考试管理系统-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)构造函数体赋值 2)不同成员变量赋值 2、初始化列表 一、再谈构造函数 1、引入 1)构造函数体赋值 在创建对象时,编译器通过调用构造函数,给对象中各个成员变量一个合适的初始值…...
差分--差分数组快速计算L到R值相加后的数组
目录 差分:思路代码: 原题链接 差分: 输入一个长度为 n 的整数序列。 接下来输入 m 个操作,每个操作包含三个整数 l,r,c ,表示将序列中 [l,r] 之间的每个数加上 c 。 请你输出进行完所有操作后的序列。 输入格式 第…...
《NLP入门到精通》栏目导读(01/2)
一、说明 栏目《NLP入门到精通》本着从简到难得台阶式学习过度。将自然语言处理得知识贯穿过来。本栏目得前导栏目是《深度学习》、《pytorch实践》,因此,读者需要一定得深度学习基础,才能过度到此栏目内容。 二、博客建设理念 本博客基地,将建成人工智能领域的参考资料库;…...
three.js实现电子围栏效果(纹理贴图)
three.js实现电子围栏效果(纹理贴图) 实现步骤 围栏的坐标坐标转换为几何体顶点,uv顶点坐标加载贴图,移动 图例 代码 <template><div class"app"><div ref"canvesRef" class"canvas-…...
DHSP和DNS
一、服务程序 1.1DHCP定义 DHCP(动态主机配置协议)是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。默认情况下,DHCP作为Windows Server的一个服务组…...
【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...
Ubuntu系统下交叉编译openssl
一、参考资料 OpenSSL&&libcurl库的交叉编译 - hesetone - 博客园 二、准备工作 1. 编译环境 宿主机:Ubuntu 20.04.6 LTSHost:ARM32位交叉编译器:arm-linux-gnueabihf-gcc-11.1.0 2. 设置交叉编译工具链 在交叉编译之前&#x…...
iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版分享
平时用 iPhone 的时候,难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵,或者买了二手 iPhone 却被原来的 iCloud 账号锁住,这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...
linux 下常用变更-8
1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行,YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID: YW3…...
用docker来安装部署freeswitch记录
今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...
C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...
基于Java+MySQL实现(GUI)客户管理系统
客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息,对客户进行统一管理,可以把所有客户信息录入系统,进行维护和统计功能。可通过文件的方式保存相关录入数据,对…...
STM32HAL库USART源代码解析及应用
STM32HAL库USART源代码解析 前言STM32CubeIDE配置串口USART和UART的选择使用模式参数设置GPIO配置DMA配置中断配置硬件流控制使能生成代码解析和使用方法串口初始化__UART_HandleTypeDef结构体浅析HAL库代码实际使用方法使用轮询方式发送使用轮询方式接收使用中断方式发送使用中…...
Django RBAC项目后端实战 - 03 DRF权限控制实现
项目背景 在上一篇文章中,我们完成了JWT认证系统的集成。本篇文章将实现基于Redis的RBAC权限控制系统,为系统提供细粒度的权限控制。 开发目标 实现基于Redis的权限缓存机制开发DRF权限控制类实现权限管理API配置权限白名单 前置配置 在开始开发权限…...
Linux 内存管理调试分析:ftrace、perf、crash 的系统化使用
Linux 内存管理调试分析:ftrace、perf、crash 的系统化使用 Linux 内核内存管理是构成整个内核性能和系统稳定性的基础,但这一子系统结构复杂,常常有设置失败、性能展示不良、OOM 杀进程等问题。要分析这些问题,需要一套工具化、…...
