一文读懂 ChatGPT 的工作原理:大语言模型是个啥?它到底咋工作的?
继 AI 绘画后,ChatGPT 横空出世。聊天、翻译、文案、代码……ChatGPT 的功能如此强大,以至于连马斯克都认为“我们离强大到危险的 AI 不远了。”
在感慨 ChatGPT 如此强大的同时,人们也开始对 ChatGPT 的工作原理产生了好奇:ChatGPT 是什么?它到底是如何运行的?怎样才能丝滑地与它对话呢?
想要了解 ChatGPT 是什么,需要关注它背后的 GPT 模型。GPT 模型是一个由 OpenAI 训练的大语言模型。
一、大语言模型是什么?
大语言模型(Large Language Model)是指在海量文本数据上训练,通过无监督、半监督或自监督的方式,学习并掌握通用的语言知识和能力的深度神经网络模型。
从下图中,我们不难看出,这些大语言模型的参数计数都是数千亿:
换个容易理解的说法,“读书破万卷,下笔如有神”在一定意义上反映了大语言模型的运作模式。在海量文本数据上训练是读了万亿书籍,吸收了大量的知识,在此基础上就可以按照用户的需求进行回答、创作、总结与分析。
大语言模型在经过特定训练后可以为企业带来意想不到的可能性:
但我们不得不承认大语言模型同样存在着一些弊端:
在了解了大语言模型后,我们距 GPT 的工作原理又进了一步。
二、GPT 背后的应用逻辑
GPT 的全称是“Generative pre-trained transformer”,翻译一下就是“基于 Transformer 的生成式预训练模型” 。让我们把这些词拆分来看:
1)“Generative”
“Generative”指这个模型具备生成自然语言文本的功能。也就是说,这个模型能够生成一段内容,还能让你看懂。比如给它几个关键词,能够通过这些关键词自动生成一段话或者一篇文章。
当然,可能有人会说“之前那个狗屁不通生成器也能读,那他们的区别在哪里?”实际上,“狗屁不通(GPBT)”只是一个文本生成器,对文本的连贯性和含义要求并不高;而 GPT 生成的内容则有着高连贯性和可读性的要求。 所以大家会发现,先不说 GPT 生成的内容能不能解决实际问题,至少读起来是合情合理的。
2)“pre-trained”
“pre-trained”意为“预先训练好的”。一般来讲,在应用这种技术时,会需要先将大量的文本数据输入到模型中训练,让模型在一定程度上掌握了语言的语法规则和表达方式,这个提前输入进行训练的过程就被称为预训练。
我们也可以将上述过程简单粗暴地理解为“题海战术”。想想我们在各类学习中,经常通过题海战术对题目类型、考察的基础知识以及逻辑进行深入了解,才能在面对新的题型时,通过调用自己所学的知识交出相对合理的答卷。同样,GPT 也是在这种“题海战术”中杀出重围的。
3)“transformer”
最后说到“transformer”,这是 Google 的研究者在《Attention Is All You Need》中提出的概念,我们可以先将它简单理解为“转换器”。Transformer 的基本原理是 Encoder(编码)和 Decoder(解码),也就是先将输入的内容转换为计算机能理解的内容,再将计算机理解的内容转换为我们人类能理解的内容。
但在语言转化的过程中,还会出现一个问题:歧义。我们生活中也会有很多出现歧义的情况,比如“我买了一斤苹果”和“我买了个苹果新产品”。那么问题来了:大家怎么判断这两句中的苹果指的是某种水果还是某个电子设备?
答案估计也没啥争议:结合苹果旁边的“一斤”和“新产品”就能确定在不同上下文中的“苹果”代表了什么含义。而 GPT 能够理解我们输入的内容,关键也在于此。Transformer 在编码和解码的基础上,引入了“Multi-headed Attention(多头注意力)”的概念。多头注意力就是为了让模型在处理输入输出的内容时,更关注内容中的某个或某几个词语,并对它们进行加权处理,从而推断其准确含义,实现上下文学习。
用一句话总结上面讲的内容,就是“GPT 能读懂你说的话了”。
既然懂了提问的内容,那接下来 GPT 又是怎样回答出你想要的答案的呢?
前面我们讲了 GPT 是“预先训练好的”,所以当它理解了你想要什么之后,便会自动选择当下最适合的一个内容,然后不停地再输入、输出,最终生成一段完整、具有高匹配度的内容。
最终呈现以下内容:
GPT 就是通过这种不断地“输入-匹配-选择-输出-再输入”的过程,和我们进行问答的交互。而被我们熟知的 ChatGPT 则是基于 GPT 模型调整而成的对话生成模型,在本质上,其工作原理和 GPT 是相同的。
三、如何让 ChatGPT 不说废话?
那么,理解了 ChatGPT 及 GPT 模型的运行方式,它就能真正为我们所用吗?答案显示是否定的。很多人会抱怨,它的回答很空泛,有时甚至会出错。
当然,人工智能可以理解人类的语言,但可能还不能精准理解人类的目的,所以成功的人机交互才会得到我们想要的答案,也就是说 GPT 这类模型就像我们的宠物一样,能够听懂我们说的话,但前提是我们需要跟它“好好说话”。
来看一个例子:请介绍一下华山。(PS:本文所有问答,均来自禅道的OpenAI插件:神奇小海螺)
从上面两个图片中可以发现,我们的提示词不同,小海螺给出的回答也不同。那我们应该如何提问?这里引用常青老师总结而成的一个提示词模板(亲测非常有效):
(指路公众号:常青说)
通过这个技巧,我们现在可以改一下上面的提示词:
“假如你是一名导游,现在你要带一个 10 人的旅游团前往华山,请给一份华山的讲解词。请注意,因为旅游团中有小朋友,所以讲解词请用生动有趣的内容组织,最好还能加一些故事和例子。”
很明显,这样一问,小海螺就能给出比较符合我们要求的回答。如果还想让它的回答更精准,那就需要继续再补充其他的细节啦。
总之,我们期待着人类对自然语言的处理技术达到一定程度时,这些人工智能的回复质量能带给我们更大的惊喜;在另一方面,对于它们的回答,我们也要有基础的辨别能力。
罗翔老师曾说:“人跟人工智能最大的不同,在于人除了有理性还有感情。我们永远不用担心它会取代我们,因为我们是人,是万物之灵。”所以,我们不仅要把 ChatGPT 一类的人工智能应用到极致,充分去拥抱它,还要训练自己作为人类原生的、不依赖任何工具的基础能力、思维能力以及创新能力。
版权声明: 本文为 InfoQ 作者【禅道项目管理】的原创文章。
原文链接:【http://xie.infoq.cn/article/41458913d306ba7b2ec7f86e6】。文章转载请联系作者。
评论