国都建设(集团)有限公司网站,营销推广与策划,网站建设类岗位杭州,wordpress 2018大模型的目标是理解和生成人类语言。给定一些词语#xff0c;语言模型可以预测下一个词语可能是什么#xff0c;或者给定的一些词语生层对应内容。
那么如何引导它们产生期望的输出#xff0c;或者说如何提问#xff0c;就成为了一个关键的问题。这就引入了一个重要的概念…大模型的目标是理解和生成人类语言。给定一些词语语言模型可以预测下一个词语可能是什么或者给定的一些词语生层对应内容。
那么如何引导它们产生期望的输出或者说如何提问就成为了一个关键的问题。这就引入了一个重要的概念即Prompt Engineering也就是提示工程。
什么是提示词Prompt
如何向大语言模型提问或者更好的提问就是指提示词Prompt提示词是给LLM大语言模型的指令它可以是一个问题、一段文字描述甚至可以是带有一堆参数的文字描述。LLM会基于 prompt 所提供的信息生成对应的内容从而获得符合预期的结果。
什么是提示工程Prompt Engineering
Prompt Engineering 是一种人工智能AI技术它通过设计和改进 AI 的 prompt 来提高 AI 的表现。通俗而言是指如何在不更新模型权重的情况下与 LLM 进行沟通以引导LLM的输出得到更有意义结果的方法。Prompt Engineering 的目标是创建高度有效和可控的 AI 系统使其能够准确、可靠地执行特定任务。但是我们要知道我们发给大模型的 prompt不会改变大模型的参数。和大模型对话不会让 ta 变聪明或变笨。但对话历史数据可能会被用去训练大模型。
学会提示工程就像学用鼠标、键盘一样是 AGI 时代的基本技能。
「Prompt」 是 AGI 时代的「编程语言」「Prompt 工程」是 AGI 时代的「软件工程」「提示工程师」是 AGI时代的「程序员」
想让机器很好地理解人类说的话还需要一个过程因为人类的语言从根本上说是不精确的这个过程可能3年可能5年但不会太长。即使过程不会太长但提示工程依然是需要我们掌握的。
Prompt 的典型构成
角色给 AI 定义一个最匹配任务的角色比如「你是一位软件工程师」「你是一位小学老师」 指示对任务进行描述 上下文给出与任务相关的其它背景信息尤其在多轮交互中 例子必要时给出举例学术中称为 one-shot learning, few-shot learning 或 in-context learning实践证明其对输出正确性有很大帮助 输入任务的输入信息在提示词中明确的标识出输入 输出输出的格式描述以便后继模块自动解析模型的输出结果比如JSON、XML
类似下边例子可以指定角色给定描述然后提出问题
提示工程种类
随着提示工程的进步可以分为三类
Zero-shot仅使用当前任务的自然语言描述不进行任何梯度更新One-shot当前任务的自然语言描述加上一个简单的输入输出样例不进行任何梯度更新Few-shot当前任务的自然语言描述加上几个简单的输入输出样例不进行任何梯度更新
chatGPT 的发展史就是从 zero-shot 到 few-shot。
Zero-shot Learning
Zero-shot learning零样本学习零样本学习是指该模型可通过从未见过的类别进行分类使机器具有推理能力实现真正的智能。
从原理上来说ZSL 就是让计算机模拟人类的推理方式来识别从未见过的新事物。之所以独立出来是因为它解决问题的思路不同于传统的机器学习方法。
首先通过一个例子来引入zero-shot的概念。假设小明和爸爸到了动物园看到了马然后爸爸告诉他这就是马之后又看到了老虎告诉他“看这种身上有条纹的动物就是老虎。”最后又带他去看了熊猫对他说“你看这熊猫是黑白色的。”然后爸爸给小明安排了一个任务让他在动物园里找一种他从没见过的动物叫斑马并告诉了小明有关于斑马的信息“斑马有着马的轮廓身上有像老虎一样的条纹而且它像熊猫一样是黑白色的。”最后小明根据爸爸的提示在动物园里找到了斑马。
上述例子中包含了一个人类的推理过程就是利用过去的知识马老虎熊猫和斑马的描述在脑海中推理出新对象的具体形态从而能对新对象进行辨认。如图1所示ZSL就是希望能够模仿人类的这个推理过程使得计算机具有识别新事物的能力。 ZSL就是希望我们的模型能够对其从没见过的类别进行分类让机器具有推理能力实现真正的智能。其中零次Zero-shot是指对于要分类的类别对象一次也不学习。
One-Shot Learning
一次样本学习One-Shot Learning是一种只需要一个样本就能学习新类别的方法。这种方法试图通过学习样本之间的相似性来进行分类。例如当我们只有一张狮子的照片时一次样本学习可以帮助我们将新的狮子图像正确分类。
Few-Shot Learning
少样本学习Few-Shot Learning是介于零样本学习和一次样本学习之间的方法。它允许模型在有限数量的示例下学习新的类别。相比于零样本学习少样本学习提供了更多的训练数据但仍然相对较少。这使得模型能够从少量示例中学习新的类别并在面对新的输入时进行准确分类。
Prompt 调优
找到好的 prompt 是个持续迭代的过程需要不断调优。比如按照模型友好的格式提供prompt更有利于得到我们想要的答案。
OpenAI GPT 对 Markdown 格式友好OpenAI 官方出了 Prompt Engineering 教程并提供了一些示例Claude 对 XML 友好。
另外高质量 prompt 核心要点是具体、丰富、少歧义。 最有效的方式就是多试「试」是常用方法有时一字之差对生成概率的影响都可能是很大的。