1、前言
在人工智能领域,尤其是自然语言处理(NLP)中,GPT(Generative Pre-trained Transformer)模型已经成为了一个重要的里程碑。它不仅开启了机器理解和生成人类语言的新纪元,而且通过高效的交互方式——Prompting,极大地拓展了AI的应用范围。本文将介绍Token的基础知识,并通过正反两面的例子,展现Prompt在GPT使用中的重要性。
2、Token的基础知识
在深入理解Prompt之前,我们首先需要了解Token这一概念。简单来说,Token是将输入文本分解成可以被机器理解的最小单位。例如,在英文中,一个Token通常是一个词或标点符号。但在更复杂的语言处理系统中,如GPT,Token可能代表词的一部分,甚至是多个词的组合。
Tokenization是NLP中的一项基础任务,它直接影响到模型对文本的理解和处理能力。GPT等模型在接收到文本输入时,首先将文本进行Token化处理,转换为一系列Token,然后基于这些Token进行学习和生成任务。
OpenAI提供了一个工具用来解释GPT如何使用Token来理解单词:https://platform.openai.com/tokenizer
让我们先看一个例子(以下例子使用GPT 3.5):
**问:**单词“kstroworldhello”第6个字母是?
**答:**是“r”
这个回答明显是错误的,正确答案是"w"。究其原因就是GPT 的token机制,我们看看GPT是怎样理解这个字符串的:
我们看见GPT将这个字符串分为5个token,其中"row"这三个字母被认作一个单词才导致这个问题。从这里可以看出,GPT理解语言的基本单位是token。
因此GPT并不擅长一下这些事情:
字符串反转
固定位置插入字符
写固定字数的文章
3、GPT是有记忆的
当我们问最近发生的事时,GPT往往不能给出答案(或者胡乱回答):
这说明GPT并不能直接从网络检索数据,它只能在自己已有的数据集中查找相关信息。那有没有方法让GPT回答它知识库以外的相关问题呢?答案是有的。当我们使用GPT进行多轮对话时,它会保留一定大小的历史记录,然后在接下来的对话中更新。为解决刚才的问题,我们可以通过先输入一篇带claude 3发布日期的新闻,然后再询问就能得到答案。我们来看下一个问题:
我有一篇超过3w字的文章,现在想让GPT生成一篇1000字的简