说说这段时间我了解的 AIGC
0x00 初印象
从 2022 年底 ChatGPT 的发布,当时未感觉到有什么特别的,直到大概二三月份,在网络上看到铺天盖地的都在发与 ChatGPT 的对话截图,有一些是感叹它的强大,有一些是对它进行调戏,试图找出它的不足。
这时我才开始关注它,于是在推上时间线刷到的注册流程指引帮助下,短信验证码外加程序员必备的科学上网技能,挺容易就注册成功了。不过我相信一般普通人可能大部分在这一步就卡住放弃了。之后也看到说在某宝上购买的账号,在之后阶段被封号,总之在上半年期间,OpenAI 花了不少功夫与大家斗智斗勇,就不展开了。
0x01 体验
总之之后就开始了简单的体验之旅,截止目前 2023 年 8 月 9 日,真的会有种 “AI 一天,人间一年” 的感觉,国外大厂(OpenAI, Google, Meta, MicroSoft)基本上每天都在 “开天辟地” ,可能你只是睡了一觉,醒来就发现又出现了颠覆性的新技术。
说回 ChatGPT ,我在刚开始(23 年 3 月份左右)体验的过程中,因为当时也不是很懂 ChatGPT 的原理,因此和它对话也无从下手,可能开始就是输入一句 “你好”,然后看它如何回复,然后一句一句的问问题,看它如何回答,这样的体验过程,我想大部分人都是这样的。但是我发现我想让他理解一段更长的代码,似乎他就开始胡乱回答了,这让我对它的兴趣减少了一些。
不过还是会在网络上看到其他人是如何和它对话的,并分享使用的技巧,我也有样学样。嗯,看起来回答就真的好了一些。这让我不禁好奇,它是如何工作的,为什么需要这样的提问才可以更大概率得到更准确的答案呢。
0x02 了解
好奇 ChatGPT 的工作原理,那么就去 找了一些资料粗浅的看了看,它是使用了一种叫做 Transformer 的深度学习技术 (参考维基百科:Transformer_(machine_learning_model) 以及论文 (Attention Is All You Need)。
Transformer 是一种依赖于并行多头注意力机制的深度学习架构。 [1] 现代 Transformer 是由 Google Brain 团队的 Ashish Vaswani 等人在 2017 年题为 “Attention Is All You Need” 的论文中提出的。值得注意的是,与以前的循环神经架构(例如长短期记忆(LSTM), [2] )相比,它需要更少的训练时间,并且其后来的变体已普遍用于在大型(语言)上训练大型语言模型。 )数据集,例如维基百科语料库和 Common Crawl,凭借输入序列的并行处理。 [3] 输入文本被分割成 n-gram,编码为 token,每个 token 通过从单词嵌入表查找而转换为向量。在每一层,每个令牌都通过并行多头注意力机制在上下文窗口的范围内与其他(未屏蔽的)令牌进行上下文关联。
那么,我粗略的理解为,它实际上是根据输入的内容(Prompt 又叫提示词)去从训练出的模型中预测接下来最大概率输出的内容,也就是你输入的提示内容,有越多的和答案相关的提示内容,就越有可能把答案给预测出来。而模型本身训练的数据量是非常庞大的,那么在我们自己的知识有限的情况下,这样实际上是可以通过一些关键词来获取或者学习我们还不太熟悉的知识,比如我尝试了使用它来辅助我学习使用 Swift 开发 iOS APP,不过也是有局限性的,由于它能返回的结果长度是有限的,所以无法去生成较长的代码,只能是一些简单的代码,但是对于我来说,这已 经足够了。
0x03 了解多一点
基本的使用之后,我也开始注意其他的更多功能,比如 OpenAI 的 API 功能,那时还是早期,时不时能看到有人创建一些很新奇的小功能,比如:输入一个网页的链接,就能帮你总结出这个网页的内容概括;粘贴微信中的聊天记录,总结出这些对话是在说什么。
以及之后出现的将一些内容训练后做成一个使用自然语言对话式的问答机器人。
看到这些让人觉得很兴奋,但是苦于自己没有很多的好点子去实现,这时候我在想,似乎我都不了解这些 OpenAI 的接口(或者说能力)能做什么,那么我就去多看其他人实现的这种问答系统到底是个什么原理、文章总结到底是怎么做到的,一来二去大概也就是使用到了 OpenAI 的 Embedding 以及 Completion 两个接口,一个是将文本向量化,一个是对输入的提示词进行补全,就能实现以上的效果。
都说教给别人能让自己的知识掌握的更牢固,因此,也在公司的组内以 《使用 Embedding 实现对话式搜索》 为主题做了一次组内分享,也顺便给组内其他同事做了一些科普吧,感觉还是挺有意义的。
与此同时,另外一个基于 Stable Diffusion (后统称 “SD”) 技术的产品也是如火如荼,就是 Midjourney ,相信接触过 AI 这块的应该都知道或者有尝试过,基本用法也是输入一些关键词,它能根据输入的关键词给你输出几张图片,而开源社区也有很多公开的模型可以自己下载来使用,不过大都需要较高配置(主要是显存)的显卡才行,而我使用的是 Mac ,基本上无缘 SD ,而且这时候显卡也 是一卡难求,也贵,一般人还真的玩不起。
0x04 未来
然而由于《王国之泪》的发布 🤣,最近疏于学习这块的新知识了,有不少我知道我还不了解的,包括但不限于:
- Chain Of Thoughts (COT)
- Tree Of Thoughts (TOT)
- 多模态
- 语音转文字
- 文字转语音
- 文字生成视频
- 图片生成视频
但愿能花更多的时间来学习他们,在这波 AI 的浪潮之下不掉队。
未来已来!