提示工程简介

ChatGPT 是 OpenAI 提供的一项服务,它是一个会话式大型语言模型。它非常普及,并且被发现非常有用了。在幕后,它是一个大型语言模型。与您提供的开头句子继续生成文本的其他大型语言模型不同,ChatGPT 允许您提问或提供指令,模型会像聊天一样响应。要让 ChatGPT 正确响应,您必须与模型进行交互。这种技术称为提示工程。

在本文中,您将了解 ChatGPT 作为大型语言模型,并学习提示工程。特别是,

  • ChatGPT 中大型语言模型的输入上下文是什么
  • ChatGPT 如何与输入交互
  • 如何提供合适的提示以获得所需的结果

立即开始使用 ChatGPT,阅读我的书 《ChatGPT 提高生产力》。它提供了真实世界的用例提示示例,旨在帮助您快速使用 ChatGPT。


让我们开始吧。

提示工程简介
图片由作者使用 Stable Diffusion 生成。保留部分权利。

概述

本文分为三个部分:

  • 理解 ChatGPT
  • 工程上下文
  • 提示工程建议

理解 ChatGPT

ChatGPT 是一个会话式大型语言模型。语言模型可以根据前面的文本生成单词。会话式大型语言模型是自然的变化。如果您读过戏剧,例如莎士比亚写的以下示例,您应该注意到对话是多个人之间的对话。

亚伯拉罕:您是在冲我们竖起大拇指,先生?

撒母耳:是的,先生,我是在竖起大拇指。

亚伯拉罕:您是在冲我们竖起大拇指,先生?

撒母耳:如果我说——是的,法律是在我们这边吗?

格雷:不是。

撒母耳:不,先生,我不是在冲您竖起大拇指,先生;但我是在竖起大拇指,先生。

如果您将对话的前四行输入语言模型,那么它生成第五行是可以预期的。由于模型已从海量文本中学习,因此戏剧的格式只是它理解的一种样式。因为模型能够理解上下文,所以它的单词应该与前面的文本自然地衔接,就好像它是聊天中的正确响应一样。

工程上下文

在使用大型语言模型生成文本时,上下文在确定输出方面起着至关重要的作用。对于 ChatGPT,上下文来自之前的对话。为了确保 ChatGPT 以期望的方式响应,仔细构建输入以提供必要的线索至关重要。

虽然 ChatGPT 是一个强大的语言模型,但它也有其局限性。尽管它从训练数据中获得了一些基本的“常识”,但它可能无法展示详细的逻辑推理。例如,如果您要求 ChatGPT “提供有关机器学习的信息”,它可能会给出一个冗长但未必高质量的答案。但是,如果您问“告诉我使用机器学习解决图像分类问题的优缺点”,您更有可能获得更好的结果,因为

  • 您提供了一个特定的范围,即图像分类问题
  • 您要求了特定的响应格式,即优缺点

类似的情况是,当您提出一个复杂的问题时,例如下面的数学应用题

为了准备复活节,史密斯夫人去一家商店,以每只 5 美元的价格购买了 10 个玩具兔子。巧克力蛋比兔子便宜 1 美元,史密斯夫人买了 15 个。史密斯夫人花了多少钱?

ChatGPT 的较新版本可能可以正确处理,但如果大型语言模型试图立即给出答案,这类问题很容易出错。原因是,当您尝试生成简短答案时,上下文需要更多线索来保持逻辑正确。但是,当大型语言模型尝试分步列出逻辑时,很容易正确进行计算。因此,有人建议您不要问 ChatGPT“史密斯夫人花了多少钱”,而是问“详细说明史密斯夫人花了多少钱”。这些是迫使 ChatGPT 进行逻辑推理的线索。例如,您可能会观察到以下答案

为了计算史密斯夫人花了多少钱,我们需要分别计算玩具兔子和巧克力蛋的成本,然后将它们加起来。

史密斯夫人以每只 5 美元的价格购买了 10 个玩具兔子,因此兔子的总成本是 10 * 5 美元 = 50 美元。

每个巧克力蛋比玩具兔子便宜 1 美元,因此每个巧克力蛋的成本是 5 美元 – 1 美元 = 4 美元。

史密斯夫人购买了 15 个巧克力蛋,因此巧克力蛋的总成本是 15 * 4 美元 = 60 美元。

最后,要找出史密斯夫人总共花了多少钱,我们将兔子的成本和巧克力蛋的成本相加:50 美元 + 60 美元 = 110 美元。

因此,史密斯夫人总共花了 110 美元。

您可以看到大型语言模型如何给出正确答案。大型语言模型无法进行心算,并且逻辑能力有限(由于它是基于文本训练的,它学习到的信息量相当于单个句子所能表达的内容)。如果存在更复杂的逻辑,您必须确保模型循序渐进。这被称为思维链

提示工程建议

以下是一些构建上下文以使 ChatGPT 或其他大型语言模型产生有用输出的思路:

  • 不要让模型随意发挥,而应在提示中通过提供有关什么、在哪里、何时、为什么、谁和如何的详细信息来设置场景和范围。
  • 在提示中指定一个角色,例如“作为一名计算机科学教授,解释什么是机器学习”,而不是简单地说“解释什么是机器学习”,可以让回应更具学术性。
  • 您可以通过要求“向 5 岁孩子解释”、“用类比来解释”、“进行令人信服的陈述”或“分 3 到 5 点说明”来控制输出样式。
  • 为了鼓励模型以思维链方式响应,请在请求末尾加上“分步解决此问题”。
  • 您可以通过说“参考以下信息”并在后面附上您希望模型处理的材料来向模型提供额外信息。
  • 由于之前的对话构建了上下文,因此以“忽略此之前的任何指令”开头提示可以使模型从头开始。
  • 使提示简单易懂至关重要,因为推断出的上下文才能更准确地反映您的意图。

总结

在本文中,您了解了提示如何驱动大型语言模型的输出,特别是 ChatGPT。具体而言,您学习了。

  • 提示如何设置上下文,以便模型可以在上下文中生成输出
  • 大型语言模型是有限的;您需要提供正确的提示指导以生成准确的输出。
  • 提供具体、详细的提示有助于获得正确的输出

利用 ChatGPT 最大化你的生产力!

Maximizing Productivity with ChatGPT

让生成式 AI 助您更智能地工作

...通过利用 ChatGPT、Google Bard 和许多其他在线工具的先进 AI 力量

在我的新电子书中探索如何实现
使用 ChatGPT 最大化生产力

它提供了各种类型的出色提示和示例,让你成为 AI 机器人的老板
用于头脑风暴编辑专家助手翻译器等等...

使用我的最新著作让 AI 为你工作


查看内容

暂无评论。

发表评论

Machine Learning Mastery 是 Guiding Tech Media 的一部分,Guiding Tech Media 是一家领先的数字媒体出版商,专注于帮助人们了解技术。访问我们的公司网站以了解更多关于我们的使命和团队的信息。