大模型系列:Prompt提示工程常用技巧和实践

前言

Prompt提示语是使用大模型解决实际问题的最直接的方式,本篇介绍Prompt提示工程常用的技巧,包括Zero-Shot、Few-Shot、CoT思维链、Least-to-Most任务分解。


内容摘要
  • Prompt提示工程简述
  • Prompt的一般结构介绍
  • 零样本提示Zero-Shot
  • 少样本提示Few-Shot
  • 思维链提示CoT
  • 任务分解Least-to-Most

Prompt提示工程简述

Prompt提示语,指的是设计和编写提示文本,以引导模型生成符合特定要求的语言输出。Prompt能够帮助语言模型回忆起自己在预训练时学习到的东西,合适的Prompt对于提示学习的效果至关重要,因此产生了提示工程专门研究如何设计Prompt,目的是找到最优的提示语,使得模型的性能和效率达到最高,以适应不同的任务和应用场景。

对各种模型设计不同的Prompt


Prompt的一般结构介绍

Prompt的一般结构包含4个部分,任务指令、背景信息、附加内容、输出要求

  • 任务指令:明确给到大模型需要执行的任务,比如扮演角色身份,给出内容方案
  • 背景信息:提供任务和上下文背景,从而生成更相关的输出
  • 附加内容:额外补充信息,包括领域知识库,参考样例等等
  • 输出要求:指定输出的格式,比如JSON格式,限定输出在某几个选项内,限制不允许编造成分等等

Prompt中并非要包含以上所有部分,可以根据需要自行组合搭配。举个例子,需要让大模型输出一个去苏州旅游的攻略,Prompt结构如下

Prompt结构式例


零样本提示Zero-Shot

零样本提示Zero-Shot,是指没有任何相关数据的参照下,直接对模型进行提问,用自然语言指令让模型输出内容完成一个任务,例如用通过对话模型生成式地完成情感分类任务

通过Zero-Shot进行情感分类

再例如完成命名实体识别的任务,提取出文本中的关键要素,从提取结果来看完全正确且没有遗漏,但是格式并没有按照要求的JSON来

Zero-Shot完成命名实体识别

Zero-Shot这种方式最为方便,但是由于没有任何相关数据给到模型参照,所以模型可能难以彻底按照任务要求和输出要求进行文本生成,尤其是对于难以用自然语言来描述清楚的任务。


少样本提示Few-Shot

少样本提示Few-Shot是指,在用自然语言描述的任务中加入少量相关的任务例子,使得模型更加充分地理解任务的目标和输出要求,增加任务完成的准确性,还是以情感分类为例,对模型进行Few-Shot如下

通过Few-Shot进行情感分类

同理针对命名实体识别,也可以给到一些例子,Few-Shot如下

Few-Shot完成命名实体识别提问

模型生成内容如下,模型提取得非常准确,并且模型参照了给的例子进行了JSON格式的输出,而在Zero-Shot中并虽然提示语句中要求了JSON格式,但并没有按照JSON生成,由此可推测Few-Shot下模型会更容易地参照用户的需求进行文本生成

Few-Shot完成命名实体识别结果

特别的,当给到的参考例子只有一条时,此时属于One-Shot提示。


思维链提示CoT

思维链提示(Chain-of-Thought,CoT),常用于推理规划类问题,包括逻辑推理,数学推理,常识推理等,相比于语言语境能力,推理问题对于大语言模型而言更难,因为对于推理问题,大模型的训练是把推理结果作为下一个词直接预测,而忽略了中间的思考过程,而人类在面对推理问题时往往是逐步求解,最后得到任务的答案。思维链提示的目的就是让明确告诉模型先输出中间过程,再逐步运算生成答案。
以一个简单的数学题问大模型(Chatglm2-6B),让模型计算出最后的结果,采用直接提问的方式,问题和回答如下

直接提问推理问题

很明显,模型回答的是错误的,正确答案应该是11,我们采用思维链提示的方式再试一次,具体是给到模型一条类似的题目,并且告诉模型解题步骤,解题步骤包括中间过程和最终的结果,使得对该类问题模型采用这种逐步的思考方式进行回答,提问和回答如下

思维链的方式提问推理问题

显然模型回答正确,且逻辑清晰,中间过程和结果都回答得很好。
除了给到参考解题例子之外,研究人员提出零样本思维链提示,只需要在问题结尾加上**”让我们逐步思考“**这个魔法语句,模型就能够实现逐步推理,我们以这种方式进行提问试验一下

零样本思维链提示回答推理问题

同样得到了正确的结果,显然思维链提示CoT对于推理问题比直接提问更有效。


任务分解Least-to-Most

任务分解,也被叫作由少到多提示(Least-to-Most),旨在当面对复杂提问时,将其转化为多个容易解决的子问题,并逐一解决它们得到最后的结果。任务分解的方式和思维链类似,区别在于任务分解会进行多轮问答,并且之前子问题的回答会加入到下一次的提问中,相当于逐步填充问题的上下文,降低复杂多步推理问题的难度。
我们同样先做对比,对模型直接提问一个计算题,问题和回答如下

直接对模型提问复杂问题

很明显答案错误,正确答案应该是5桶。下面我们采用任务分解的形式,首先提问模型解决这个问题需要先完成哪个子问题

回答子问题是什么

模型说了一大堆,第一句话就已经回答出了子问题,即要先解决购物劵总额的问题,我们将这个问题加入到原始提问中,让模型先回答出这个子问题的答案

回答子问题的答案

子问题回答正确,购物劵总额是500元,下一步就可以直通最终问题了,我们将子问题和子问题的答案拼接到原始提问上,形成最终的Prompt

最终模型回答为5桶,回答正确,且模型回答的逻辑清晰完美,印证了任务分解这种方式能够提高对复杂问题的推理准确性,全文完毕。

如何系统的去学习大模型LLM ?

作为一名热心肠的互联网老兵,我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。

但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的 AI大模型资料 包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来

😝有需要的小伙伴,可以V扫描下方二维码免费领取🆓

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

img

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

img

在这里插入图片描述

四、AI大模型商业化落地方案

img

阶段1:AI大模型时代的基础理解

  • 目标:了解AI大模型的基本概念、发展历程和核心原理。
  • 内容
    • L1.1 人工智能简述与大模型起源
    • L1.2 大模型与通用人工智能
    • L1.3 GPT模型的发展历程
    • L1.4 模型工程
    • L1.4.1 知识大模型
    • L1.4.2 生产大模型
    • L1.4.3 模型工程方法论
    • L1.4.4 模型工程实践
    • L1.5 GPT应用案例

阶段2:AI大模型API应用开发工程

  • 目标:掌握AI大模型API的使用和开发,以及相关的编程技能。
  • 内容
    • L2.1 API接口
    • L2.1.1 OpenAI API接口
    • L2.1.2 Python接口接入
    • L2.1.3 BOT工具类框架
    • L2.1.4 代码示例
    • L2.2 Prompt框架
    • L2.2.1 什么是Prompt
    • L2.2.2 Prompt框架应用现状
    • L2.2.3 基于GPTAS的Prompt框架
    • L2.2.4 Prompt框架与Thought
    • L2.2.5 Prompt框架与提示词
    • L2.3 流水线工程
    • L2.3.1 流水线工程的概念
    • L2.3.2 流水线工程的优点
    • L2.3.3 流水线工程的应用
    • L2.4 总结与展望

阶段3:AI大模型应用架构实践

  • 目标:深入理解AI大模型的应用架构,并能够进行私有化部署。
  • 内容
    • L3.1 Agent模型框架
    • L3.1.1 Agent模型框架的设计理念
    • L3.1.2 Agent模型框架的核心组件
    • L3.1.3 Agent模型框架的实现细节
    • L3.2 MetaGPT
    • L3.2.1 MetaGPT的基本概念
    • L3.2.2 MetaGPT的工作原理
    • L3.2.3 MetaGPT的应用场景
    • L3.3 ChatGLM
    • L3.3.1 ChatGLM的特点
    • L3.3.2 ChatGLM的开发环境
    • L3.3.3 ChatGLM的使用示例
    • L3.4 LLAMA
    • L3.4.1 LLAMA的特点
    • L3.4.2 LLAMA的开发环境
    • L3.4.3 LLAMA的使用示例
    • L3.5 其他大模型介绍

阶段4:AI大模型私有化部署

  • 目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。
  • 内容
    • L4.1 模型私有化部署概述
    • L4.2 模型私有化部署的关键技术
    • L4.3 模型私有化部署的实施步骤
    • L4.4 模型私有化部署的应用场景

学习计划:

  • 阶段1:1-2个月,建立AI大模型的基础知识体系。
  • 阶段2:2-3个月,专注于API应用开发能力的提升。
  • 阶段3:3-4个月,深入实践AI大模型的应用架构和私有化部署。
  • 阶段4:4-5个月,专注于高级模型的应用和部署。
这份完整版的大模型 LLM 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

😝有需要的小伙伴,可以Vx扫描下方二维码免费领取🆓

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

企业化运维(3)_PHP、nginx结合php-fpm、memcache、openresty、goaccess日志可视化

###1.PHP源码编译### 解压PHP压缩包,切入PHP目录,进行configure-->make-->make installd三部曲 [rootserver1 ~]# yum install -y bzip2 systemd-devel libxml2-devel sqlite-devel libpng-devel libcurl-devel ##依赖性 [rootserver1 ~]# yum…

python如何对list求和

如何在Python中对多个list的对应元素求和,前提是每个list的长度一样。比如:a[1,2,3],b[2,3,4],c[3,4,5],对a,b,c的对应元素…

Maven常用命令介绍(Ⅰ)

基本命令 Maven生命周期 Maven的生命周期是对所有的构建过程进行抽象和统一。Maven的生命周期是抽象的,这意味着生命周期本身不做任何实际的工作,生命周期只是定义了一系列的阶段,并确定这些阶段的执行顺序。而在执行这些阶段时,…

父亲节马上到了-和我一起用Python写父亲节的祝福吧

前言 让我们一起用Python写一段父亲节的祝福吧 📝个人主页→数据挖掘博主ZTLJQ的主页 个人推荐python学习系列: ☄️爬虫JS逆向系列专栏 - 爬虫逆向教学 ☄️python系列专栏 - 从零开始学python 话不多说先上代码 import tkinter as tk from doctest imp…

MEMS:Lecture 16 Gyros

陀螺仪原理 A classic spinning gyroscope measures the rotation rate by utilizing the conservation of angular momentum. 经典旋转陀螺仪通过利用角动量守恒来测量旋转速率。 Coriolis Effect and Coriolis Force 科里奥利效应是一种出现在旋转参考系中的现象。它描述了…

显示类控件——Label

🐌博主主页:🐌​倔强的大蜗牛🐌​ 📚专栏分类:QT ❤️感谢大家点赞👍收藏⭐评论✍️ 文章目录 一、Label介绍属性代码示例: 显示不同格式的文本代码示例: 显示图片代码示例: 文本对齐, 自动换行…

PFA 反应罐内衬特氟龙 润滑绝缘行业加工 匠心工艺

PFA反应罐别名也叫反应瓶,储样罐,清洗罐等。可作为样品前处理实验中消解样品和中低压溶样的反应容器,广泛应用于半导体分析、新材料、新能源、同位素分析等。 PFA反应罐规格参考:250ml、300ml、350ml、500ml、1L等。 产品特点&…

大众点评js逆向过程(未完)

1、这里mtgsig已经被拼到url中 2、进入后mtgsig已经计算完, ir he(this[b(4326)], !1), 就是加密函数 32 次 796 1143 ->508 -> 754 -> 1151 160 注意IC这个数组 控制流平坦化进行AST 解析 AST网址

Swift开发——循环执行方式

本文将介绍 Swift 语言的循环执行方式 01、循环执行方式 在Swift语言中,主要有两种循环执行控制方式: for-in结构和while结构。while结构又细分为当型while结构和直到型while结构,后者称为repeat-while结构。下面首先介绍for-in结构。 循环控制方式for-in结构可用于区间中的…

2024全新仿麻豆视频苹果cms源码v10影视模板

下载地址:2024全新仿麻豆视频苹果cms源码v10影视模板 高端大气的设计,适合做电影、连续剧、综艺、动漫、微电影、纪录片、海外剧等视频网站

【秋招突围】2024届秋招笔试-小红书笔试题-第一套-三语言题解(Java/Cpp/Python)

🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员 ✨ 本系计划跟新各公司春秋招的笔试题 💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 📧 清隆这边…

Nginx实战:故障处理_后端服务正常,nginx偶发502(Bad Gateway)

一、故障场景 用户访问服务偶发报错【502 Bad Gateway】,但是服务后端正常运行。架构如下: #mermaid-svg-4dDszusKEuPgIPlt {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-4dDszusKEuPgIPlt…

axios打通fastapi和vue,实现前后端分类项目开发

axios axios是一个前后端交互的工具,负责在前端代码,调用后端接口,将后端的数据请求到本地以后进行解析,然后传递给前端进行处理。 比如,我们用fastapi写了一个接口,这个接口返回了一条信息: …

攻防世界-fakebook题目__详解

1.打开题目先用dirsearch工具扫描一波,扫出来了robots.php目录,然后访问robots.txt 目录,发现了有一个备份文件 ,访问备份文件,下载内容 文件的大致内容如下 里面有一个curl_exec这个函数容易造成ssrf攻击的漏洞 我…

监控神器vnStat初探

文章目录 一、概述二、官方docker部署1. vnStat守护进程和HTTP服务器在同一容器中运行2. 双容器运行,vnstat容器收集数据,vnstati容器提供web服务 三、修改后的编排文件四、运行结果五、停止监控不感兴趣的网卡 一、概述 vnStat是一款网络流量监测工具&…

微服务SpringCloud ES分布式全文搜索引擎简介 下载安装及简单操作入门

Elasticsearch ES简介 分布式全文搜索引擎 我们天天在用ES 搜索的时候 要与多个信息进行匹配查找 然后返回给用户 首先 ES会将数据库中的信息 先进行一个拆分 这个叫做分词 是按照词语关键词拆的 然后就能进行搜索的时候匹配对应的id 每一个关键字对应若干id 每一个…

算法day32

第一题 207. 课程表 步骤一: 通过下图的课程数组,首先画出DAG图(有向无环图) 步骤二: 其次我们按照DAG图,来构建该图的拓扑排序,等有效的点都按照规则排完序后,观察是否有剩下的点的入度不为0&…

【靶场搭建】-01- 在kali上搭建DVWA靶机

1.DVWA靶机 DVWA(Damn Vulnerable Web Application)是使用PHPMysql编写的web安全测试框架,主要用于安全人员在一个合法的环境中测试技能和工具。 2.下载DVWA 从GitHub上将DVWA的源码clone到kali上 git clone https://github.com/digininj…

远程问诊软件哪款好?选欣九康诊疗系统

近几年国家相继推出了支持发展“互联网医疗”的政策,如今随着相关政策的不断落实推进,市场上涌现出了一大批在线咨询、电子处方和远程问诊的医疗平台,而在面对种类如此繁多的医疗平台究竟选择哪款更好便成了医疗机构非常头疼的事情&#xff0…

Mac平台上公认的最好的下载工具Folx Pro 5 for Mac激活码

Folx是什么 Folx Pro 5 for Mac是Mac平台上公认的最好的下载工具,功能可以与迅雷相媲美。 Folx是一款老牌下载神器,可通过URL链接和种子文件下载文件,同时提供了便捷的下载管理和灵活的应用设置,Folx可以对下载的资源进行分类&a…