LLM 的核心概念

已完成

对于有效使用 LLM 有几个非常重要的核心概念,即“标记”和“提示”。

  • 提示:提示是用于指示 LLM 的文本句子。 根据句子的措辞方式,你会获得不同的结果。
  • 令牌:标记可以是单个字符、单词的一小部分或整个单词。 单个标记可用于表示常用词,而不太常见的单词需要多个标记来表示。

提示

文本提示是一个句子。 LLM 能理解多种不同的语言。 你可以使用自己的语言编写提示,无需学习特定语言来使用 LLM。 请参阅以下提示的例子:

  • 生成一张戴着海盗帽的粉色鹦鹉的图片。

  • 用 Python 创建一个处理客户的 Web 应用。

你越具体地介绍你的需求,结果就越好。

令牌

标记是 LLM 可以理解和处理的基本单元文本或代码。

OpenAI 自然语言模型不以文本单位的形式对单词或字符进行操作,而是针对一个介于两者之间的概念:标记。

OpenAI 提供了一个有用的 tokenizer 网站,可帮助你了解它如何将你的请求标记化。 有关详细信息,请参阅 OpenAI tokenizer

注意

在 OpenAI tokenizer 提示框中开始输入后,会显示一个计数器来计算框中的标记总数。

如果你正在主动输入,则计数器可能需要几秒钟才能更新。

以下字词中有多少个标记?

让我们尝试确定以下字词的标记数:appleblueberriesSkarsgård

由于字词 apple 是一个常见词,它需要一个标记来表示。 另一方面,字词 blueberries 需要两个标记(blueberries)来表示。 除非字词很常见,否则正确的名称(例如 Skarsgård)需要多个标记来表示。

此标记表示形式使得 AI 模型可以生成任何字典中都找不到的字词,而无需逐字母生成文本。

注意

逐字母生成文本很容易导致胡言乱语。

补全的工作原理是什么?

自然语言模型以非确定性的方式一次生成一个标记的补全。

在每个步骤中,模型都会发出一个标记列表及其关联的权重。 然后,API 会根据标记的权重从列表中采样一个标记。 高加权的标记更有可能被选中。

Diagram showing multiple square blocks that represent n number of input tokens with an arrow beside them pointing to one square block that represents one output token.

API 将所选标记添加到提示中,并重复该过程,直到达到补全的最大标记长度或直到模型生成了一个名为“停止标记”的特殊标记,该标记会阻止生成新标记。

正是此非确定性过程使我们每次发送补全请求时模型能够生成新字词。

注意

每个 LLM 对可以生成的标记数有限制。 在补全中,此限制适用于原始提示中的标记总数以及新生成的标记总数,它们会加在一起。 有关标记限制的详细信息,请参阅 Azure OpenAI 服务模型

有更高的令牌上限,就可以有更长的补全和大得多的提示。