基于 Transformer 架构的大语言模型正在各个领域取得突破性成果。提示词工程(Prompt Engineering)在其中的角色至关重要。
用好提示词,研究人员和开发者能够引导模型在特定任务上表现得更优秀。这种方法不仅能够显著提升模型的性能,还能够增强模型的适应性,使其在面对各种复杂任务时更加灵活和高效。
此外,提示词工程还能优化模型的学习过程,提高复杂问题处理效率,减少训练时间和计算资源需求。
相较于传统的微调方法,提示词工程能以极低成本使模型适应多个下游任务,大幅节省计算资源和数据收集成本。然而,设计有效的提示词对非专业人士而言仍具挑战性,往往需要大量学习和实践。
直接利用大语言模型进行自动提示工程通常难以取得理想效果。不恰当的提示可能分散模型注意力,反而降低性能。因此,开发一个能辅助用户,操作简便的自动提示工程系统变得尤为重要。
PAS:突破性的自动提示工程系统
为应对这一挑战,北京大学 - 百川联合实验室提出了 PAS 自动提示工程系统。PAS 的创新之处在于:
1. 设计高质量的自动提示数据集
2. 对 GPT 模型进行少样本学习和数据筛选
3. 自动构建精简而高效的提示数据集
4. 通过微调实现有效的自动提示工程
PAS 能够对用户输入进行简洁而有效的补充,实现快速、简单且支持流式显示的自动提示工程。
在多个基准测试中,PAS 的表现远超既有的 SOTA 模型,且所需数据量更少。人工评测结果同样显示 PAS 具有优异表现,凸显了其在实际应用中的巨大潜力。
这一突破性成果不仅推动了提示词工程的发展,也为大语言模型在更广泛领域的应用铺平了道路。
-
论文地址:https://arxiv.org/abs/2407.06027
-
PKU-Baichuan-MLSystemLab:
https://github.com/PKU-Baichuan-MLSystemLab
https://huggingface.co/PKU-Baichuan-MLSystemLab
方法
训练 PAS 主要分为三步:
第一步:构建高质量问题数据集
训练 PAS 的首要任务是建立一个高质量的问题数据集。如图 (a) 所示,研究人员根据 LMSYS-1M 和 WildChat 数据集,通过以下三方面筛选出优质问题:
1. 数据去重:运用 embedding 技术结合聚类算法,有效去除重复数据。
2. 质量筛选:利用百川大模型对数据质量进行评估和筛选。
3. 多样性保证:最终选出覆盖 10 多个类别的 9000 条高质量问题数据。
第二步:补充提示工程数据
在这一阶段,研究人员综合利用内部积累的 100 条高质量数据和第一步筛选的问题数据,通过 few-shot learning 方法,借助 GPT 模型构建自动提示工程数据:
1. 初始数据生成:使用 few-shot learning 指导 GPT 生成初步的提示工程数据。
2. 质量控制:设计 Critique 步骤,再次利用 few-shot learning 让 GPT 评估生成数据的质量。
3. 迭代优化:自动筛除低质量数据,并重新生成,通过多轮迭代确保数据质量。
4. 最终成果:最终得到 9000 条高质量的自动提示工程数据。
数据分布
生成的 9000 条数据的分布情况如上图所示,确保了数据的多样性和代表性。
第三步: 微调自动提示模型
最后一步将利用前两个阶段获得的数据集来微调大型语言模型:
1. 选择基础模型:如 Qwen2-7b 等模型。
2. 定向微调:使用高质量数据集进行微调。
3. 专业化训练:最终得到一个专门用于自动提示工程的大语言模型。
实验及结果
人工评测
根据人类评估员的测评,相比先前的 SOTA(State-of-the-Art)模型,PAS 在各领域均展现出较高的胜率。在多个领域的平均胜率超过 50%,胜率与平局率之和更是高达 80% 以上。
机器评测 Benchmark
为全面评估 PAS 的性能,研究人员选择了Arena-Hard、Alpaca-Eval 2.0、Alpaca-Eval 2.0 (LC) 三个 benchmark。
随后,研究人员将 PAS 应用于六个顶尖的 AI 模型,包括:
-
GPT-4(三个版本)
-
GPT-3.5
-
Qwen2-72-Instruct
-
LLaMA3-70B-Instruct
评测结果显示:
-
相较于无提示情况和先前的 SOTA 自动提示工程模型,PAS 均取得了显著提升。
-
与之前的 BPO 模型相比,PAS 展现出更强的适应性,能够与各种超大模型兼容,并在每个模型上都实现了性能提升。
计算效率分析
PAS 不仅在性能上表现卓越,其计算效率也非常高:在数据效率方面,它仅需 9000 条微调数据便能展现出卓越性能。在输出效率方面,它能够限制补充自动提示的长度,通常不超过 30 个词。
对于用户体验而言,PAS 也为大模型带来了增益,具体来说:
-
与 BPO 等先前模型不同,PAS 无需修改用户的原始问题,仅进行补充自动提示。
-
提供极佳的用户体验,响应时间可控。
-
支持类似 GPT 的流式显示,进一步提升交互体验。
实例:PAS 帮助大模型绕开逻辑陷阱
「如果树上有 10 只鸟,其中一只被射死了,地上有多少只鸟?」
这个看似简单的问题实际上隐藏着一个巧妙的逻辑陷阱,你看到它可能也需要反应几秒,才知道树上还剩 9 只鸟,而地上只有 1 只。
正如图上所示,在没有 PAS 辅助的情况下,GPT 给出了错误的回答。而 PAS 系统通过补充提示词,显著改善了模型的表现:
在 PAS 的引导下,模型新一轮的回答展现出了显著的提升,不仅成功规避了问题中的逻辑陷阱,展示了清晰的、多步骤的逻辑推理过程,还能在给出正确答案之外引导用户理解整个推理过程。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。