ChatGPT - 高效编写Prompt

news2024/12/24 3:02:31

文章目录

  • 概念
  • prompt基本结构
  • 如何编写prompt
  • 指导
  • 组合使用
    • 将指令提示、角色提示和种子词提示技术结合使用:
    • 将标准提示、角色提示和种子词提示技术结合使用的示例:
  • 资料

在这里插入图片描述


概念

prompt 是给预训练语言模型 的一个线索/提示,更好的理解 人类的问题。

面向大模型,和日常沟通使用的语言有很大区别.

  • prompt像说明书,精确而又全面描述需求,写满了详细性能指标参数。
  • 把具体需求转述成为机器高效理解的优质prompt,是一件反直觉、反人性的事情

在这里插入图片描述

prompt基本结构

先描述这个任务,然后说明需要怎样的输出,最后跟上需要处理的内容。

三个构成:

  • [任务描述]
  • [输出格式]
  • [用户输入]

在这里插入图片描述

如何编写prompt

由三个主要元素组成:

  • 任务:对提示要求模型生成的内容进行清晰而简洁的陈述。
  • 指令:在生成文本时模型应遵循的指令。
  • 角色:模型在生成文本时应扮演的角色。

十条建议

  • 明确主题:清楚表达意图,并聚焦
  • 明确需求:信息查询、劝说、娱乐或其他
  • 明确基调:GPT会根据主题设置表述基调
  • 限制长度:说清楚要输出多少字数,长文、短文
  • CEO关键词:有助于生成优质结果
  • 明确受众:GPT会自动调整语种、语调、风格,来适配这个群体
  • 领域信息:补充相关领域信息,单独成段
  • 更新版本:ChatGPT(3.5)可以读取链接
  • 阐明动作:在段落尾部,说明要采取什么动作
  • 附加信息:增加相关样例、案例学习、网络资料】对比分析等 标题与副标题

指导

The Art of Asking ChatGPT for High-Quality Answers: A Complete Guide to Prompt Engineering Techniques

在这里插入图片描述

全书24章,内容总结如下:

第一章:Prompt 工程技术简介:通过提示指导 ChatGPT 这类语言模型输出

第二章:指令提示技术:提供清晰简洁的任务,以及具体的指令
提示公式:“按照以下指示生成[任务]:[指令]”

第三章:角色提示
提示公式:“作为[角色]生成[任务]”
示例:“作为律师,生成法律文件。”
示例:“作为客户服务代表,生成对客户查询的回复。”

第四章:标准提示
提示公式:“生成一个[任务]”
示例:“生成这篇新闻文章的摘要”
示例:“生成这款新智能手机的评论”

第五章:零、一和少样本提示
当特定任务的数据有限或任务是新的且未定义时,这些技术非常有用。
提示公式:“基于[数量]个示例生成文本”
示例:“基于零个示例为这款新智能手表生成产品描述”
示例:“使用一个示例(最新的iPhone)为这款新智能手机生成产品比较”
示例:“使用少量示例(3个其他电子阅读器)为这款新电子阅读器生成评论”

第六章:“让我们思考一下”提示 — 思维链
确定您要讨论的主题或想法。
制定一个明确表达主题或想法的提示,并开始对话或文本生成。
用“让我们思考”或“让我们讨论”开头的提示,表明您正在启动对话或讨论。
生成反思和思考性的文本。这种技术适用于撰写论文、诗歌或创意写作等任务。
“让我们思考一下提示”, 遵循以下步骤:
提示公式:“让我们思考一下:个人成长”
提示公式:“让我们思考一下:季节变化”
提示:“让我们思考气候变化对农业的影响”
提示:“让我们讨论人工智能的当前状态”
提示:“让我们谈谈远程工作的好处和缺点” 您还可以添加开放式问题、陈述或一段您希望模型继续或扩展的文本。

第七章:自洽提示 – 思维链
输出与提供的输入一致。对于事实核查、数据验证或文本生成中的一致性检查等任务非常有用。
自洽提示的提示公式是输入文本后跟着指令“请确保以下文本是自洽的”。或者,可以提示模型生成与提供的输入一致的文本。
文本生成:“生成与以下产品信息一致的产品评论[插入产品信息]”
文本摘要:“用与提供的信息一致的方式概括以下新闻文章[插入新闻文章]”
文本续写:“以与提供的上下文一致的方式完成以下句子[插入句子]”
事实检查:“请确保以下文本是自洽的:文章中陈述该城市的人口为500万,但后来又说该城市的人口为700万。”
数据验证:“请确保以下文本是自洽的:数据显示7月份的平均温度为30度,但最低温度记录为20度。”

第八章:种子词提示
提供特定种子词或短语来控制ChatGPT输出。控制模型生成文本与某个特定主题或背景相关的方式。
种子词提示可以与角色提示和指令提示相结合,以创建更具体和有针对性的生成文本。
种子词提示的提示公式:种子词或短语,后跟指令“请根据以下种子词生成文本”。
文本生成:“请根据以下种子词生成文本:龙”
文本生成:“作为诗人,根据以下种子词生成与“爱”相关的十四行诗:”
语言翻译:“请根据以下种子词生成文本:你好”
文本完成:“作为研究员,请在与种子词“科学”相关且以研究论文的形式书写的情况下完成以下句子:[插入句子]”
文本摘要:“作为记者,请以中立和公正的语气摘要以下新闻文章,与种子词“政治”相关:[插入新闻文章]”

第九章:知识生成提示
从ChatGPT中引出新的、原创信息,利用模型预先存在的知识来生成新信息或回答问题。
提示公式:“请生成关于X的新的和原创的信息”,其中X是感兴趣的主题。
提示应包括有关所需输出的信息,例如要生成的文本类型以及任何特定的要求或限制。
知识生成:“生成有关[特定主题]的新的准确信息”
问答:“回答以下问题:[插入问题]”
知识整合:“将以下信息与有关[特定主题]的现有知识整合:[插入新信息]”
数据分析:“请从这个数据集中生成有关客户行为的新的和原创的信息”

第十章:知识整合提示
模型应该提供新信息和现有知识作为输入,以及指定生成文本的任务或目标的提示。
提示应包括有关所需输出的信息,例如要生成的文本类型以及任何特定的要求或限制。
用模型的现有知识来整合新信息或连接不同的信息片段。这种技术对于将现有知识与新信息相结合,以生成更全面的特定主题的理解非常有用。
使用要点:
知识整合:“将以下信息与关于[具体主题]的现有知识整合:[插入新信息]”
连接信息片段:“以相关且逻辑清晰的方式连接以下信息片段:[插入信息1] [插入信息2]”
更新现有知识:“使用以下信息更新[具体主题]的现有知识:[插入新信息]”

第十一章:多项选择提示
提供一个问题或任务以及一组预定义的选项作为潜在答案。对于生成仅限于特定选项集的文本非常有用,可用于问答、文本完成和其他任务。模型可以生成仅限于预定义选项的文本。
要使用ChatGPT的多项选择提示,需要向模型提供一个问题或任务作为输入,以及一组预定义的选项作为潜在答案。提示还应包括有关所需输出的信息,例如要生成的文本类型以及任何特定要求或限制。
问答:“通过选择以下选项之一回答以下问题:[插入问题] [插入选项1] [插入选项2] [插入选项3]”
情感分析:“通过选择以下选项之一,将以下文本分类为积极、中立或消极:[插入文本] [积极] [中立] [消极]”

第十二章:可解释的软提示
提供一定灵活性的同时控制模型生成的文本。通过提供一组受控输入和关于所需输出的附加信息来实现, 可以生成更具解释性和可控性的生成文本。
文本生成:“基于以下角色生成故事:[插入角色]和主题:[插入主题]”

第十三章:控制生成提示
让模型在生成文本时对输出进行高度控制。通过提供一组特定的输入来实现,例如模板、特定词汇或一组约束条件,这些输入可用于指导生成过程。
文本生成:“根据以下模板生成故事:[插入模板]”
文本补全:“使用以下词汇完成以下句子:[插入词汇]:[插入句子]”
语言建模:“生成遵循以下语法规则的文本:[插入规则]:[插入上下文]”

第十四章:问答提示
让模型生成回答特定问题或任务的文本。通过将问题或任务与可能与问题或任务相关的任何其他信息一起作为输入提供给模型来实现此目的。
事实问题回答:“回答以下事实问题:[插入问题]”
定义:“定义以下词汇:[插入单词]”
信息检索:“从以下来源检索有关[特定主题]的信息:[插入来源]” — 这对于问答和信息检索等任务非常有用。

第十五章:概述提示
应该向模型提供较长的文本作为输入,并要求其生成该文本的摘要。
提示还应包括有关所需输出的信息,例如摘要的所需长度和任何特定要求或限制。
允许模型在保留其主要思想和信息的同时生成给定文本的较短版本。通过将较长的文本作为输入提供给模型并要求其生成该文本的摘要来实现。对于文本概述和信息压缩等任务非常有用。
使用:
文章概述:“用一句简短的话概括以下新闻文章:[插入文章]”
会议记录:“通过列出主要决策和行动来总结以下会议记录:[插入记录]”
书籍摘要:“用一段简短的段落总结以下书籍:[插入书名]”

第十六章:对话提示
生成模拟两个或更多实体之间对话的文本。通过为模型提供一个上下文和一组角色或实体,以及它们的角色和背景,并要求模型在它们之间生成对话。
因此,应为模型提供上下文和一组角色或实体,以及它们的角色和背景。还应向模型提供有关所需输出的信息,例如对话或交谈的类型以及任何特定的要求或限制。
对话生成:“在以下情境中生成以下角色之间的对话[插入角色]”
故事写作:“在以下故事中生成以下角色之间的对话[插入故事]”
聊天机器人:“在客户询问[插入主题]时,为客服聊天机器人生成专业和准确的对话”

第十七章:对抗性提示
生成抵抗某些类型的攻击或偏见的文本。这种技术可用于训练更为稳健和抵抗某些类型攻击或偏见的模型。
文本分类:“生成难以分类为[插入标签]的文本”
情感分析:“生成难以分类为具有[插入情感]情感的文本”
机器翻译:“生成难以翻译为[插入目标语言]的文本”

第十八章:聚类提示
根据某些特征或特点将相似的数据点分组在一起. 提供一组数据点并要求模型根据某些特征或特点将它们分组成簇,可以实现这一目标。在数据分析、机器学习和自然语言处理等任务中非常有用。
客户评论:“将以下客户评论根据情感分组成簇:[插入评论]”
新闻文章:“将以下新闻文章根据主题分组成簇:[插入文章]”
科学论文:“将以下科学论文根据研究领域分组成簇:[插入论文]”

第十九章:强化学习提示
从过去的行动中学习,并随着时间的推移提高其性能。
文本生成:“使用强化学习来生成与以下风格一致的文本[插入风格]”
语言翻译:“使用强化学习将以下文本[插入文本]从[插入语言]翻译成[插入语言]”
问答:“使用强化学习来回答以下问题[插入问题]”

第二十章:课程学习提示
先训练简单任务,逐渐增加难度来学习复杂任务
文本生成:“使用课程学习来生成与以下风格[插入风格]一致的文本,按照以下顺序[插入顺序]。”
语言翻译:“使用课程学习将以下语言[插入语言]的文本翻译成以下顺序[插入顺序]。”
问答:“使用课程学习来回答以下问题[插入问题],按照以下顺序[插入顺序]生成答案。”

第二十一章:情感分析提示
确定文本的情绪色彩或态度,例如它是积极的、消极的还是中立的。
客户评论:“对以下客户评论进行情感分析[插入评论],并将它们分类为积极的、消极的或中立的。”
推文评论:“对以下推文进行情感分析[插入推文],并将它们分类为积极的、消极的或中立的。”

第二十二章:命名实体识别提示
识别和分类文本中的命名实体,例如人名、组织机构、地点和日期等。
新闻:“在以下新闻文章[插入文章]上执行命名实体识别,并识别和分类人名、组织机构、地点和日期。”

第二十三章:文本分类提示
将文本分成不同的类别
客户评论:“对以下客户评论 [插入评论] 进行文本分类,并根据其内容将其分类为不同的类别,例如电子产品、服装和家具。”
电子邮件:“对以下电子邮件 [插入电子邮件] 进行文本分类,并根据其内容和发件人将其分类为不同的类别,例如垃圾邮件、重要邮件或紧急邮件。”

第二十四章:文本生成提示
故事创作:“根据以下提示[插入提示]生成一个至少包含1000个单词,包括角色[插入角色]和情节[插入情节]的故事。”
语言翻译:“将以下文本[插入文本]翻译成[插入目标语言],并确保其准确且符合习惯用语。”

组合使用

将指令提示、角色提示和种子词提示技术结合使用:

任务:为新智能手机生成产品描述
指令:描述应该是有信息量的,具有说服力,并突出智能手机的独特功能
角色:市场代表 种子词:“创新的”
提示公式:“作为市场代表,生成一个有信息量的、有说服力的产品描述,突出新智能手机的创新功能。该智能手机具有以下功能[插入您的功能]”
在这个示例中,指令提示用于确保产品描述具有信息量和说服力。角色提示用于确保描述是从市场代表的角度书写的。而种子词提示则用于确保描述侧重于智能手机的创新功能。

将标准提示、角色提示和种子词提示技术结合使用的示例:

任务:为一台新笔记本电脑撰写产品评论
说明:评论应客观、信息丰富,强调笔记本电脑的独特特点
角色:技术专家
种子词:“强大的”
提示公式:“作为一名技术专家,生成一个客观而且信息丰富的产品评论,强调新笔记本电脑的强大特点。”
在这个示例中,标准提示技术用于确保模型生成产品评论。角色提示用于确保评论是从技术专家的角度写的。而种子词提示用于确保评论侧重于笔记本电脑的强大特点


资料

英文:https://oceanofpdf.com/authors/ibrahim-john/pdf-the-art-of-asking-chatgpt-for-high-quality-answers-a-complete-guide-to-prompt-engineering-techniques-download/

中文:https://github.com/ORDINAND/The-Art-of-Asking-ChatGPT-for-High-Quality-Answers-A-complete-Guide-to-Prompt-Engineering-Technique

prompt理论:https://wqw547243068.github.io/prompt

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深入剖析PyTorch和TensorFlow:理解二者的区别与联系

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️ 👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…

java基础入门-02-【面向对象】

Java基础入门-02-【面向对象】 8、面向对象8.1. 类和对象8.1.1 类和对象的理解8.1.2 类的定义8.1.3 对象的使用8.1.4 学生对象-练习 8.2. 对象内存图8.2.1 单个对象内存图8.2.2 多个对象内存图 8.3. 成员变量和局部变量8.3.1 成员变量和局部变量的区别 8.4. 封装8.4.1 封装思想…

JavaSE基础(四)—— 数组、内存分配

目录 一、数组的定义 1. 静态初始化数组 1.1 数组的访问 1.2 数组的几个注意事项 2. 动态初始化数组 2.1 动态初始化数组的元素默认值 3. 两种初始化的的使用场景总结、注意事项说明 二、数组的遍历 三、数组的案例 1. 数组元素求和 2. 数组求最值 3. 数组…

系统辨识——最小二乘法

基本原理 数学推导 最小二乘法是通过输入数据与输出数据来拟合已知结构的函数关系,也就是说已知二者的函数关系,通过最小二乘法估计函数的相关参数。假设 x , y x,y x,y存在以下函数关系: 但是在实际中,测量数据时存在测量误差或…

JavaScript call,callee,caller,apply,bind之间的区别

(现实是此岸,梦想是彼岸,中间隔着湍急的河流,行动则是架在河上的桥梁。——克雷洛夫) call call() 方法使用一个指定的 this 值和单独给出的一个或多个参数来调用一个函数。 MDN链接 call方法可以将一个对象属性作为…

ChatGPT AI使用成本

LLM “经济学”:ChatGPT 与开源模型,二者之间有哪些优劣权衡?谁的部署成本更低? 太长不看版:对于日均请求在 1000 次左右的低频使用场景,ChatGPT 的实现成本低于部署在 AWS 上的开源大模型。但面对每天数以…

Qt 从入门到入土

本文目录 1. Qt 概述1.1 什么是 Qt1.2 Qt 的发展史1.3 支持的平台1.4 Qt 的版本1.5 Qt 的优点1.6 成功案例 2. 创建 Qt 项目2.1 使用向导创建2.2 手动创建2.3 .pro文件2.4 一个最简单的 Qt 应用程序2.5 Qt 命名规范和常用快捷键 3. 第一个 Qt 小程序3.1 按钮的创建3.2 对象模型…

基于springboot的学生成绩管理系统

摘 要 随着信息技术和网络技术的飞速发展,人类已进入全新信息化时代,传统管理技术已无法高效,便捷地管理信息。为了迎合时代需求,优化管理效率,各种各样的管理系统应运而生,各行各业相继进入信息管理时代&…

LeetCode第2题——两数相加(Java)

题目描述: ​ 给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 ​ 请你将两个数相加,并以相同形式返回一个表示和的链表。 ​ 你可以假设除了数字 0 之外…

考研数据结构--数组与广义表

数组与广义表 文章目录 数组与广义表数组数组的基本概念性质数组的存储结构一维数组的存储结构二维数组的存储结构 特殊矩阵的压缩存储对称矩阵上三角矩阵下三角矩阵对角矩阵 稀疏矩阵定义稀疏矩阵的三元组表示稀疏矩阵的存储结构及其基本运算算法定义存入三元组三元组元素赋值…

ChatGPT in Drug Discovery

ChatGPT是OpenAI开发的一种语言模型。这是一个在大型人类语言数据集上训练的机器学习模型,能够生成类似人类语言文本。它可以用于各种自然语言处理任务,如语言翻译、文本摘要和问题回答。在目前的工作中,我们讨论了ChatGPT在药物发现中的应用…

矩阵乘法之叉乘和点乘

矩阵的乘法包含两种:点乘和叉乘。 矩阵点乘的含义是对应元素相乘,例如矩阵,同样存在矩阵, 那么. 矩阵叉乘含义与我们平时理解矩阵相乘一致,即一个矩阵A,若要与另外一个矩阵相乘,另另外一个矩阵的行数必须…

【iOS】NSOperation,NSOperationQueue

文章目录 前言概念使用NSOperation,NSoperationQueue的好处操作和操作队列操作(Operation)操作队列(Operation Queues) NSOperation,NSOperationQueue常用属性和方法归纳NSOperation常用属性和方法NSOperat…

阶乘求和,求 1 + 2 + 3 + ... + 202320232023 ,阶乘总和的末尾九位数字

求 1! 2! 3! … 202320232023! ,总和的末尾九位数字。 【学习的细节是欢悦的历程】 Python 官网:https://www.python.org/ Free:大咖免费“圣经”教程《 python 完全自学教程》,不仅仅是基础那么简单…… 地址:ht…

learn_C_deep_8 (循环语法的理解、void的用法以及理解)

目录 循环语法的理解 break关键字 continue关键字 continue跳转的位置 goto关键字 void的用法以及理解 void是否可以定义变量 为何 void 不能定义变量 void的应用场景 void 指针 循环语法的理解 for循环是一种常用的循环结构,它适合于在已知循环次数的情况…

ChatGPT prompt engineering (中文版)笔记 |吴恩达ChatGPT 提示工程

目录 一、资料二、 指南环境配置两个基本原则&#xff08;最重要!!!!&#xff09;原则一&#xff1a;编写清晰、具体的指令**策略一&#xff1a;使用分隔符清晰地表示输入的不同部分**&#xff0c;**分隔符可以是&#xff1a;&#xff0c;""&#xff0c;<>&…

浅谈几个通信概念-如何理解卷积,负频率,傅里叶变换,奈奎斯特采样定理?

1.如何理解卷积&#xff1f; t时刻的输出信号是t时刻之前的无数小的脉冲序列冲击引起的。 2. 如何理解欧拉公式&#xff0c;复指数信号呢&#xff1f; 可以看成一个点在复平面上以角速度w进行逆时针的旋转。 傅里叶分析&#xff1a; 整体到部分&#xff0c;把一个信号分解成无…

【网络】socket套接字基础知识

文章目录 IP与端口号TCP/UDP协议网络字节流socket套接字接口总结 IP与端口号 IP 每台主机都有自己的IP地址&#xff0c;所以当数据从一台主机传输到另一台主机就需要IP地址。报头中就会包含源IP和目的IP 源IP地址&#xff1a;发送数据报那个主机的IP地址&#xff0c;目的IP地…

JMeter开发web及手机APP自动化脚本练习

一、打开浏览器代理服务器设置 我这里用的是360浏览器&#xff0c;打开浏览器代理服务器设置&#xff0c;端口要与jmeter中的端口设置保持一致哦。 二、JMeter设置代理 JMeter设置代理&#xff08;jmeter中的端口要与360浏览器端口设置保持一致哦。&#xff09; 三、启动代理运…

BM17 二分查找-I

二分查找-I_牛客题霸_牛客网 (nowcoder.com) 设置中间值mid 每次判断目标值和中间值的大小 缩短区间 直到区间全被搜索完成 class Solution { public: /** * 代码中的类名、方法名、参数名已经指定&#xff0c;请勿修改&#xff0c;直接返回方法规定的值即可 * * * param nums …