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

ChatGPT高效提问—prompt基础

ChatGPT高效提问—prompt基础

​ 设计一个好的prompt对于获取理想的生成结果至关重要。通过选择合适的关键词、提供明确的上下文、设置特定的约束条件,可以引导模型生成符合预期的回复。例如,在对话中,可以使用明确的问题或陈述引导模型生成相关、具体的回答;在摘要生成中,可以提供需要摘要的文章段落作为prompt,以确保生成的摘要准确而精炼。

1.1 prompt基本原则

  • 简明清晰

    切忌表述复杂或含有歧义,尽可能简洁地表达主题,避免不必要的描述,以便ChatGPT准确理解我们的意图。使用简单易懂的语言,避免使用复杂的术语或语法结构。如果有术语,应该定义清楚。

不合格的prompt示例:

Screenshot 2024-02-05 at 09.13.34

合格prompt的示例:

Screenshot 2024-02-05 at 09.17.21

  • 具体化

    提供尽可能具体和详细的信息,以便ChatGPT更好地理解我们的意图。应提供相关的关键词、时间、地点和其他必要的细节

不合格的prompt的示例:

Screenshot 2024-02-05 at 09.21.55

合格的prompt的示例:

Screenshot 2024-02-05 at 09.23.08

  • 聚焦

    prompt一定要一针见血、关键点明确,避免问题太宽泛或太开放。

    不合格prompt的示例:

    Screenshot 2024-02-05 at 09.39.35

​ 合格prompt的示例:

Screenshot 2024-02-05 at 09.44.59

  • 要有上下文

    在prompt中给出上下文信息,以便ChatGPT更好地理解我们的需求。

    不合格的prompt的示例:

    Screenshot 2024-02-05 at 10.00.23

​ 合格prompt的示例:

Screenshot 2024-02-05 at 10.03.11

  • 确定生成目标

    在prompt中明确指定生成目标。这可以帮助ChatGPT更好地理解我们的意图,生成更精确的回复。

    不合格prompt的示例:

    Screenshot 2024-02-05 at 10.19.10

​ 合格prompt的示例:

Screenshot 2024-02-05 at 10.23.36

  • 使用正确的语法、拼写以及标点符号

​ 在编写prompt时,一定要注意语法、拼写以及标点符号的正确性,尤其是在使用英文prompt的时候,否则可能会造成ChatGPT生成的内容与你的预期相去甚远。

​ 不合格prompt的示例:

Screenshot 2024-02-05 at 10.34.44

​ 合格prompt的示例:

Screenshot 2024-02-05 at 10.35.33

  • 验证准确性

    编写完prompt后,须仔细检查以确保它准确表达了你的意图。尽可能想象不同的回复和场景,并确保prompt在这些情况下仍然准确和相关。

1.2 prompt组成元素

一个基础的prompt需要包含几个元素,如表所示。

基础prompt组成要素

中文名称英文名称是否必填含义
指令instruction必填希望模型执行的具体任务
语境context选填也称上下文,可以引导模型输出更好的回复
输入数据input data选填向模型提供需要处理的数据
输出指标output indicator选填告知模型输出的类型或格式

按照这个格式写prompt,模型返回的结果一般不会差。当然,prompt不一定要包含所有4个元素,而可以根据自己的需求排列组合。下面就以“策划年会流程”为例,看看如何使用这4个元素,如表所示。

基础prompt组成要素示例

中文名称prompt中的描述
指令策划年会流程
语境公司举办年会
输入数据领导发言、奖品发放、才艺表演等环节
输出指标Markdown格式

输入prompt:

Screenshot 2024-02-05 at 10.55.57

ChatGPT输出:

Screenshot 2024-02-05 at 10.57.26

                                                                                                                                                                                                                                                                                                                                                                      费功夫你v小肉肉肉肉            qX c

从输出结果来看,ChatGPT按照要求策划了公司年会流程,包括必要的几个环节,并以Markdown格式输出。下面介绍稍微复杂一些的prompt组成元素,其完备性更高,比较适用于编写prompt模板,如表所示。

高级prompt组成要素

中文名称英文名称是否必填含义
能力与角色capacity and role选填希望模型扮演什么角色
洞察力Insight选填背景信息或上下文
指令statement必填希望模型做什么
个性personality选填希望模型以什么风格或方式回答
尝试experiment选填要求模型提供多个答案

将以上元素组合在一起,就形成了一个更详细、更明确的prompt,我们称之为高级prompt。对比基础prompt,使用高级prompt生成的结果会更加精确,相关性也更强。以“用鲁迅的风格进行创作”为例,高级prompt的组成要素如表所示。

中文名称prompt中的描述
能力与角色文学家鲁迅
洞察力指定年代背景、1980年
指令写日记
个性文言文的形式
尝试三篇

输入prompt:

Screenshot 2024-02-05 at 20.47.13

ChatGPT输出:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Screenshot 2024-02-05 at 20.49.25

从输出结果来看,ChatGPT比较成功地以鲁迅的风格撰写了三篇日记,语言生动,符合预期。因此,对于更复杂的任务,大家可以参考高级prompt组成元素进行输入。

备注:以上的案例都在小蜜蜂AI学习网站完成,网址:https://zglg.work。

相关文章:

ChatGPT高效提问—prompt基础

ChatGPT高效提问—prompt基础 ​ 设计一个好的prompt对于获取理想的生成结果至关重要。通过选择合适的关键词、提供明确的上下文、设置特定的约束条件,可以引导模型生成符合预期的回复。例如,在对话中,可以使用明确的问题或陈述引导模型生成…...

Elasticsearch 中的索引的分区(Shards)和副本(Replicas)的使用

Elasticsearch是一个高性能的、分布式的搜索与数据分析引擎,广泛用于全文搜索、结构化搜索、分析以及这三者的组合场景。在Elasticsearch中,“索引”(Index)是其最基本的数据管理单位,可以类比为传统关系数据库中的“数…...

智慧工地反光衣识别检测系统-自动识别是否穿着制定工作服---豌豆云

智慧工地反光衣识别检测特定地区工作人员不穿反光服装个人行为预警,一旦检测到某些不穿反光服装施工作业人员智慧工地反光衣识别检测马上开启警报。 真真正正做到事前预警、事中检测、过后管理。安全操作规程工作人员从繁杂无趣的盯显示屏的每日任务中抽身出去。 …...

vue绘制语音波形图---wavesurfer.js

文章目录 创建实例optionsmethod接收Blob流 https://wavesurfer.xyz/ 创建实例 引入插件&#xff1a;import WaveSurfer from "wavesurfer.js"创建实例对象&#xff1a;this.wavesurfer WaveSurfer.create(options); <div id"waveform"><!-- t…...

MPLS——多协议标签交换

目录 1 多协议标签交换 MPLS 1.1 MPLS 的工作原理 1.1.1 MPLS 工作特点 1.1.2 MPLS 协议的基本原理 1.1.3 MPLS 的基本工作过程 1.2 转发等价类 FEC 1.2.1 FEC 用于负载平衡 1.3 MPLS 首部的位置与格式 1.3.1 MPLS 首部的位置 1.3.2 MPLS 首部的格式 1.4 新一代的…...

Idea使用Lombok失效解决方案

问题描述 启动项目时&#xff0c;使用lombok插件中slf4g注解后其中的log显示找不到变量 解决方案 在以下位置加入该配置-Djps.track.ap.dependenciesfalse Preferences | Build, Execution, Deployment | Compiler 之后保存应用就好&#xff0c;亲测有效。...

Java实现网上药店系统 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 药品类型模块2.3 药品档案模块2.4 药品订单模块2.5 药品收藏模块2.6 药品资讯模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 角色表3.2.2 药品表3.2.3 药品订单表3.2.4 药品收藏表3.2.5 药品留言表…...

谁是嫌疑犯问题

问题描述&#xff1a; 有6名犯罪嫌疑人A、B、C、D、E、F&#xff0c;已知如下事实&#xff1a; A、B至少有1人作案&#xff1b; A、E、F三人中至少有2人参与作案&#xff1b; A、D不可能是同案犯&#xff1b; B、C或同时作案&#xff0c;或与本案无关&#xff1b; C、D中…...

Netty中使用编解码器框架

目录 什么是编解码器&#xff1f; 解码器 将字节解码为消息 将一种消息类型解码为另一种 TooLongFrameException 编码器 将消息编码为字节 将消息编码为消息 编解码器类 通过http协议实现SSL/TLS和Web服务 什么是编解码器&#xff1f; 每个网络应用程序都必须定义如何…...

【漏洞复现】斐讯FIR151M路由器未授权下载漏洞

Nx01 产品简介 斐讯数据通信技术有限公司成立于2009年&#xff0c;是为用户提供智慧家庭领域智能产品和云服务的科技创新性企业。 Nx02 漏洞描述 斐讯 FIR151M路由器配置文件未授权下载漏洞,攻击者可利用该漏洞获取敏感信息。 Nx03 产品主页 fofa-query: app"PHICOMM-F…...

【SpringBoot】application配置(5)

type-aliases-package: com.rabbiter.cm.domaintype-aliases-package: 这个配置用于指定mybatis的别名&#xff0c;别名是一个简化的方式&#xff0c;让你在Mapper xml 文件中引用java类型&#xff0c;而不需要使用使用完整的类名。例如&#xff0c;如果你在 com.rabbiter.cm.d…...

Linux安全技术与iptables防火墙

一.安全技术&#xff1a; 入侵检测系统&#xff08;Intrusion Detection Systems&#xff09;&#xff1a;特点是不阻断任何网络访问&#xff0c;量化、定位来自内外网络的威胁情况&#xff0c;主要以提供报警和事后监督为主&#xff0c;提供有针对性的指导措施和安全决策依据,…...

QT QCombox 样式表 比起作用

对QCombox在ui编辑器中进行美化&#xff0c;发现外表美化有效果&#xff0c;但下拉框的高度美化的没效果&#xff0c;查看样式表也没有没问题&#xff0c;样式表中内容如下。 QComboBox#curve_comboBox {min-width: 150px;min-height:40;max-width: 150px;max-height:40;borde…...

在 Windows 10 上使用 Visual Studio 2022 进行 C++ 桌面开发

工具下载链接&#xff1a;https://pan.quark.cn/s/c70b23901ccb 环境介绍 在今天的快速发展的软件开发行业中&#xff0c;选择合适的开发环境是非常关键的一步。对于C开发人员来说&#xff0c;Visual Studio 2022&#xff08;VS2022&#xff09;是一个强大的集成开发环境&…...

如何安装x11vnc并结合cpolar实现win远程桌面Deepin

文章目录 1. 安装x11vnc2. 本地远程连接测试3. Deepin安装Cpolar4. 配置公网远程地址5. 公网远程连接Deepin桌面6. 固定连接公网地址7. 固定公网地址连接测试 正文开始前给大家推荐个网站&#xff0c;前些天发现了一个巨牛的 人工智能学习网站&#xff0c; 通俗易懂&#xff…...

C++基础入门Day1

C基础入门Day1 1.1 第一个C程序 编写一个C程序需要四个步骤 创建项目创建文件编写代码运行程序 1.1.1 创建项目 VS2022 1.1.2 创建文件 main.cpp 1.1.3 编写代码 注意&#xff1a;编写时键盘必须调整成英文 基本框架 #include <iostream> using namespace std…...

【高质量精品】2024美赛A题22页word版成品论文+数据+多版本前三问代码及代码讲解+前四问思路模型等(后续会更新)

一定要点击文末的卡片&#xff0c;进入后&#xff0c;即可获取完整资料后续参考论文!! 整体分析:这个题目是一个典型的生态系统建模问题&#xff0c;涉及到动物种群的性比例变化、资源可用性、环境因素、生态系统相互作用等多个方面。这个题目的难点在于如何建立一个合理的数学…...

Spark context stopped while waiting for backend

目录 报错信息 解决办法 解释 报错信息 Spark context stopped while waiting for backend 翻译过来就是 &#xff1a;Spark上下文在等待后端时停止 解决办法 通过在yarn-site.xml中添加如下配置项&#xff0c;并重启yarn&#xff0c;程序在 “–driver-memory 600m --e…...

保研机试算法训练个人记录笔记(三)

目录 基于范围的for循环 push_back return {it->second, i} 基于范围的for循环 for (const string& ageValue : age["Peter"]) 是C中的一种范围基于的for循环&#xff08;也称为基于范围的for循环&#xff09;&#xff0c;它用于遍历容器中的元素。在这个…...

2月6日作业

1.现有无序序列数组为23,24,12,5,33,5347&#xff0c;请使用以下排序实现编程 函数1:请使用冒泡排序实现升序排序 函数2:请使用简单选择排序实现升序排序 函数3:请使用快速排序实现升序排序 函数4:请使用插入排序实现升序排序 #include<stdio.h> #include<string.h&…...

ubuntu搭建nfs服务centos挂载访问

在Ubuntu上设置NFS服务器 在Ubuntu上&#xff0c;你可以使用apt包管理器来安装NFS服务器。打开终端并运行&#xff1a; sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享&#xff0c;例如/shared&#xff1a; sudo mkdir /shared sud…...

C++:std::is_convertible

C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

Day131 | 灵神 | 回溯算法 | 子集型 子集

Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 笔者写过很多次这道题了&#xff0c;不想写题解了&#xff0c;大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

高频面试之3Zookeeper

高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个&#xff1f;3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制&#xff08;过半机制&#xff0…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍

文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结&#xff1a; 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析&#xff1a; 实际业务去理解体会统一注…...

python报错No module named ‘tensorflow.keras‘

是由于不同版本的tensorflow下的keras所在的路径不同&#xff0c;结合所安装的tensorflow的目录结构修改from语句即可。 原语句&#xff1a; from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后&#xff1a; from tensorflow.python.keras.lay…...

推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)

推荐 github 项目:GeminiImageApp(图片生成方向&#xff0c;可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...

C/C++ 中附加包含目录、附加库目录与附加依赖项详解

在 C/C 编程的编译和链接过程中&#xff0c;附加包含目录、附加库目录和附加依赖项是三个至关重要的设置&#xff0c;它们相互配合&#xff0c;确保程序能够正确引用外部资源并顺利构建。虽然在学习过程中&#xff0c;这些概念容易让人混淆&#xff0c;但深入理解它们的作用和联…...

怎么让Comfyui导出的图像不包含工作流信息,

为了数据安全&#xff0c;让Comfyui导出的图像不包含工作流信息&#xff0c;导出的图像就不会拖到comfyui中加载出来工作流。 ComfyUI的目录下node.py 直接移除 pnginfo&#xff08;推荐&#xff09;​​ 在 save_images 方法中&#xff0c;​​删除或注释掉所有与 metadata …...

Sklearn 机器学习 缺失值处理 获取填充失值的统计值

💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 使用 Scikit-learn 处理缺失值并提取填充统计信息的完整指南 在机器学习项目中,数据清…...