Prompt、Token、和completions
本文是科普向,大家放心阅读
在ChatGPT越来越火的时候,很多开发者都想大展拳脚,但在这之前,我们需要了解一些基础知识,比如你知道什么是token、什么是prompt、什么是Complemention
Prompt
提示词Prompt,简单来说,就是让告诉Chatgpt它需要做什么,类似程序员编程。但不同之处在于,你只需要输入纯文本,ChatGPT会尽可能地理解你的意思,并完成你提出的任务。
因此,Prompt的质量将会直接影响ChatGPT回答的质量。这也很好理解,它都没有理解你的意思,给你的回答自然无法置信。
那么怎样输入一个理想的Prompt?别急,我们先看看Prompt的分类。
从Prompt的内容和形式,可以将其分为三类:
- Zero-shot prompts
- One-shot prompts
- Few-shot prompts
分别代表零样本提示词、单样本提示词和少样本提示词。
其中,**零样本提示词是指用户仅提供了一个任务描述,**例如一个问题、一个故事的开头或是某些指令,比如写一份邮件:
Write an email to my friend Jay from me Steve thanking him for covering my shift this past Friday. Tell him to let me know if I can ever return the favor. Subject:
可以看到,ChatGPT根据提示生成了一份邮件。
所以,零样本提示词可以让ChatGPT去完成一些简单清晰的工作。
那么单样本提示词是什么?
举个例子:
A list of actors in the movie Star Wars 1. Mark Hamill: Luke Skywalker
简单来说,GPT根据用户所给的Prompt了解到了如何去完成用户所要求的任务。和零样本提示词不同的是,单样本提示词告诉了GPT,如何去完成某一个任务,而不仅仅是下达了一个完成任务的指令。
我想你应该大概知道少样本提示词有什么不同了。
直接看例子:
This is a conversation between Steve, the author of the book Exploring GPT-3 and someone who is reading the book.
Reader: Why did you decide to write the book?
Steve: Because I’m super fascinated by GPT-3 and emerging technology in general.
Reader: What will I learn from this book?
Steve: The book provides an introduction to GPT-3 from OpenAI. You’ll learn what GPT-3 is and how to get started using it.
Reader: Do I need to be a coder to follow along?
Steve: No. Even if you’ve never written a line of code before, you’ll be able to follow along just fine.
Reader:
很明显,GPT会根据拟定的聊天话题及语境去进行会话的拓展。
总结一下,零样本提示词告诉AI做什么;单样本提示词告诉AI怎么去做某件事情;多样本提示词告诉AI你需要按照某种模式去完成任务。三者的区别主要在于上下文的多寡,首先抛一个结论:上下文越多,得到的回答越准确。
Token
“Token”(标记)是指将输入文本分解为更小的单位,例如单词、字母或字符。在自然语言处理中,将文本分解为标记有助于模型理解语义和语法结构。
当一个Prompt被发送给GPT时,它会被分解成多个Token,这个过程被称为Tokenier。一般情况下,对于英文单词,四个字符表示一个标记Token。
对于Chatgpt3.5来说,它最开始支持的Token最大值是4096。也就是说,你输入的Prompt加上GPT回复给你的内容不能大于4096个Token,否则就会超限,导致报错或是截断。
completions
completions,其实就是AI根据你的输入完成一次输出的过程。
Ref:
https://subscription.packtpub.com/book/data/9781800563193/2/ch02lvl1sec06/understanding-prompts-completions-and-tokens