ChatGPT 学习与使用总结

article/2024/2/25 17:44:46

ChatGPT 学习与使用总结

最近ChatGPT大火,2023有可能就是AGI元年了。近两个月使用下来,ChatGPT给我最深刻的感觉就是它所具备的理解和思维能力,第一次体验时真的是非常震撼,完全是之前各种『人工智障』智能助理所不能比拟的,第一次感觉这才是真正的『人工智能』,项目组里小伙伴也各个都玩的乐此不疲,连百度的弱智吧也跟着大火了一把,各种ChatGPT相关的自媒体文章视频纷纷出来,都要蹭上这波热度。然后各种AI创业公司也纷纷诞生,各大IT公司的AI竞争进入白热化阶段,颇有当年移动互联网大潮时的军备竞赛百花齐放的感觉。

紧随时代的热点,下面总结一下自己这段时间对ChatGPT的学习与使用。

ChatGPT是什么

ChatGPT 是 OpenAI 发布的基于 GPT(Generative Pre-training Transformer)模型的生成式AI聊天机器人,意在实现通用人工智能。

B站的这个科普视频很不错,推荐看看:

大语言模型为什么这么厉害?涌现?思维链?万字科普GPT-4

GPT 模型

GPT(Generative Pre-training Transformer) 是一种类型的大型语言模型(LLM),也是一个优秀的生成人工智能的框架,由OpenAI在2018年提出,基于Transformer架构。发展历程:

GPT-history

GPT 采用的半监督方法使得大规模生成系统成为可能,并且是首个使用Transformer模型实现这一方法。该方法包括两个阶段:

  1. 无监督的生成“预训练”阶段,使用语言建模目标来设置初始参数;
  2. 有监督的判别“微调”阶段,将这些参数适应于目标任务;

Transformer 架构由Google 2017年提出,通过在大规模无标签文本数据集上进行预训练,能够生成类似人类输出的文本。与之前NLP常用的循环神经网络(RNN)不同,具有下面的优势:

  1. Transformer 解决了RNN在处理长序列时产生的梯度消失和计算效率低下的问题。在RNN中,梯度需要通过时间步反向传播,随着序列长度的增加,梯度在传播过程中容易产生消失或爆炸的问题。这会导致RNN难以处理长序列,并且难以捕捉序列中的长距离依赖关系。而Transformer模型通过引入自注意力机制,可以在模型中直接捕捉输入序列中的长距离依赖关系,避免了需要沿时间步反向传播的问题,更有效地捕捉了输入序列的信息。
  2. Transformer 可以同时处理整个输入,而不是逐个处理。它的注意力机制为输入序列的任何位置提供上下文信息。相比于RNN,这种并行化处理方式减少了训练时间,使得在更大的数据集上进行训练成为可能;

基于RLHF(Reinforcement Learning from Human Feedback)从人类反馈中进行强化学习方法进行训练的InstructGPT,使其能够遵循人类指示并生成相应的输出。在泛化到新的指令时也显示出良好的性能。

还有下面一些概念要简单了解一下,然后才好理解什么是ChatGPT说的Token:

概念介绍
EmbeddingEmbedding, 是一种将离散变量(如词、图片等)转化为连续向量表示的技术。具体来说,Embedding通过将离散变量映射到一个低维稠密向量空间中,能够意义化处理数据,提高数据的表达能力,使得机器学习等领域中的任务(如分类、聚类、推荐等)更加精准和高效。
Few-shotFew-shot, 是指在模型只经过少量特定任务的训练,就能够对新任务进行预测或生成结果的能力。这种能力通常是通过在训练阶段使用少量的训练样本和元学习技术来实现的。
Zero-shotZero-shot, 是指在模型未经过特定任务的训练,却能够对该任务进行预测或生成结果的能力。这种能力通常是通过在训练阶段暴露模型于各种语言和任务来实现的。例如直接向ChatGPT提问,不给示例。

ChatGPT使用一种基于字节对编码(Byte Pair Encoding,BPE)的 tokenization method,可以有效处理罕见单词和超出词汇表的tokens。这种 tokenization 过程将输入文本切分成文本片段,每个片段被表示为一个token,token是文本的数值表示形式,用于在模型中进行后续处理。ChatGPT将每个单词都会转换为相应的token,然后转换成 embedding representations,embedding 是表示文本语义和上下文信息的向量。

LLM 大语言模型

LLM(Large Language Model)是NLP领域一种重要模型,于2018年左右出现,并在各种任务上表现出色,这使得自然语言处理研究的重点从以前专门针对特定任务训练专用模型的范式转变过来到通用模型上。LLM能够在已知文本的多个层面上找出规律,如识别单个词语在段落中的上下文联系,以及辨识句子在文本框架中如何承上启下等。LLM具有以下特点:

  • LLM 具有大量的参数(通常是数十亿个或更多的权重),通过使用自监督学习或半监督学习在大量无标签文本上进行训练。
  • LLM 通常在预训练数据集上进行预训练,常用的文本数据集包括Common Crawl、The Pile、MassiveText、Wikipedia和GitHub等。这些数据集的规模可达到10万亿个单词。
  • LLM 通常使用Transformer架构,这是自2018年以来成为顺序数据的标准深度学习技术(之前,循环架构如LSTM最为常见)。
  • LLM 的输出是其词汇表上的概率分布,常用的实现方式是使用softmax函数将输出向量转换为概率向量。
  • LLM 的训练通常通过生成式预训练来进行,即给定文本标记的训练数据集,模型预测数据集中的标记。通常使用平均负对数似然损失作为特定损失函数进行训练。
  • LLM 的训练成本高昂,通常需要巨大的计算资源。对于基于Transformer的LLM,在一个标记上训练每个参数需要6次浮点运算。而在推断阶段,每个参数在一个标记上的推断仅需1到2次浮点运算。

涌现 Emergent

ChatGPT的文章介绍中,很多能力是随着模型规模的扩大而涌现出来的,业界也有很多研究涌现的文章,比如:Emergent Abilities of Large Language Models。微软介绍GP4的论文也提到了这些涌向的能力,比如:

  • In-context learning, 上下文学习学习能力,一种说法是OpenAI 训练的 GPT-3时,比 GPT-2 整整用了 15倍的语料,同时模型参数量扩展了 100 多倍,使其涌现了In-context learning 能力,可以说有很大程度来自于其庞大的参数量和训练数据,但是具体能力来源仍然难以溯源。
  • Chain-of-Thought, 思维链能力,没有确定性的结论说明 CoT 特性来自于具体哪些迭代优化, 没有确定性的结论说明 COT 特性来自于具体哪些迭代优化:有些观点说是通过引入强化学习;有些观点说是通过引入了指令微调的训练方式;有些观点说是通过引入庞大的代码预训练语料;推测的方式则是根据不同时间节点上的模型版本能力差进行排除法。

深度学习从一开始就有不可解释性的特点,再加上ChatGPT很多能力说是涌现出来的,好奇宝宝就更多了,知乎还看到了一个这样的问题:

大语言模型中的涌现现象是不是伪科学?

不光是涌现,关于复杂系统的很多研究都经常被诟病是伪科学。之所以被说伪科学是因为它无法用科学里流行的还原论来解释,还原论是说“如果你理解了整体的各个部分,以及把这些部分‘整合’起来的机制,你就能够理解这个整体”。

只要数据量足够且真实,且模型没有硬错误的前提下,不断的训练说不定真的能够产生一些意想不到的效果。

总之,模型增大,是有可能产生意想不到的能力,但是现在还不可解释。

使用初体验

日常开发使用

作为一名程序员,用ChatGPT查资料和写一些短程序片段是我近阶段最常用到的场景,只要你把问题描述的足够清晰,尤其要用结构化的语言来描述你的需求或者问题效果会更好,那么ChatGPT基本会给你很满意的答案。说几个场景:

  • 开源项目中,很多关键缩写的函数或者变量名字,查缩写的全称的含义。
  • 帮助理解代码内容,直接贴上去代码,就可以给出解释。
  • 帮助生成代码片段,各种Utils接口,正则表达式等等。
  • 查询错误的信息,直接全部贴进去报错,就可以给出可用的解决方案。
  • 学习新语言新框架入门,提问+demo+练习,体验很棒。
  • 查一个领域的各种术语概念,反复提问,加配合Google与相关的AI总结插件。

文案邮件生成

还有就是一些文案的生成,比如根据主题来生成一些场景的文案,通过不断的反馈来调整具体的内容,最后再自己润色,效率比自己从头写高出很多。

使用GPT4开发游戏AI

B站UP主使用GPT4开发的AI: 格斗之王!AI写出来的AI竟然这么强!
这个真的是太强了,后面如果想学一下机器学习入门,网上看资料+练习+ChatGPT指导,效率直接起飞啊。当然,作为意在实现AGI通用人工智能,在很多领域都是如此,真是给每个人配一个超级顾问,答疑解惑,还能辅助搬砖。

五分钟开发一个留言板网站

这个是我自己突发奇想,自己现编的一个题目。使用ChatGPT 3.5, 就能5min完成这个小demo,自己一行代码不修改, 全部用AI生成的。

过程全纪录,7个Prompt就完成了这个project:

1. 编写一个留言板网站,使用python flask框架,代码尽量短,不用数据库,使用一个文本文件做后台持久化数据存储,不需要用户注册#ChatGPT: AI 给出了一个 app.py 的源代码,里面引用了一个 index.html 文件
2. index.html 内容呢#ChatGPT: AI 给出了一个 index.html 的源代码
3. 如何部署,工程的文件结构是什么#ChatGPT: AI 给出了工程文件结构
4. 如何启动?#ChatGPT: AI 给出网站启动命令
5. 我在本机访问,网址是多少呢?#ChatGPT: AI 给出了本机访问的URL网址
6. 上面的app.py运行报错了  // 注意:我空了一行,然后用 > 这种 Markdown 引用格式写了报错内容>    return redirect('/')> NameError: name 'redirect' is not defined#ChatGPT: 给出了bug原因
7. 修改app.py的这个bug#ChatGPT: 给出了bug修复方法

效果显著,我这个还是使用的免费版的ChatGPT3.5,如果是GPT4,估计效果会更好,一把就是正确的了。不过这也隐藏了一个点,你必须有一定的经验,才能把你要做的需求描述清楚,GPT4让有厉害的程序员效率翻好几倍,尤其是在平时的一些小的常见的场景上的编程。

插件与应用推荐

自从ChatGPT开放了API,各种应用和浏览器插件层出不穷,这里就只推荐两个我用的最多的:

  • chatgpt-glarity-summarize: Chrome浏览器插件,使用ChatGPT的能力来生成网页内容摘要。这个使用下来很方便,尤其是把当前搜索结果页面的多个搜索结果进行分析汇总总结。本文的很多内容就来自这个插件的总结,然后自己修改润色。
  • chatbox: 非常好用ChatGPT桌面客户端,无限制存储对话历史记录,更前大的编辑功能,以及一些有用的内置prompt模板,使用体验很好。上面的那个小网站project我就是在这个app里面实现的。

还有更多的,大家可以慢慢探索。

相关学习资料搜集

ChatGPT爆火后,网上相关资料文章也是铺天盖地,有时候资料太多反而不好筛选了。下面是我搜集的一些比较好的资料:

  1. OpenAI官网博客:https://openai.com/blog/chatgpt
  2. ChatGPT中文指南: https://github.com/yzfly/awesome-chatgpt-zh
  3. 吴恩达Prompt工程课程:https://github.com/datawhalechina/prompt-engineering-for-developers
  4. Prompt教程:https://learningprompt.wiki/
  5. Midjourney官网文档: https://docs.midjourney.com
  6. ChatGPT的前世今生: https://lipiji.com/slides/ChatGPT_ppf.pdf
  7. ChatGPT业界资料汇总: https://github.com/shawshany/ChatGPT_Project
  8. 微软GPT4论文: Sparks of Artificial General Intelligence: Early experiments with GPT-4
  9. LLM论文集合: Understanding Large Language Models – A Transformative Reading List

总结

也许ChatGPT就是AI时代的iPhone4时刻,技术的革新不知不觉就会带来社会的变革,保持一颗好奇心,感受科技带来的美好!


http://chatgpt.dhexx.cn/article/3JfIWv0b.shtml

相关文章

ChatGPT使用学习(三):ChatGPT桌面版使用

文章目录 介绍获取方式界面展示 介绍 ChatGPT桌面版是指OpenAI推出的针对个人用户的ChatGPT应用程序。它是一个独立的桌面应用程序,可以在本地计算机上运行,而无需依赖互联网连接。这使得用户可以在没有网络连接的情况下使用ChatGPT进行对话和获取智能回…

ChatGPT使用接口和使用网页的区别

我们可以在OpenAi里看到好多接口,同样也可以在chat网页上输入聊天。区别 功能不同:GPT网页版是提供给普通用户使用的在线文本编辑器,而调用API接口则是给开发者提供的编程接口,可以在代码中调用模型进行文本生成等操作。 自由度不…

ChatGPT使用测试结果

于2023年2月8日-9日使用ChatGPT,进行了简单的几个测试,包含了中英文问答、解决方案询问、代码测试、字数上限的测试、古诗的测试、股票信息询问,得出的结果如下: 1、我使用时中英文交替对话,因此ChatGPT回答的时候有时…

ChatGPT 使用 拓展资料:用 Rasa Open Source 和 ChatGPT 回答有关结构化数据的问题

ChatGPT 使用 拓展资料:用 Rasa Open Source 和 ChatGPT 回答有关结构化数据的问题 几年前,我们引入了将 Rasa 与知识库集成的功能,允许助手回答详细的 问题,就像下面的对话一样。 虽然功能强大,但知识库功能的设置工作量很大。ChatGPT 回答有关结构化数据的问题的能力给…

4个小技巧教你快速玩转ChatGPT

大家好,这个是我搜集的使用Chat GPT的时候的一些小技巧,简单的例举出来和大家分享下希望可以帮到您 技巧一: 大家都知道ChatGPT是国外的一款软件,所以有的时候如果我们在用中文提问的时候,它的回复可能会有些慢&#x…

OpenAI ChatGPT 使用示例(程序员)

作为一个程序员,当知道ChatGPT出来之后或者GPT3出来的时候,我是有喜有忧,喜的是它可以帮我写代码,重构代码,写注释,写测试,,。哇,听起来好刺激,我可以从此以后…

ChatGPT使用心得

心得: ChatGPT是openAI旗下的一款语言模型,说它是语言模型更不如说他是一个全能小助手,自从去年它爆火之后,国内也出现了许多同款语言模型,CSDN的C知道、三月份即将上线的百度的“文心一言”,这些智能语言…

ChatGPT的使用感受

ChatGPT背景: ChatGPT 是一种专注于对话生成的语言模型。它能够根据用户的文本输入,产生相应的智能回答。这个回答可以是简短的词语,也可以是长篇大论。其中GPT是Generative Pre-trained Transformer(生成型预训练变换模型&#…

ChatGPT使用感受

前言 本文介绍OpenAI的ChatGPT的使用教程、使用截图以及使用感受。 使用教程 教程链接:教程 使用截图 基础问题 学术问题 代码编程 使用感受 整体来看,ChatGPT对自我认知合理,词义理解非常精准,回答也很全面。可以提…

国内几款强大的语言模型

写在前面 Hello大家好, 我是【麟-小白】,一位软件工程专业的学生,喜好计算机知识。希望大家能够一起学习进步呀!本人是一名在读大学生,专业水平有限,如发现错误或不足之处,请多多指正&#xff0…

ChatGPT到底怎么用?

ChatGPT简介 ChatGPT(Chat Generative Pre-trained Transformer)全称为生成型预训练变换模型,由美国 OpenAI团队研发。现如今的ChatGPT不仅可以根据聊天上下文进行交互,还可以进行文学创作、翻译、编写代码等,相信以后…

铲特-姬劈蹄的N种用法(持续更新中。。。)

目录 前言一、语法更正二、文本翻译三、语言转换3-1、Python-->JAVA 四、代码解释-1五、代码解释-2六、修复代码错误七、作为百科全书八、信息提取九、好友聊天十、创意生成器10-1、VR和密室结合10-2、再结合AR 十一、采访问题11-1、采访问题清单11-2、采访问题清单并给出相…

为什么ChatGPT这么强?—— 一文读懂ChatGPT原理!

前言 最近一周多的时间,只要不是生活在火星,喜欢技术的同学一定都被OpenAI的ChatGPT给刷屏了。ChatGPT与以往的公开提供服务的对话机器人相比,性能有了显著的提高。它可以相对可靠地提供一些日常对话、知识获取的功能,也可以它根据…

跟ChatGPT,聊聊ChatGPT

不仅“上知天文、下知地理”,似乎还能对答如流、出口成诗,甚至还能写剧本、编音乐、写代码——最近,一款名叫ChatGPT的人工智能聊天机器人火爆全球。由此,一系列关于新一代技术变革、人工智能替代人力、巨头企业扎堆入局AI的讨论在…

ChatGPT的使用

目录 一、ChatGPT介绍 二、使用实例 三、怎么使用? 一、ChatGPT介绍 ChatGPT是一种由OpenAI训练的大型语言模型。它的原理是基于Transformer架构,通过预训练大量文本数据来学习如何生成人类可读的文本,然后通过接受输入并生成输出来实现对…

chatgpt体验

露个相吧 TomChat https://www.tomchat.work/ 支持gpt4 -3.5 支持 midjourny绘画 可长篇写作 无使用月限额 传送 1、相信很多小伙伴们面试或者工作中会遇到数组扁平化这一问题,如今正是智能大火的时候,何不让我们试试水呢,所以让我们…

ChatGPT中文网

https://chat.gptchinese.com 用过速度最快的国内镜像了写python还不错

ChatGPT实用使用指南 让它解你所问

Chatgpt无疑是这几年来影响力最大的AI技术之一,生成式的AI模型正在促进各个行业的效率和自动化发展,Chatgpt对于个人、企业和各个行业都有着一定的影响 在我刚接触的时候,发现对Chatgpt的认知太肤浅了,一个最强的ai聊天机器人摆在…

ChatGPT详解

导读:ChatGPT出现后惊喜或惊醒了很多人。惊喜是因为没想到大型语言模型(LLM,Large Language Model)效果能好成这样;惊醒是顿悟到我们对LLM的认知及发展理念,距离世界最先进的想法,差得有点远。我属于既惊喜…

ChatGPT 官方版 API,终于来了!

公众号关注 “GitHubDaily” 设为 “星标”,每天带你逛 GitHub! 大家好,我是小 G。 今天凌晨 2 点左右,OpenAI 正式发推宣布,对外开放 ChatGPT 和 Whisper API,开发者可以通过该 API,在 App 或产…