大模型计费的token是什么

767 阅读2分钟

在大语言模型(如GPT-4)中,token是用于表示输入文本和生成输出文本的基本单元。token的计算方式取决于模型使用的tokenization方法。以下是关于大模型中token的详细解释和几个例子:

1. tokenization的概念

tokenization是将文本拆分成更小的单元(token)的过程。大模型常用的tokenization方法包括:

  • 字符级tokenization:每个字符作为一个token。
  • 词级tokenization:每个单词作为一个token。
  • 子词级tokenization(如BPE、WordPiece、SentencePiece):将单词拆分为子词或词片段,以处理未登录词(未见过的单词)和词汇量问题。

2. 什么算一个token

具体来说,在使用子词级tokenization方法时,一个token可以是:

  • 一个完整的单词(如常见的短单词)。
  • 一个单词的一部分(尤其是较长或不常见的单词)。
  • 一个标点符号或空格。

3. 例子

以下是使用子词级tokenization方法(如GPT-3和GPT-4所用的BPE算法)时的一些具体例子:

示例1:常见单词

句子:“I am happy.”

  • “I” -> ["I"]
  • “am” -> ["am"]
  • “happy” -> ["happy"]
  • “.” -> ["."]

总计:4个token

示例2:较长单词

句子:“unhappiness”

  • “unhappiness” -> ["un", "happiness"]

总计:2个token("un" 和 "happiness")

示例3:不常见单词

句子:“tokenization”

  • “tokenization” -> ["token", "ization"]

总计:2个token("token" 和 "ization")

示例4:带有标点符号的句子

句子:“Hello, world!”

  • “Hello” -> ["Hello"]
  • “,” -> [" ,"](注意前面的空格)
  • “world” -> ["world"]
  • “!” -> ["!"]

总计:4个token

4. token计数的重要性

在大语言模型中,token计数非常重要,因为:

  • 输入限制:模型对输入文本的长度有严格限制,通常以token数量为单位。超过限制的输入会被截断。
  • 计算成本:生成文本时的计算成本(时间和资源)与token数量直接相关。较长的输入或输出会消耗更多的计算资源。

5. token计算工具

为了准确计算token数量,可以使用模型提供的tokenizer工具。例如,OpenAI提供了tiktoken库来计算GPT-3和GPT-4的token数量。

总结

在大模型中,token是表示输入和输出文本的基本单元,通常通过子词级tokenization方法生成。了解和计算token数量对于有效使用大语言模型至关重要,有助于管理输入限制和计算资源。