ChatGPT101-1 漫谈原理/GPT的局限性/手把手教你用ChatGPT

ChatGPT101-1 漫谈原理/GPT的局限性/手把手教你用ChatGPT

田园猫MierCat
田园猫MierCat
1554 浏览

我真的太爱ChatGPT了。似乎也没真用多久,但我已经不记得没有ChatGPT的日子了。我已经预感到写这篇文章会被大批真的懂LLM的大佬鄙视,但我还是尝试着用我有限的理解,来让更多的普通人能了解ChatGPT的原理和使用技巧,开始使用它且从中受益,从而缩小科技带来的分化。

ChatGPT是什么?

ChatGPT=Chat(聊天)+GPT()

ChatGPT是一种基于人工智能的语言模型,由OpenAI开发。它是GPT(Generative Pre-trained Transformer)系列模型的一部分,专注于生成自然语言文本的对话和交流。ChatGPT通过大规模的预训练数据和深度学习算法(LLM: Large Language Model, NLP的一种),可以理解和生成自然语言的回答、建议、对话等内容。通过不断的训练和改进,ChatGPT能够不断提升其对话能力和语言理解能力,以更好地满足用户的需求。

*NLP: Natural language processing 是什么?

NLP利用算法和技术来解析和分析文本数据,识别语言中的词汇、语法、句法和语义等要素,以及处理文本的结构和含义。在NLP中,计算机通过学习大量的文本数据和语言规则,使用概率分布来生成输出。这意味着计算机会基于已有的语言知识和上下文来预测下一个单词或一系列单词的概率分布,从而生成合乎语法和语义的文本。这种基于概率的生成方法使得计算机能够生成自然、流畅的文本,与人类的语言交流更加接近。

关键词:【序列】,【预测】

简单粗暴来感受一下上文说的“预测下一个单词/一系列单词的概率分布是什么意思”:

当我问【1,2,3,4】, 下一个词很大概率是【5】。这个例子很好理解,这些数字看上去就是一个序列,12345~ 很自然。

我们的人类语言其实也是一种合乎逻辑的序列。当我问【第16任美国总统是谁】,下一个序列的词很大概率是【亚伯拉罕·林肯】。

以此类推,越来越复杂……

你大概有听说,GPT是用网上的公开数据来训练的(倒也不是所有的公开数据,会有一些取舍)。但在喂这些数据的时候,喂进去的其实不是单词、字母本身。这些单词被转化成了tokens和对于的token IDs(以及更多奇奇怪怪的我也搞不懂的变化),如下图。

总之,大型语言模型LLM基于机器学习和自然语言处理技术,通过学习大量的文本数据和语言规则,来“理解”语言的语法、语义和上下文,从而生成具有合乎逻辑和连贯性的文本输出。

值得注意的是,GPT3.5的数据截止日期是2021年的9月(如果你问GPT3.5 21年之前的数据信息,他是不知道的)。

ChatGPT使用的语言模型非常非常的复杂,GPT3.5的神经网络模型就有1750亿个参数96层。那他到底复杂在哪里呢?举一个简单理解但也不算全面的例子:

我们之前提到过这些语言模型主要是“理解”语言的序列性来预测下一个单词。但他不单单靠着连在一起的词汇进行预测,他能通过之前出现过的词汇来预测。比如说:The weather was very ——(happy, nice, rich),为什么最终模型选择产生nice呢?很可能是因为【nice】和【weather】比较搭(翻译:导致可能性比较大)。

同理,【build a _】 写什么呢?house, road, nest? 因为之前出现了【birds】,所以【nest】可能性比较大。

ChatGPT - The Complete Guide to ChatGPT & OpenAI APIs

当然,光这么训练,我们还只是粗暴地解释了什么是GPT,还有CHAT呢~ 

为什么ChatGPT可以和我们像聊天一样地对话呢?

他不光光是能“理解”序列和预测单词那么简单。他还被finetuning(调教)成了专门用来聊天的工具。在ChatGPT工具里,我们可以理解为,是用户给prompt, ChatGPT给output这样的一种一问一答的形式。

在这里要提到一点,ChatGPT的Input是有token限制的(之前提到过,输入的会被转换成tokens),一般是4000 tokens。这就意味着,

1. 你一次性不能输入超过4000 tokens的内容,它记不住。

2. 虽然ChatGPT和你的聊天会记住你之前说过的话(原因是对他来说,chat history=input token),但超过4000的他就记不住啦~

ChatGPT - The Complete Guide to ChatGPT & OpenAI APIs

最后,ChatGPT会使用Moderation API对输入和输出的内容进行过滤和审核,检测和阻止潜在的不适当、有害或违规的内容,确保生成的内容符合特定的规则和准则。

要不要总结一下,我之所以说这么多,想要表达的主要点就是,

1. ChatGPT他并不理解你说了什么。对他来说,"It is all about patterns, not logic."

2. 如果你用的是免费版本的ChatGPT,他不能帮你搜索网络寻找信息,他只是一个无情的文本生成模型而已。

3. 重要的事情再强调一遍,他只是一个无情的文本生成模型而已。千万不要以为他说的都是真的!!!

ChatGPT 3.5的限制:再看一遍

ChatGPT能做什么呢?

让它自己来回答吧。

 

开始使用ChatGPT:

超级无敌简单,谷歌搜索[CHATGPT],第一个结果,点【TRY CHATGPT】,完成注册即可开始使用。在【设置】菜单里,你可以选择界面的主题色,比如【light】,【dark】。你也可以在【data control】里开或者关掉【Chat history & training】,来选择是否允许OPENAI用你和ChatGPT的交互聊天记录进一步优化他的模型。

ChatGPT有免费版本,也有付费的Plus版本。你如果用免费版本用得很爽,也可以升级。付费版本也只要20美金/月而已。

第一次登陆ChatGPT截图

升级Plus的好处:

1. 优先使用ChatGPT:在高峰时段或繁忙时刻,会员可以优先获得访问ChatGPT的机会,获得更高效和快速的响应。

2. 更快的输出生成:Plus会员可以享受更快的输出生成速度,可以更快地获得您所需的答案、建议或信息,节省时间并提高工作效率。

3. 模型选择:Plus会员可以根据自己的需求选择不同的模型,可以根据具体情况选择适合的模型,以满足不同领域或任务的需求。

4. 提前访问:Plus会员可以提前访问一些新功能和新产品。第一时间体验和使用最新的功能和工具,保持与最新技术和发展的同步。比如说,可以browse the internet来搜索你要的答案。

再比如说,可以使用一个plugin插件来完成更多任务:OpenTable订餐,Expedia订票。

升级之后,你还可以开始使用GPT 4。 虽然GPT4的处理速度略有降低,但它在推理能力和表达简明性方面有很大提升。

所以我会推荐你,如果有条件,能用GPT4就用GPT4。 下面这些Plugin真的很好用。

除了ChatGPT之外,类似的大语言模型产品还有Google的Bard(免费),Bing Chat(也是免费with Microsoft account): 

Bard
BingChat

ChatGPT First Prompt:

1. 尝试问ChatGPT一些简单事实问题:

你可以选择【复制】ChatGPT的output;给它的答案点赞,或者标记不满意

2. 尝试context-aware prompts:

你不需要再次告诉ChatGPT你的问题里“他”指的是华盛顿,ChatGPT就能“理解”你在问什么,并准确回答你的问题。(回顾:我们说过,ChatGPT能记住4000个tokens那么多的聊天记录)

3. 尝试:如果你对ChatGPT的回答不满意,点击Regenerate,让它再回答一次试试。

你还可以点击前后箭头,切换到第N次的回答。

4. 点击prompt后面的编辑图标,尝试修改你的问题,再次提问。在这个过程中,有时候ChatGPT还在回答你的问题,你可以手动点击【Stop Generation】来先让ChatGPT停下来。

5. 尝试:复制一个网站的url,让ChatGPT帮你总结文本、搜索文本内容、解释文本信息。

6. 如果你给的prompt太长了,ChatGPT只能读取4000个tokens as input。尝试在下一个prompt里打【continue】,或者【继续】,ChatGPT会从上一次停止的token开始,继续生成文本。

这个小技巧很适合用在翻译长文的情景里。

7. 如果你升级了Plus,尝试使用Plugin: 

首先,先找到Plugin Store:

可以点most popular来看看大家都在用哪些Plugin。

现在最火的是Prompt Perfect和KeyMate.AI.Search。

"Prompt Perfect"的主要功能是改写用户的输入,提高ChatGPT的回应质量。他会评估用户的输入,并在必要时将其转化为更清晰、更具体、更具上下文的提示。它处理包含需要改写的用户输入的JSON对象,并使用GPT-3.5-turbo模型进行改写。然后,改写后的输入作为原始数据返回,以便融入ChatGPT的回应。你可以通过输入'perfect'来启动这个插件。

"Keymate AI Search"提供了对多个搜索源的访问。它允许你通过重构用户提示,执行多个API调用来访问你的训练截止日期之后的数据,这样你就可以生成一系列搜索查询并进行多次调用。这个工具支持任何语言的搜索。返回的搜索结果包括来自顶级结果的摘要和完整HTML内容,这些可以被整合到你的回应中以提高准确性和相关性。它能利用用户提示历史来优化搜索查询,并基于最新数据提供增强的答案。

赶紧试试吧~


这篇内容太长了,先这样吧。
如果大家感兴趣,下一篇我会着重介绍如何写好Prompt,让ChatGPT更好用~
另外,我也打算写两篇关于如何使用Midjourney的文章,包括如何用ChatGPT来生成prompt,以及Midjourney的使用技巧。

君君提示:你也可以写原创长文章,点此查看详情 >>

本文著作权归作者本人和北美省钱快报共同所有,未经许可不得转载。长文章仅代表作者看法,如有更多内容分享或是对文中观点有不同见解,省钱快报欢迎您的投稿。

1554 13 11 5
 

最新评论 11

加利福尼亚doris

:不过chatgpt 引用的数据不太准确,我查过,数据还是要自己查。模版倒是可以借用。

2023-06-22
删除 | 举报 | | 回复
流浪meow

:写得好!我觉得实用的是各种copilot。不知道现在的msft office有没有implement chatgpt啊,那个功能是值得期待的。以后写个什么cover letter,打开word,模版都给写好了,往里填还有提示,适合我这种语文不好的人。

2023-06-20
删除 | 举报 | 1 | 回复
懒兔点点点

:写得真好~ &赞选题

2023-06-19
删除 | 举报 | 1 | 回复
好奇的顿顿

:楼主也是tech工作者?

2023-06-19
删除 | 举报 | | 回复
乔伊的小生活

:写得好棒👍

2023-06-19
删除 | 举报 | | 回复

扫码下载APP