2025.2.17晚上21:57看完了整个视频,作为一个ai专业的学生虽然每天都在用ai,但是对于其背后的原理却不是那么清楚,而卡帕西的这支视频却让我醍醐灌顶,而且全程听起来很舒服,没有知识强行进入脑子的痛感,在他的讲解下一切都是那么的自然,所有内容娓娓道来,感谢karpathy的讲解,记住他的提醒,ai只是你的工具,他并不神秘。
AI 大神Karpathy再发LLM介绍视频,入门必看!_哔哩哔哩_bilibili
那么好,接下来就是我对这个视频的学习笔记部分了,我将根据视频内容分为四个部分,按顺序来分别是pre training,post training,rl,other
一、预训练(0:00:00-1:00:00)
视频主旨是介绍到底什么是llm,我们在使用的时候需要注意什么缺陷,你在和他对话的时候究竟是在和一个什么样的东西说话。
如何构建一个chatgpt?
-
下载和处理互联网数据,网站:huggingface/fineweb,讲解如何构建一份互联网数据。本质上是爬虫,爬取互联网上的高质量文档。common crawl是一个互联网组织,做的事情就是扫描索引互联网上的各种网页,跟踪链接,最终就拿到了很多互联网数据。
- 然后开始过滤。首先是URL过滤,过滤到你不想要的网站。然后是文本提取,从html中提取出文本,也就是说去掉各种各样的修饰。那么在这一步其实公司就可以控制自己模型对于语言的侧重,比如我排除掉中文网页,那么模型在最后的中文表现一定很垃圾,还有很多步骤,但是总体来说是这样的流程。
- 最后讲这些文本连接在一起,就形成了一个纯文字的txt文本,相当震撼。我们开始用它训练神经网络,这样神经网络就可以内化并建模这些文本的流动方式。
-
决定如何表示这些文本,以及如何输入它
- 因为这些神经网络接受一维的符号序列,虽然这些文本已经是连续的一维序列了,但是计算机本质上只能接受0和1,所以我们需要用数字来表示。并且这个序列我们不想让他仅有0和1两个字符,这样序列也会太长,那会占用大量的资源,我们需要去权衡这个词汇表的数量。
- 当我们将每8个bit看做一个处理单元(现在还没有引入token的概念)的时候,就把序列长度缩短了8倍,数字大小在0~255之间。这里我们严重可以讲这些数字看作为一个独特的emoji
- 在制作现代的大模型的时候,我们为了继续缩短序列长度,可以表达出更多的emoji,我们会寻找非常常见的连续字符,举个例子,“你”和“好”就经常一起出现,那么我们就可以把他俩组合成一个新的emoji,编号为256.以此类推&#x