【NLP 49、提示工程 prompt engineering】

目录

一、基本介绍

语言模型生成文本的基本特点

提示工程 prompt engineering

提示工程的优势

使用注意事项

① 安全问题        

② 可信度问题

③ 时效性与专业性        

二、应用场景

能  ≠  适合

应用场景 —— 百科知识

应用场景 —— 写文案

应用场景 —— 解释 / 编写一段代码

应用场景 —— 简历生成

应用场景 —— Excel应用

应用场景 —— 模拟面试

应用场景 —— 文章相关性打分

三、使用技巧

1.模型相关参数的设置

2.中英文prompt

3.不明确的prompt会引发猜测

​编辑

4.prompt结构示例

示例: 

​编辑

其他模板示例:

① Role-Task-Format (角色-任务-格式)

② Task-Action-Goal (任务-动作-目标)

③ Before-After-Bridge (之前-之后-桥梁)

④ Context-Action-Result-Example (环境-行动-结果-例子)

技巧


一个人很少能赢,但总有赢的时候

                                                ——25.3.26

一、基本介绍

        语言模型  Language Model:根据上文,计算下一个字的概率分布

        大模型也是同样的原理:不断依照概率选取下一个字,迭代生成文本


语言模型生成文本的基本特点

1.黑盒

2.相似的表达,不一定有相似的回复(随机采样策略)

3.完全相同的输入,也可以有不同的结果(随机采样策略)

输入的文本,也被称为提示词 prompt


提示工程 prompt engineering

        提示工程(Prompt Engineering)是一门较新的学科,关注提示词开发和优化,帮助用户将大语言模型(Large Language Model, LLM)用于各场景和研究领域。 掌握了提示工程相关技能将有助于用户更好地了解大型语言模型的能力和局限性。

        研究人员可利用提示工程来提升大语言模型处理复杂任务场景的能力,如问答和算术推理能力。开发人员可通过提示工程设计、研发强大的工程技术,实现和大语言模型或其他生态工具的高效接轨。

        提示工程不仅仅是关于设计和研发提示词。它包含了与大语言模型交互和研发的各种技能和技术。提示工程在实现和大语言模型交互、对接,以及理解大语言模型能力方面都起着重要作用。用户可以通过提示工程来提高大语言模型的安全性,也可以赋能大语言模型,比如借助专业领域知识和外部工具来增强大语言模型能力。


提示工程的优势

        如果任务定义的好的话,可以直接使用模型进行预测,而不需要传统机器学习那样训练

        模型不做针对性训练,仅设计针对性的prompt

        没有标注成本,快速投入使用

        应用范围广泛


使用注意事项

① 安全问题        

目前网上的许多类chatgpt项目是以接口方式提供服务,输入问题都会被发送到对方服务器,需要注意数据安全

② 可信度问题

语言模型的生成结果本身具备一定随机性

语言模型可以生成完全错误,但看起来通顺的文本

③ 时效性与专业性        

脱离网络的语言模型受制于训练数据的时效性,在细分专业领域的回答受数据质量和数量限制 


二、应用场景

        可以认为与文本(文字、代码、字符)生成有关的,人类已有公开在线资料讲述过的任务,ChatGPT都能做

能  ≠  适合

适合使用提示工程来完成的场景: ① 自己完全能够完成,但是很花时间 ② 自己没有完整思路,但完全能够判断结果的正确性 ③ 纯创意型场景(没有正确性要求)

不建议的场景: ① 获取自己不熟悉的领域的信息,或实时性信息 ② 数字计算型任务 ③ 处理分析很大量的数据


应用场景 —— 百科知识

应用场景 —— 写文案

应用场景 —— 解释 / 编写一段代码

应用场景 —— 简历生成

应用场景 —— Excel应用

应用场景 —— 模拟面试

应用场景 —— 文章相关性打分


三、使用技巧

1.模型相关参数的设置


2.中英文prompt

        由于ChatGPT是英文训练语料为主,一般来说使用英文会强于中文,但是区别没有想象的那么大,如无特殊需求,中文一般可以满足需求,不必强行配合翻译软件使用

        国内的大模型一般使用中文提示词问答效果较好


3.不明确的prompt会引发猜测


4.prompt结构示例

一个prompt中指令词和输入至少会存在一项,背景和输出要求则可能均不存在

示例: 

其他模板示例:

① Role-Task-Format (角色-任务-格式)

- 角色:指定大模型的角色,比如“你是一个市场营销专家”。

- 任务:明确任务,例如“你需要制定一个推广策略,为运动品牌推广新的健身服装”。

- 格式:指定输出格式,如“你的输出应包括品牌核心信息、视觉元素设计、以及定位目标用户的策略等”。

② Task-Action-Goal (任务-动作-目标)

- 任务:确定模型的任务,如“评估团队成员的表现”。

- 动作:描述执行的动作,例如“分析每个团队成员的优势和劣势”。

- 目标:设定明确的目标,如“提升团队的整体表现,使客户满意度提高”

③ Before-After-Bridge (之前-之后-桥梁)

- 之前:描述当前状态,如“我们目前在搜索引擎结果页的排名是第50位”。

- 之后:明确期望结果,如“我们希望在三个月内进入前10名”。

- 桥梁:描述实现目标所需的步骤,如“制定和执行一个全面的搜索引擎优化策略”。

④ Context-Action-Result-Example (环境-行动-结果-例子)

- 环境:提供问题或活动的背景信息,例如“为了提升品牌形象,推广我们的环保材料制成的新鞋”。

- 行动:描述要执行的具体行动,如“通过社交媒体进行一系列营销策划,重点突出鞋子的环保材料”。

- 结果:预期结果,如“提高消费者对品牌的认识,并增加销量”。 - 例子: 提供类似的成功案例,如“从知名鞋类品牌与环保公司合作的例子寻找灵感。”

技巧

① 设定自己的角色

② 设定ChatGPT的角色

③ 详细、明确的描述

④ 提供背景信息

⑤ 思维顺序引导

⑥ 在提示词中合理使用分隔符

⑦ 给模型一些拒识出口

⑧ 要求模型结构化输出

⑨ 拆解任务步骤

⑩ 利用一些法则

⑪ 让AI自己提问

⑫ 提供示例 Few shot

⑬ 加入思维链 Few shot with Chain-of-Thought

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

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

相关文章

数字转换(c++)

【题目描述】 如果一个数 xx 的约数和 yy (不包括他本身)比他本身小,那么 xx 可以变成 yy ,yy 也可以变成 xx 。例如 44 可以变为 33 ,11 可以变为 77 。限定所有数字变换在不超过 nn 的正整数范围内进行,…

如何同步fork的更新

当你fork了一个代码仓库后,要将其与原始源码保持同步,可以按照以下步骤进行操作: 1. 添加原始仓库作为远程源 在本地命令行中,进入到你fork后的代码仓库目录,然后使用以下命令添加原始仓库(通常称为upstr…

CentOS系统下安装tesseract-ocr5.x版本

CentOS系统下安装tesseract-ocr5.x版本 安装依赖包: yum update -y yum install autoconf automake libtool libjpeg-devel libpng-devel libtiff-devel zlib-devel yum install automake libtool bzip2 -y手动编译安装GCC(因系统默认安装的GCC版本比较…

MyBatis打印SQL日志的配置

配置MyBatis打印日志的步骤如下&#xff0c;支持多种日志框架&#xff08;如Logback、Log4j2等&#xff09;&#xff1a; 一、选择日志框架并添加依赖&#xff08;以常见组合为例&#xff09; 1. Logback&#xff08;推荐&#xff09; <!-- Maven 依赖 --> <depende…

SpringCould微服务架构之Docker(3)

1&#xff09;什么是镜像和容器&#xff1f; 2&#xff09;DockerHub&#xff1a; 3&#xff09;docker的架构如下&#xff1a;

智慧高速,安全护航:视频监控平台助力高速公路高效运营

随着我国高速公路里程的不断增长&#xff0c;交通安全和运营效率面临着前所未有的挑战。传统的监控方式已难以满足现代化高速公路管理的需求&#xff0c;而监控视频平台的出现&#xff0c;则为高速公路的安全运营提供了强有力的技术支撑。高速公路视频监控联网解决方案 高速公路…

vue对文件进行加密,后台解密后保存

为什么要做加密解密&#xff1f;主要是避免第三方检测系统&#xff08;WAF&#xff09;检测出文件有问题&#xff0c;但是文件是用户上传的&#xff0c;我们控制不了这些文件&#xff0c;所以主要是通过对用户上传文件进行加密&#xff0c;后台解密后存储。 前端&#xff1a; …

AI 在测试中的应用:从自动化到智能化的未来

阅读原文 在上一篇中&#xff0c;我们探讨了测试左移与右移如何构建质量保障的全流程闭环。现在&#xff0c;我们将目光投向更前沿的领域——AI在测试中的应用。这不仅是技术的演进&#xff0c;更是测试理念的革命&#xff1a;从"自动化执行"到"智能决策"…

Python:计算机二级:简单应用

文章目录 简单应用第一题第二题第三题第四题题型共同特点核心知识点讲解解题通用方法步骤 操作的难点1.数据的统计2.数据的筛选1. **条件判断筛选**2. **结合文件操作筛选**3. **多条件组合筛选** 类似题目其它一题 简单应用 第一题 题目 在考生文件夹下的PY202.py文件中&…

SQL Server 2022常见问题解答

以下是SQL Server 2022的常见问题解答,按主题分类整理: 一、安装与升级 SQL Server 2022的系统要求是什么? 支持的操作系统:Windows Server 2016及以上、Linux(Ubuntu 20.04/22.04, RHEL 8/9等)。内存:至少4GB(建议8GB+)。磁盘空间:6GB以上,具体取决于安装组件。如何…

力扣hot100_二分查找

二分查找 hot100_34.在排序数组中查找元素的第一个和最后一个位置 给你一个按照非递减顺序排列的整数数组 nums&#xff0c;和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存在目标值 target&#xff0c;返回 [-1, -1]。 你必须设计…

PostgreSQL详解

第一章&#xff1a;环境部署与基础操作 1.1 多平台安装详解 Windows环境 图形化安装 下载EnterpriseDB安装包&#xff08;含pgAdmin&#xff09; 关键配置项说明&#xff1a; # postgresql.conf优化项 max_connections 200 shared_buffers 4GB work_mem 32MB 服务管理命…

conda install 慢

针对 Solving environment: failed with initial frozen solve. Retrying with flexible solve 错误&#xff0c;以下是综合解决方案&#xff1a; 一、核心解决方法‌ ‌更新 Conda 至最新版本‌ 旧版本 Conda 的依赖解析算法可能存在缺陷&#xff0c;执行以下命令升级&#…

# 使用自定义Shell脚本hello快速配置Linux用户账户

使用自定义Shell脚本快速配置Linux用户账户 在学校实验室管理Linux服务器&#xff0c;或者公司小团队管理服务器时&#xff0c;大家需要一个能隔离自己服务&#xff0c;但是自己又需要对服务器的完整权限的情形。创建和配置用户账户是一项常见但繁琐的任务。特别是当你需要频繁…

Unity Animation的其中一种运用方式

Animation是Unity的旧的动画系统&#xff0c;先说目的&#xff0c;其使用是为了在UI中播放动效&#xff0c;并且在动效播放结束后接自定义事件而设计的 设计的关键点在于&#xff0c;这个脚本不是通过Animation直接播放动画片段&#xff0c;而是通过修改AnimationState的nor…

matplotlib——南丁格尔玫瑰

南丁格尔玫瑰图&#xff08;Nightingale Rose Chart&#xff09;&#xff0c;是一种特殊形式的柱状图&#xff0c;它以南丁格尔&#xff08;Florence Nightingale&#xff09;命名&#xff0c;她在1858年首次使用这种图表来展示战争期间士兵死亡原因的数据。 它将数据绘制在极坐…

TensorFlow面试题及参考答案

目录 什么是 TensorFlow 的计算图?详细描述 TensorFlow 计算图的组成结构(节点、边、会话) 它与动态图(Eager Execution)的区别是什么?TensorFlow 静态计算图与动态图(Eager Execution)的区别及适用场景是什么? 解释张量(Tensor)的概念及其在 TensorFlow 中的作用…

6.go语言函数

Go语言中的函数是组织代码的最小单元&#xff0c;用于封装一段代码&#xff0c;完成特定的功能。函数的使用可以减少代码冗余&#xff0c;提高代码的可读性和可维护性。 函数的基本定义和语法 在Go语言中&#xff0c;定义一个函数的基本语法如下&#xff1a; func functionN…

SpringCould微服务架构之Docker(4)

Docker ce是社区版。 安装docker之前&#xff0c;先安装yum-util 。 安装docker之前&#xff0c;一定要先关闭防火墙。

Keepalived 实现高可用方案

Keepalived简介 ‌Keepalived‌ 是一个基于 ‌VRRP&#xff08;Virtual Router Redundancy Protocol&#xff09;协议‌的高可用性解决方案&#xff0c;主要用于实现‌服务故障自动切换&#xff08;Failover&#xff09;和负载均衡‌。通过管理虚拟 IP&#xff08;VIP&#xf…