大语言模型高质量提示词工程技巧指南

目录

前言

第一章:提示词工程(Prompt)技术简介

第二章:提示词技术基础

第三章:角色提示

第四章:“让我们思考一下”提示

第五章:自洽提示

第六章:种子词提示

第七章:控制生成提示

第八章:概述提示

第九章:对话提示

第十章:对抗性提示


前言

理解如何正确地向大语言模型(如ChatGPT,文心一言)提问以获得我们所需的高质量输出非常重要。本篇将探讨如何使用不同的提示工程(Prompt)技术来实现不同的目标。

第一章:提示词工程(Prompt)技术简介

什么是提示词(Prompt)工程?
提示词工程是创建提示或指导像 ChatGPT ,文心一言这样的大语言模型(LLM)输出的过程。它允许用户控制模型的输出并生成符合其特定需求的文本。

大模型能够生成类似于人类的文本,但如果没有适当的指导,它可能无法始终产生期望的输出。
这就是 Prompt 工程的作用,通过提供清晰而具体的指令,您可以引导模型的输出并确保其相关。
Prompt 公式是提示的特定格式,通常由三个主要元素组成:
• 任务:对提示要求模型生成的内容进行清晰而简洁的陈述。
• 指令:在生成文本时模型应遵循的指令。
• 角色:模型在生成文本时应扮演的角色。

我们将探讨可用于 LLM的各种 Prompt 工程技术。我们将讨论不同类型的提示,以及如
何使用它们实现您想要的特定目标。

第二章:提示词技术基础

指令提示技术是通过为模型提供具体指令来引导 LLM 的输出的一种方法。这种技术对于确保输出相关和高质量非常有用。

要使用指令提示技术,您需要为模型提供清晰简洁的任务,以及具体的要求以供模型遵循。在进行提示工程时,需要考虑以下几个方面:

1. 清晰明确:尽量使提示清晰、明确,以便模型更好地理解输入信息和预期输出。
2. 上下文和范围:在提示中提供足够的上下文,以便模型能够理解问题的具体背景。同时,
限制提示的范围可以减少不相关或过于宽泛的回答。
3. 问题类型:尝试使用不同的问题类型(例如开放式问题、封闭式问题或多项选择题等),
以找出最适合特定场景的提示方式。
4. 实验与迭代:不断尝试新的提示方式,对生成的回答进行分析,以便找到优化模型表现的
最佳方法。
5. 示例与引导:在提示中包含示例,可以引导模型生成类似的答案。同时,可以在提示中明
确指示期望的答案格式或结构。

通过以上方法,可以有效地进行提示工程,以提高自然语言处理模型的性能和准确性。

例如,如果您正在生成客户服务响应,您提供的任务是“生成响应客户查询”,您的要求是"响应应该专业且提供准确的信息"。

提示公式:“按照以下指示生成[任务]:[要求]”
示例:
生成客户服务响应:
• 任务:生成响应客户查询
• 要求:响应应该专业且提供准确的信息
• 提示公式:“按照以下指示生成客户查询响应:响应应该专业且提供准确的信息。”

生成法律文件:
• 任务:生成法律文件
• 要求:控制在500个字以内
• 提示公式:“按照以下指示生成符合相关法律法规的法律文件:控制在500个字以内。”

第三章:角色提示


角色提示技术是通过为 LLM 指定一个特定的角色来引导其输出的一种方式。这种技术对于生成针对特定上下文或受众的文本非常有用。要使用角色提示技术,您需要为模型提供一个清晰具体的角色。
例如,如果您正在生成客户服务回复,您可以提供一个角色,如“客户服务代表”。
提示公式:“作为[角色]生成[任务]”


示例:
生成客户服务回复:
• 任务:生成对客户查询的回复
• 角色:客户服务代表
• 提示公式:“作为客户服务代表,生成对客户查询的回复。”

生成法律文件:
• 任务:生成法律文件
• 角色:律师
• 提示公式:“作为律师,生成法律文件。”

将角色提示技术与指令提示和关键词提示结合使用可以增强 LLM 的输出。
下面是一个示例,展示了如何将指令提示、角色提示和种子词提示技术结合使用:
• 任务:为新智能手机生成产品描述
• 指令:描述应该是有信息量的,具有说服力,并突出智能手机的独特功能
• 角色:市场代表
• 关键词:手机创新功能
• 提示公式:“作为市场代表,生成一个有信息量的、有说服力的产品描述,突出新智能手机的创
新功能。该智能手机具有以下功能[插入您的功能]”


在这个示例中,指令提示用于确保产品描述具有信息量和说服力。角色提示用于确保描述是从市场代表的角度书写的。而关键词提示则用于确保描述侧重于智能手机的创新功能。

第四章:“让我们思考一下”提示

“让我们思考一下”提示是一种技巧,可鼓励 LLM 生成反思和思考性的文本。这种技术适用于撰写
论文、诗歌或创意写作等任务。

“让我们思考一下”提示的公式非常简单,即“让我们思考一下”后跟一个主题或问题。
例如:
生成一篇反思性论文:
• 任务:就个人成长主题写一篇反思性论文
• 提示公式:“让我们思考一下:个人成长”

这个提示要求对特定主题或想法展开对话或讨论。发言者邀请 LLM 参与讨论相关主题。模型提供了一个提示,作为对话或文本生成的起点。然后,模型使用其训练数据和算法生成与提示相关的响应。这种技术允许 LLM 根据提供的提示生成上下文适当且连贯的文本。

要使用“让我们思考一下提示”技术与 LLM,您可以遵循以下步骤:
1. 确定您要讨论的主题或想法。
2. 制定一个明确表达主题或想法的提示,并开始对话或文本生成。
3. 用“让我们思考”或“让我们讨论”开头的提示,表明您正在启动对话或讨论。
以下是使用此技术的一些提示示例:
• 提示:“让我们思考气候变化对农业的影响”
• 提示:“让我们讨论人工智能的当前状态”
• 提示:“让我们谈谈远程工作的好处和缺点” 您还可以添加开放式问题、陈述或一段您希望模
型继续或扩展的文本。

这种独特的提示有助于 LLM 以不同的视角和角度给出答案,从而产生更具动态性和信息性的段落。使用提示的步骤简单易行,可以真正提高您的写作水平。尝试一下,看看效果如何吧。

第五章:自洽提示

自洽提示是一种技术,用于确保 LLM 的输出与提供的输入一致。这种技术对于事实核查、数据验证或文本生成中的一致性检查等任务非常有用。

自洽提示的提示公式可以是提示模型生成与提供的输入一致的文本(用于确保 LLM 的输出与提供的输入一致)。
或者是,在输入文本前加入指令“请确保以下文本是自洽的”(用于事实核查或数据验证)。

提示示例及其公式:
示例 1:文本生成
• 任务:生成产品评论
• 指令:评论应与输入中提供的产品信息一致
• 提示公式:“生成与以下产品信息一致的产品评论[插入产品信息]”
示例 2:文本摘要
• 任务:概括一篇新闻文章
• 指令:摘要应与文章中提供的信息一致
• 提示公式:“用与提供的信息一致的方式概括以下新闻文章[插入新闻文章]”
示例 3:文本完成
• 任务:完成一个句子
• 指令:完成应与输入中提供的上下文一致
• 提示公式:“以与提供的上下文一致的方式完成以下句子[插入句子]”
示例 4(事实核查,数据验证):
1. 事实核查:
任务:检查给定新闻文章的一致性
输入文本:“文章中陈述该城市的人口为 500 万,但后来又说该城市的人口为 700 万。”
提示公式:“请确保以下文本是自洽的:文章中陈述该城市的人口为 500 万,但后来又说该城市
的人口为 700 万。”
2. 数据验证:
任务:检查给定数据集的一致性
输入文本:“数据显示 7 月份的平均温度为 30 度,但最低温度记录为 20 度。”
提示公式:“请确保以下文本是自洽的:数据显示 7 月份的平均温度为 30 度,但最低温度记录
为 20 度。”

第六章:种子词提示

种子词提示是一种通过提供特定的种子词或短语来控制 LLM 输出的技术。这种技术允许模型生成与种子词相关的文本并对其进行扩展。这是一种控制模型生成文本与某个特定主题或背景相关的方式。
种子词提示的提示公式是“请根据以下种子词生成文本:[种子词]”。
示例:
文本生成:
• 任务:编写一篇有关龙的故事
• 种子词:“龙”
• 提示公式:“请根据以下种子词生成故事:龙”

还可以和角色,关键词等结合使用。以下是提示示例及其公式:
示例 :文本生成
• 任务:编写一首诗
• 指令:诗应与种子词“爱”相关,并以十四行诗的形式书写。
• 角色:诗人
• 种子词:桃花
• 提示公式:“作为诗人,根据以下种子词生成与“爱”相关的十四行诗:桃花”

第七章:控制生成提示

控制生成提示是一种技术,可让模型在生成文本时对输出进行高度控制。
这可以通过提供一组特定的输入来实现,例如模板、特定词汇或一组约束条件,这些输入可用于指导生成过程。

以下是一些示例和它们的公式:
示例 1:文本生成
• 任务:生成一个故事
• 说明:该故事应基于特定的模板
• 提示公式:“根据以下模板生成故事:[插入模板]”
示例 2:文本补全
• 任务:完成一句话
• 说明:完成应使用特定的词汇
• 提示公式:“使用以下词汇完成以下句子:[插入词汇]:[插入句子]”
示例 3:语言建模
• 任务:以特定风格生成文本
• 说明:文本应遵循一组特定的语法规则
• 提示公式:“生成遵循以下语法规则的文本:[插入规则]:[插入上下文]”

通过提供一组特定的输入来指导生成过程,控制生成提示使得生成的文本更具可控性和可预测性。

第八章:概述提示

概述提示是一种技术,允许模型在保留其主要思想和信息的同时生成给定文本的较短版本。
这可以通过将较长的文本作为输入提供给模型并要求其生成该文本的摘要来实现。这种技术对于文本概述和信息压缩等任务非常有用。
使用方式:
• 应该向模型提供较长的文本作为输入,并要求其生成该文本的摘要。
• 提示还应包括有关所需输出的信息,例如摘要的所需长度和任何特定要求或限制。

提示示例及其公式:
示例 1:文章概述
• 任务:概述新闻文章
• 说明:摘要应是文章主要观点的简要概述
• 提示公式:“用一句简短的话概括以下新闻文章:[插入文章]”
示例 2:会议记录
• 任务:概括会议记录
• 说明:摘要应突出会议的主要决策和行动
• 提示公式:“通过列出主要决策和行动来总结以下会议记录:[插入记录]”
示例 3:书籍摘要
• 任务:总结一本书
• 说明:摘要应是书的主要观点的简要概述
• 提示公式:“用一段简短的段落总结以下书籍:[插入书名]”

第九章:对话提示

对话提示是一种技术,允许模型生成模拟两个或更多实体之间对话的文本。通过为模型提供一个上下文和一组角色或实体,以及它们的角色和背景,并要求模型在它们之间生成对话。
因此,应为模型提供上下文和一组角色或实体,以及它们的角色和背景。还应向模型提供有关所需输出的信息,例如对话或交谈的类型以及任何特定的要求或限制。

提示示例及其公式:
示例 1:对话生成
• 任务:生成两个角色之间的对话
• 说明:对话应自然且与给定上下文相关
• 提示公式:“在以下情境中生成以下角色之间的对话[插入角色]”
示例 2:故事写作
• 任务:在故事中生成对话
• 说明:对话应与故事的角色和事件一致
• 提示公式:“在以下故事中生成以下角色之间的对话[插入故事]”
示例 3:聊天机器人开发
• 任务:为客服聊天机器人生成对话
• 说明:对话应专业且提供准确的信息
• 提示公式:“在客户询问[插入主题]时,为客服聊天机器人生成专业和准确的对话”

这种技术对于对话生成、故事写作和聊天机器人开发等任务非常有用。

第十章:对抗性提示

对抗性提示是一种技术,它允许模型生成抵抗某些类型的攻击或偏见的文本。这种技术可用于训练更为稳健和抵抗某些类型攻击或偏见的模型。
要在LLM 中使用对抗性提示,需要为模型提供一个提示,该提示旨在使模型难以生成符合期望输出的文本。提示还应包括有关所需输出的信息,例如要生成的文本类型和任何特定要求或约束。

提示示例及其公式:
示例 1:用于文本分类的对抗性提示
• 任务:生成被分类为特定标签的文本
• 说明:生成的文本应难以分类为特定标签
• 提示公式:“生成难以分类为[插入标签]的文本”
示例 2:用于情感分析的对抗性提示
• 任务:生成难以分类为特定情感的文本
• 说明:生成的文本应难以分类为特定情感
• 提示公式:“生成难以分类为具有[插入情感]情感的文本”
示例 3:用于语言翻译的对抗性提示
• 任务:生成难以翻译的文本
• 说明:生成的文本应难以翻译为目标语言
• 提示公式:“生成难以翻译为[插入目标语言]的文本”

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

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

相关文章

突破百度地图Web API的配额限制,实现接口调用自由!

声明 本文章中所有内容仅供学习交流,抓包内容、敏感网址、数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除! 引言 好久没用百度地图开放平台,最近发现平台调整了接口调用的策略,增加了实名认证,…

2024年 BEC攻击激增,企业该如何防范?

根据Verizon发布的数据泄漏报告显示,2023年商业邮件欺诈(BEC)攻击占社交工程攻击的50%以上,黑客们不仅在增加攻击数量,而且在伪造邮件方面变得更加真实和自动化。 黑客分子不仅擅长用AI编写极具说服力的钓鱼电子邮件,而且还能逃避…

STM32 USART详细解读(理论知识)

文章目录 前言一、同步传输和异步传输二、UART协议三、UART硬件结构1.波特率,数据位,校验位,停止位设置2.数据发送流程3.数据接收流程4.中断控制 总结 前言 本篇文章来给大家讲解一下STM32中的USART,USART是STM32中非常重要的一个…

QT多线程应用及代码示例

一.多线程的原理和功能 1.多线程(multithreading)是指从软件或者硬件上实现多个线程并发执行的技术。 2.多线程的功能和作用主要包括: 提高程序的并发性和效率:多线程可以同时执行多个任务,不同的线程可以同时读写不…

代码随想录Day56 | 300.最长递增子序列 674. 最长连续递增序列 718. 最长重复子数组

代码随想录Day56 | 300.最长递增子序列 674. 最长连续递增序列 718. 最长重复子数组 300.最长递增子序列674.最长连续递增序列718.最长重复子数组 300.最长递增子序列 文档讲解:代码随想录 视频讲解: 动态规划之子序列问题,元素不连续&#x…

大处着手、大小结合!现货黄金短线趋势如何判断?

现货黄金以交易灵活而著称,但是投资者发现,现货黄金的短期行情是多变的,要捕捉到现货黄金短期趋势其实也不容易。下面我们就来讨论一下判断现货黄金短线趋势的方法,这个方法的关键在于“大小结合”。 大指的是基本分析。很多投资者…

【leetcode】贪心算法介绍

详细且全面地分析贪心算法常用的解题套路、数据结构和代码逻辑如下: 找最值型: 每一步选择都是局部最优解,最后得到的结果就是全局最优解。常用于找零钱问题、区间覆盖问题等。一般情况下,可以通过排序将数据进行处理,…

腾讯云助力酒店IT系统上云,实现出海业务的双重优势

潮起潮涌,随着时代浪潮的翻涌,生活处处可见是巨大的变化,衣食住行都有了更多更大的需求,出门旅游观赏当地风景品尝特色美食的前提是要住好,只有休息好了才有更多的精力去游玩。酒店系统的升级上云让登记变得更加便捷&a…

【机器学习笔记】13 降维

降维概述 维数灾难 维数灾难(Curse of Dimensionality):通常是指在涉及到向量的计算的问题中,随着维数的增加,计算量呈指数倍增长的一种现象。在很多机器学习问题中,训练集中的每条数据经常伴随着上千、甚至上万个特征。要处理这…

python opencv学习路线

目录 一:模块简介 二:图像读取 三:图像处理 四:图像识别

vue3总结

1 setup 概述 setup是Vue3中一个新的配置项个函数, 包含数据、方法等,是组合api的“舞台”。 特点如下: setup函数返回的对象中的内容,可直接在模板中使用。setup中访问this是undefined。setup函数会在beforeCreate之前调用,它…

新版本cesium的注意点

之前基于1.99版本写了一套插件,最近想替换成目前的新版本(114),发现有很多写法都不能用了,这里做一下记录。 100版本发布了cesium/engine,cesium/widgets,引用方式上就会有些变化;1…

conda 所有的命令及其讲解

Conda 是一个开源的包管理器和环境管理器,可以用于安装、运行和升级跨平台的软件包和环境。Conda 很流行于数据科学、机器学习、科学计算等领域,因为它能够快速地安装、管理和部署软件包和环境。以下是 Conda 的一些主要命令及其简要说明: 环…

【Linux】git操作 - gitee

1.使用 git 命令行 安装 git yum install git 2.使用gitee 注册账户 工作台 - Gitee.com 进入gitee,根据提示注册并登录 新建仓库 仓库名称仓库简介初始换仓库 3.Linux-git操作 进入仓库,选择“克隆/下载” 复制下面的两行命令进行git配置 然后将仓库clo…

React 中的类组件

组件分为内置原生组件和自定义组件 内置组件p h1 span type字符串自定义组件 类型是一个 函数 ,类组件的父类Component的原型上有一个属性 isReactComponent{} 自定义组件的名称必须是大写字母开头 自定定组件的返回值有且只能一个根元素 import React from ./react; import …

教师专业发展的五个阶段

每当人们谈论教师,总会联想到“传道授业解惑”的崇高形象。但教师的专业成长,绝非一蹴而就。今天,就让我们一起探秘教师专业发展的五个阶段,看看一位普通教师是如何历练成为教育行家的。 阶段一:新手摸索期 初入教育行…

走进科学系列之遭遇鬼打墙的OUTLOOK

网管小贾 / sysadm.cc 正值春运,车站里熙熙攘攘、人头攒动。 鲍勃和约瑟夫正在候车室,等待检票。 “嗨!约瑟夫!快来看看,我的电脑出问题了!” “得了吧,马上就要检票上车了,你就不…

IP显示地址与实际地址不一致,你知道为什么吗?

在数字化时代,IP地址作为网络世界中的“身份证”,其重要性不言而喻。然而,有时我们可能会遇到这样一个现象:IP显示地址与实际地址不一致。这究竟是怎么一回事呢?虎观代理小二二将带您一起探究这一现象背后的原因。 1、…

nacos用作注册中心

nacos除了用作配置中心,即可以将配置信息由配置文件转移到nacos上,更便于修改和维护外,更重要的,是用作微服务的注册中心。没有这类中间件,微服务玩不转。 微服务架构也者,就是有好多好多的微服务&#xf…

调用接口时不时出现 Error: socket hang up

项目场景: 提示:这里简述项目相关背景: 今天采用golang创建了一个http服务,准备对若干接口进行测试。 问题描述 提示:这里描述项目中遇到的问题: 在测试第一个接口时,发现采用postman调用接口…