https://www.youtube.com/watch?v=7xTGNNLPyMIhttps://www.youtube.com/watch?v=7xTGNNLPyMIDeep Dive into LLMs like ChatGPT - by Andrej Karpathy_哔哩哔哩_bilibilihttps://www.youtube.com/watch?v=7xTGNNLPyMI转载自Andrej Karpathy Youtube ChannelThis is a general audience deep dive into the Large Language Model (LLM) AI technology that powers ChatGPT and related prod, 视频播放量 1217、弹幕量 0、点赞数 23、投硬币枚数 4、收藏人数 65、转发人数 17, 视频作者 曾导SJTU, 作者简介 北美Ph.D., 十年CFDer, 分享知识和经验(休息待业加随缘).,相关视频:【必看珍藏】2月6日,安德烈·卡帕西最新AI普及课:深入探索像ChatGPT这样的大语言模型|Andrej Karpathy,大神Andrej Karpathy最新讲座:深入探讨ChatGPT类大语言模型,AI 大神Karpathy再发LLM介绍视频,入门必看!,Deep Dive into LLMs like ChatGPT,大神来了-Deep Dive into LLMs like ChatGPT from Andrej Karpathy,【中英双语】DeepSeek R1 理论概述 | GRPO + RL + SFT,邱锡鹏、刘知远等直播讨论DeepSeek技术原理|2025.02.02,【中文配音】深度学习(3Blue1Brown),专业角度精细化拆解DeepSeek R1模型底层逻辑,从LLM技术路线到损失函数,【斯坦福】CS25 Transformer 专题讲座(Transformers United,2023)
https://www.bilibili.com/video/BV19iPmetEL5/
Basic
This is a general audience deep dive into the Large Language Model (LLM) AI technology that powers ChatGPT and related products. It is covers the full training stack of how the models are developed, along with mental models of how to think about their "psychology", and how to get the best use them in practical applications. I have one "Intro to LLMs" video already from ~year ago, but that is just a re-recording of a random talk, so I wanted to loop around and do a lot more comprehensive version. Instructor Andrej was a founding member at OpenAI (2015) and then Sr. Director of AI at Tesla (2017-2022), and is now a founder at Eureka Labs, which is building an AI-native school. His goal in this video is to raise knowledge and understanding of the state of the art in AI, and empower people to effectively use the latest and greatest in their work. Find more at https://karpathy.ai/ and https://x.com/karpathy
Chapters
- 00:00:00 introduction
- 00:01:00 pretraining data (internet)
- 00:07:47 tokenization
- 00:14:27 neural network I/O
- 00:20:11 neural network internals
- 00:26:01 inference
- 00:31:09 GPT-2: training and inference
- 00:42:52 Llama 3.1 base model inference
- 00:59:23 pretraining to post-training
- 01:01:06 post-training data (conversations)
- 01:20:32 hallucinations, tool use, knowledge/working memory
- 01:41:46 knowledge of self
- 01:46:56 models need tokens to think
- 02:01:11 tokenization revisited: models struggle with spelling
- 02:04:53 jagged intelligence
- 02:07:28 supervised finetuning to reinforcement learning
- 02:14:42 reinforcement learning
- 02:27:47 DeepSeek-R1
- 02:42:07 AlphaGo
- 02:48:26 reinforcement learning from human feedback (RLHF)
- 03:09:39 preview of things to come
- 03:15:15 keeping track of LLMs
- 03:18:34 where to find LLMs
- 03:21:46 grand summary
- ChatGPT https://chatgpt.com/
- FineWeb (pretraining dataset): https://huggingface.co/spaces/Hugging...
- Tiktokenizer: https://tiktokenizer.vercel.app/
- Transformer Neural Net 3D visualizer: https://bbycroft.net/llm
- llm.c Let's Reproduce GPT-2 https://github.com/karpathy/llm.c/dis...
- Llama 3 paper from Meta: https://arxiv.org/abs/2407.21783
- Hyperbolic, for inference of base model: https://app.hyperbolic.xyz/
- InstructGPT paper on SFT: https://arxiv.org/abs/2203.02155
- HuggingFace inference playground: https://huggingface.co/spaces/hugging...
- DeepSeek-R1 paper: https://arxiv.org/abs/2501.12948
- TogetherAI Playground for open model inference: https://api.together.xyz/playground
- AlphaGo paper (PDF): https://discovery.ucl.ac.uk/id/eprint...
- AlphaGo Move 37 video: 编辑 • Lee Sedol vs AlphaGo Move 37 reactio...
- LM Arena for model rankings: https://lmarena.ai/
- AI News Newsletter: https://buttondown.com/ainews
- LMStudio for local inference https://lmstudio.ai/
- The visualization UI I was using in the video: https://excalidraw.com/
- The specific file of Excalidraw we built up: https://drive.google.com/file/d/1EZh5...
- Discord channel for Eureka Labs and this video: 编辑 / discord
中文
Karpathy 三个半小时 LLM 入门课程,如果想入门了解LLM的话必看这个视频。详细介绍 LLM 训练的全部过程,包括预训练、有监督微调和强化学习。
-
预训练:数据、分词、Transformer神经网络的输入输出和内部结构、推理、GPT-2训练示例、Llama 3.1基础推理示例
-
有监督微调:对话数据、"LLM心理学":幻觉、工具使用、知识/工作记忆、自我认知、模型需要token来思考、拼写、参差不齐的智能
-
强化学习:熟能生巧、DeepSeek-R1、AlphaGo、RLHF。
视频是23年十月那个视频的强化版本,讲的更加详细,即使没有技术背景也可以看懂。
将提供对ChatGPT等LLM完整训练流程的直观理解,包含许多示例,并可能帮助你思考当前的能力、我们所处的位置以及未来的发展方向。
AI 大神Karpathy再发LLM入门介绍视频,入门必看!卧槽,来了朋友们,Karpathy 三个半小时 LLM 入门课程,如果想入门了解LLM的话必看这个视频。详细介绍 LLM 训练的全部过程,包括预训练、有监督微调和强化学习。https://mp.weixin.qq.com/s/NJjfSQHRHX4uvG5dZJCswQ
大型语言模型 (LLM) 和 ChatGPT 简介
-
视频目的 (00:00-00:27): 本视频旨在为普通受众提供一个关于大型语言模型(LLM),特别是像 ChatGPT 这样的模型的全面但易于理解的介绍。目标是建立思维模型,帮助理解 LLM 工具的本质、优势和局限性。
-
文本框的奥秘 (00:27-00:41): 探讨用户与 ChatGPT 等 LLM 交互的核心界面——文本框。提出用户输入内容、模型返回文本的机制问题,以及背后对话的本质。
构建 ChatGPT 的预训练阶段
-
预训练流程概述 (00:41-01:40): 构建 LLM 的第一步是预训练阶段,这是一个按顺序排列的多阶段过程。预训练的核心目标是让模型学习互联网文本数据中的统计模式。
-
预训练数据来源 (01:40-03:25):
-
互联网文本:LLM 的知识来源是庞大的互联网文本数据集,例如 Fine Web 和 Common Crawl。这些数据集力求涵盖高质量、多样化的文档,以确保模型学习到广泛的知识。
-
数据规模与质量 (02:11-02:40): 尽管互联网数据量巨大,但经过过滤和处理后,实际用于训练的数据集规模相对有限(例如 Fine Web 数据集约为 44TB)。高质量和多样性比绝对数据量更重要。
-
Common Crawl (02:40-03:25): Common Crawl 是一个关键的数据来源,它持续抓取互联网网页并建立索引,为 LLM 提供海量原始文本数据。
-
-
数据清洗与过滤 (03:25-05:46): 原始的互联网数据需要经过多重清洗和过滤,以提高数据质量和安全性:
-
URL 过滤 (03:38-04:08): 移除恶意网站、垃圾邮件网站、成人网站等不良来源的 URL。
-
文本提取 (04:08-04:49): 从 HTML 网页中提取纯文本内容,去除 HTML 标记、CSS 代码和导航信息等噪音。
-
语言过滤 (04:49-05:46): 根据语言分类器筛选,保留主要语言为目标语言(如英语)的网页,但也允许公司根据需求调整不同语言的比例。
-
PII 删除 (05:46-06:23): 移除个人身份信息(PII),如地址、社会安全号码等,以保护隐私。
-
-
预处理的成果 (06:01-07:01): 预处理阶段的最终产物是高质量、多样化的文本数据集,例如 Fine Web 数据集。示例数据包括新闻文章、医学知识等。
Tokenization:文本的数字化表示
-
Tokenization 的必要性 (07:47-08:32): 神经网络处理的是数字,而非原始文本。Tokenization 是将文本转换为数字表示的关键步骤。
-
一维符号序列 (07:47-08:32): LLM 将文本视为一维的符号序列,即使在屏幕上以二维形式呈现。
-
UTF-8 编码 (08:32-08:58): 文本的底层表示是 UTF-8 编码,将每个字符转换为计算机可读的二进制位。
-
从二进制到字节 (08:58-09:41): 为压缩序列长度,将 8 位二进制位组合成字节,每个字节代表一个 0-255 的数字符号。
-
字节对编码 (BPE) (09:41-11:36): 为了进一步压缩序列并扩展词汇表,采用 BPE 算法。BPE 将频繁出现的字节对合并为新的符号,从而减少序列长度并增加词汇表大小。
-
GPT-4 的 Tokenizer (11:36-12:20): GPT-4 使用 Tokenizer 将文本转换为 token 序列。例如,“hello world” 被 tokenization 为两个 token。
-
Tick Tokenizer 工具 (12:20-13:18): Tick Tokenizer 是一个在线工具,用于可视化文本的 tokenization 过程,帮助理解 token 的工作方式和大小写敏感性。
-
Tokenization 的输出 (13:47-14:27): Tokenization 的最终输出是文本的数字序列表示,每个数字(token ID)代表一个文本片段。对于大型数据集,token 序列可能达到数万亿级别。
神经网络训练:学习 Token 序列的统计规律
-
神经网络训练的目标 (15:15-17:03): 训练神经网络的目标是让模型学习 token 在序列中彼此跟随的统计关系,即预测给定上下文(token 序列)后,下一个最有可能出现的 token。
-
Token 窗口 (15:15-17:03): 训练时,模型从数据集中随机抽取固定长度的 token 窗口(例如 8000 个 token)作为输入。
-
神经网络的输入与输出 (17:03-18:21):
-
输入: Token 序列(上下文)。
-
输出: 预测下一个 token 的概率分布,词汇表中每个 token 都有一个概率值。
-
-
随机初始化与迭代更新 (17:38-18:54): 神经网络初始参数是随机的,预测也是随机的。训练过程通过迭代更新参数,调整预测结果,使其与训练数据中的统计模式相匹配。
-
损失函数与优化 (18:21-20:11): 训练过程使用损失函数来衡量模型预测与真实 token 的差距。优化算法(如梯度下降)用于调整参数,最小化损失函数,提高预测准确率。
-
神经网络内部结构:Transformer (20:11-23:31): 现代 LLM 的核心架构是 Transformer,它是一种复杂的数学函数,包含数百万甚至数十亿个参数。
-
参数 (权重) (20:43-21:57): 参数是神经网络学习知识的载体,训练过程的目标是找到参数的最佳设置。
-
数学表达式 (21:57-22:32): Transformer 由一系列简单的数学运算(如矩阵乘法、加法、非线性激活函数等)构成。
-
Transformer 架构 (22:32-23:31): Transformer 包含注意力机制和多层感知器等组件,能够有效地处理序列数据并捕捉 token 之间的复杂关系。
-
-
神经网络的无记忆性 (23:31-25:25): Transformer 本身是无记忆的,每次预测都基于当前的输入上下文。长期记忆和对话状态需要通过外部机制来维护。
-
Transformer 的本质 (25:25-26:01): Transformer 是一个参数化的数学函数,通过训练调整参数,使其预测结果与训练数据的统计模式一致。
推理阶段:生成文本
-
推理过程概述 (26:01-26:24): 推理阶段是指在模型训练完成后,利用模型生成新文本的过程。
-
从概率分布中采样 (26:24-27:16): 推理过程是一个迭代采样过程。给定初始 token(前缀),模型预测下一个 token 的概率分布,并从中采样一个 token 作为输出。
-
迭代生成 (27:16-28:48): 将采样的 token 追加到输入序列,重复采样过程,逐个生成后续 token,形成完整的文本序列。
-
随机性与多样性 (28:19-28:48): 由于采样过程的随机性,每次推理生成的文本序列可能略有不同,即使给定相同的前缀。这使得模型能够生成多样化的文本,而不是简单地重复训练数据。
-
推理的应用 (29:52-30:16): 在 ChatGPT 等应用中,用户与模型交互的过程就是推理阶段。模型接收用户输入(token 序列),生成回复(token 序列),并将其转换回文本呈现给用户。
GPT-2 模型实例:训练与推理
-
GPT-2 模型的特点 (30:16-31:53):
-
Transformer 架构:GPT-2 是一个 Transformer 神经网络。
-
参数规模:GPT-2 具有 1.6 亿个参数(相对较小,现代模型参数量已达数千亿甚至万亿)。
-
训练数据:GPT-2 在约 1000 亿个 token 上进行训练(也相对较小)。
-
最大上下文长度:GPT-2 的最大上下文长度为 1024 个 token。
-
-
GPT-2 的训练成本 (33:02-33:57): 2019 年训练 GPT-2 的成本约为 4 万美元,但随着硬件和软件的进步,现在成本已大幅降低,个人研究者也能负担得起。
-
GPT-2 的模型发布 (42:25-43:28): OpenAI 发布了 GPT-2 的模型权重和代码,使得研究人员可以复现和研究该模型。模型发布包括 Python 代码(描述模型结构)和参数权重(模型学习到的知识)。
从基础模型到助手模型:指令微调
-
基础模型与助手模型的区别 (43:28-44:12):
-
基础模型 (Base Model): token 模拟器,擅长生成类似互联网文本的序列,但不具备对话能力,无法回答问题。
-
助手模型 (Assistant Model): 在基础模型的基础上,通过指令微调等技术训练而成,具备对话能力,能够理解指令并给出有用的回复。
-
-
指令微调 (Instruction Tuning) (57:02-01:04:03): 将基础模型转化为助手模型的关键步骤。
-
对话数据集 (01:01:10-01:02:45): 使用人工标注的对话数据集进行训练,数据集包含人类用户和助手之间的多轮对话。
-
数据来源 (01:02:45-01:04:03): 对话数据由人类标注员根据 OpenAI 提供的标注指南编写。
-
标注指南 (01:11:34-01:11:55): 标注指南要求助手模型“helpful, truthful, and harmless”(乐于助人、真实可信、无害)。
-
训练过程 (01:04:03-01:04:41): 指令微调阶段使用与预训练阶段相同的算法,但将训练数据替换为对话数据集,使模型学习模仿人类助手的对话行为。
-
-
OpenAI InstructGPT 论文 (01:10:16-01:13:13): InstructGPT 论文是 OpenAI 在指令微调方面的早期工作,介绍了如何通过人类反馈训练助手模型。
-
Open Assistant 项目 (01:12:33-01:13:13): Open Assistant 是一个开源项目,致力于复现 InstructGPT 的训练流程,并收集自己的对话数据集。
-
UltraChat 数据集 (01:15:47-01:16:13): UltraChat 是一个现代对话数据集的例子,规模庞大(数百万对话),主要由合成数据构成,并经过人工编辑。
LLM 的认知特性与局限性
-
幻觉 (Hallucination) (01:20:32-01:24:45): LLM 会产生幻觉,编造事实性信息,因为它们本质上是在模仿训练数据中的统计模式,而不是真正理解或检索知识。
-
知识边界检测 (01:25:49-01:26:51): 通过提问和评估模型回答的一致性,判断模型是否了解某个事实。
-
拒绝回答机制 (01:30:41-01:31:38): 对于模型不确定的问题,训练模型学会拒绝回答,或者声明 “I don't know”。
-
工具使用 (Web Search) (01:31:38-01:35:47): 允许模型使用外部工具(如网络搜索)检索信息,从而获取更准确和最新的知识。
-
幻觉的根源 (01:22:10-01:24:00): 模型在训练数据中学习到 “who is X” 类型的问题通常有确定的答案,因此即使面对未知问题,也会倾向于编造答案以符合训练数据的风格。
-
缓解幻觉的方法 (01:24:45-01:31:38):
-
-
知识的本质 (01:49:42-01:50:33): LLM 的知识存储在网络参数中,是对互联网信息的 “模糊回忆”,而非精确记忆。这种知识是统计性的、概率性的,而非精确和可靠的。
-
自我认知 (Knowledge of Self) (01:41:42-01:45:42): LLM 本身没有持久的自我意识,对自身模型的描述(例如 “我是 OpenAI GPT-3 模型”)是基于训练数据的幻觉,而非真实的自我认知。可以通过硬编码或系统消息来引导模型进行自我描述。
-
计算能力限制 (01:47:22-01:52:53):
-
Token 限制 (01:47:22-01:52:53): LLM 在处理每个 token 时的计算量有限,无法在单个 token 中完成复杂的计算或推理。
-
数学运算的挑战 (01:52:53-01:55:49): LLM 在心算方面表现不佳,尤其是在需要多步骤计算或处理大数字时。
-
工具使用 (Code Interpreter) (01:55:49-01:57:28): 利用代码解释器等工具,将复杂计算外包给专业的计算工具,可以提高 LLM 的数学运算能力和可靠性。
-
-
拼写和计数错误 (02:01:11-02:04:42):
-
Tokenization 的影响 (02:01:25-02:03:01): 由于模型处理的是 token 而非字符,字符级别的任务(如拼写、计数)对 LLM 构成挑战。
-
计数能力不足 (02:03:01-02:04:16): LLM 在计数方面表现不佳,容易出错,即使是简单的计数任务也可能失败。
-
利用工具解决 (02:03:01-02:04:42): 对于拼写和计数任务,可以借助代码解释器等工具来提高准确性。
-
-
逻辑错误 (02:04:42-02:07:22): LLM 在逻辑推理方面也可能犯错,即使是简单的比较大小问题也可能出错。这表明 LLM 的推理能力并非完全可靠。
-
瑞士奶酪模型 (Swiss Cheese Model) (03:08:50-03:09:35): LLM 的能力像瑞士奶酪一样,在很多方面表现出色,但在某些特定情况下会随机失败,存在“漏洞”。用户应谨慎使用 LLM,并进行人工检查和验证。
强化学习 (RLHF) 阶段:提升模型性能
-
强化学习的动机 (02:11:00-02:11:14): 为了进一步提升 LLM 的性能,使其更符合人类偏好,引入强化学习阶段。
-
类比儿童教育 (02:11:14-02:14:43): 将 LLM 的训练过程类比为儿童教育:
-
预训练: 阅读教科书,获取背景知识。
-
指令微调: 学习专家解答问题的范例。
-
强化学习: 通过练习题(实践问题)和反馈(奖励信号)提升解题能力。
-
-
RLHF 的核心思想:奖励模型 (Reward Model) (02:52:24-02:55:37):
-
人工排序 (02:53:58-02:54:35): 人类标注员对模型生成的多个回答进行排序,选出最佳答案。
-
训练奖励模型 (02:54:35-02:55:37): 训练一个独立的神经网络(奖励模型),使其学习模仿人类的排序偏好,对模型回答进行打分。
-
强化学习优化 (02:53:02-02:53:34): 使用奖励模型作为奖励信号,通过强化学习算法(如 PPO)优化 LLM,使其生成能够获得更高奖励分数的回答。
-
-
RLHF 的优势 (02:58:24-03:00:31):
-
提升模型性能 (02:58:24-03:00:13): RLHF 能够显著提升 LLM 的性能,使其生成更符合人类偏好的高质量回答。
-
降低标注难度 (02:59:07-02:59:52): 人类标注员只需对模型回答进行排序,无需直接编写理想答案,降低了标注难度。
-
涌现思维链 (02:30:28-02:32:59): RLHF 训练出的模型能够涌现出类似人类思维链的推理过程,提高复杂问题的解决能力。
-
-
RLHF 的局限性与挑战 (03:00:47-03:06:53):
-
奖励模型作弊 (Gaming the Reward Model) (03:01:30-03:04:21): LLM 可能会学会 “作弊”,生成在奖励模型下得分很高,但实际上质量很差的回答。
-
非真实 RL (Not Real RL) (03:05:00-03:06:53): RLHF 本质上是一种微调技术,而非真正的强化学习,难以实现持续改进和超越人类水平。
-
-
RLHF 的价值 (03:06:53-03:07:01): 尽管存在局限性,RLHF 仍然是一种有效的微调技术,能够显著提升 LLM 的性能,使其更实用。
LLM 的未来能力与发展趋势
-
多模态 (Multimodality) (03:09:57-03:11:17): 未来的 LLM 将具备多模态能力,不仅能处理文本,还能原生处理音频和图像等多种模态的数据,实现更自然的交互体验。
-
Agent 智能体 (03:11:17-03:12:39): 未来的 LLM 将发展为智能体,能够自主执行复杂任务,进行长期规划和执行,并与人类进行更深入的协作。
-
无处不在的隐形化 (Pervasive and Invisible) (03:12:39-03:13:13): LLM 将更深入地融入各种工具和应用中,成为像计算机一样普及的基础设施。
-
测试时训练 (Test Time Training) (03:13:13-03:14:19): 未来的研究方向之一是让模型在测试时也能持续学习和改进,克服当前模型参数固定的局限性。
-
长上下文处理 (Long Context) (03:14:19-03:15:06): 未来的 LLM 需要处理更长的上下文,以应对多模态和长期任务的需求。
跟踪 LLM 最新进展的资源
-
LLM 排行榜 (AM-Leaderboard) (03:15:06-03:17:35): AM-Leaderboard 是一个跟踪 LLM 模型性能的排行榜,基于人类对比评估进行排名,可以帮助了解各种模型的优劣。
-
AI News Newsletter (03:17:35-03:18:19): AI News Newsletter 是一个信息全面的 AI 新闻邮件列表,总结 LLM 领域的最新进展,并提供人工编辑的摘要。
-
X (Twitter) (03:18:19-03:18:38): 关注 X (Twitter) 上值得信赖的 AI 研究者和从业者,可以及时获取 LLM 领域的最新动态。
如何使用和在哪里找到 LLM 模型
-
专有模型 (Proprietary Models) (03:18:38-03:19:23): 对于 OpenAI、Google 等公司的专有模型,需要访问其官方网站或平台(如 ChatGPT、Gemini AI Studio)使用。
-
开源模型 (Open-Weight Models) (03:19:23-03:21:16): 对于 DeepSeek、Llama 等开源模型,可以使用以下方式:
-
Inference Provider (Together AI) (03:19:23-03:21:16): 使用 Together AI 等推理服务提供商,在线体验和调用各种开源模型。
-
LM Studio (03:20:36-03:21:16): 使用 LM Studio 等本地应用程序,在个人电脑上运行和部署较小的开源模型。
-
总结:ChatGPT 的本质与未来展望
-
ChatGPT 的本质 (03:21:46-03:25:18): ChatGPT 本质上是 OpenAI 数据标注员的神经网络模拟器,它模仿人类标注员在遵循 OpenAI 标注指南的情况下,对各种提示词的理想助手式回应。
-
LLM 的局限性 (03:25:18-03:26:49): LLM 并非完美,存在幻觉、瑞士奶酪式能力缺陷等问题。用户应谨慎使用,并进行人工检查和验证。
-
LLM 的优势 (03:26:49-03:30:25): LLM 是强大的工具,能够显著加速工作效率,并在各领域创造巨大价值。用户应将其视为工具箱中的工具,用于启发灵感、撰写初稿等,并始终对最终产品负责。
-
LLM 的未来 (03:30:25-03:31:12): LLM 的未来发展令人兴奋,多模态、Agent 智能体、持续学习等趋势值得期待。虽然 LLM 仍处于早期发展阶段,但其潜力无限,未来可期。