Neo(@NeoAIForecast)整理了 Local LLM 101 完整系列,按顺序排列,适合新手 straight through 阅读,也适合作为参考。
00 - Local LLM 简介
如果你是本地 AI 世界的新手,从这里开始。
解释什么是本地 LLM,为什么重要,以及为什么学习它们的最佳方式不是追逐模型名称,而是理解底层系统。
你将学习:
- 什么是本地 LLM
- 本地 AI 与云 AI 的区别
- 为什么本地模型对隐私、控制、离线使用和实验很重要
- 整个系列的初学者心理模型
- 为什么本地 LLM 最好被理解为系统,不是魔法聊天框
01 - 推理和序列
这是每个 LLM 的心跳。
LLM 不会一次性写出完整答案。它预测下一个 token,将该 token 附加到序列,然后再预测。那个重复的过程就是推理。
你将学习:
- 推理意味着什么
- 为什么 LLM 使用序列工作
- 提示如何变成生成的输出
- 为什么生成一次一个 token 发生
- 为什么输出长度影响速度
- 为什么本地硬件在生成期间很重要
02 - Token、Tokenizer 和上下文窗口
LLM 不完全像人类一样阅读文本。它们阅读 token。
Token 可以是单词、单词的一部分、标点符号、空白、代码片段或特殊标记。Tokenizer 将文本转换为 token ID,上下文窗口定义模型可以主动使用多少 token。
你将学习:
- 什么是 token
- 为什么 token 不总是单词
- tokenizer 做什么
- 为什么相同文本在不同模型间可能 tokenize 不同
- 什么是上下文窗口
- 为什么长提示会减慢本地模型
- 为什么模型似乎"忘记"旧信息
03 - 权重、参数和模型学到的东西
当人们说模型有 7B、14B、70B 或 405B 参数时,那实际上意味着什么?
解释权重和参数是什么,不假装它们是数据库中的简单事实。
你将学习:
- 什么是参数
- 权重在模型内部做什么
- 训练如何调整权重
- 为什么模型知识存储为统计模式
- 为什么更大的模型可能有帮助,但不保证更好的输出
- 为什么本地模型大小影响内存、速度和能力
04 - 模型实际包含什么
模型不总是只是一个文件。取决于格式和运行时,可用的本地模型可能包括权重、架构配置、tokenizer 文件、聊天模板、生成设置、特殊 token、元数据、许可证和格式特定的打包。
你将学习:
- 模型架构意味着什么
- 为什么权重只是模型包的一部分
- 为什么 tokenizer 文件很重要
- 配置文件描述什么
- 聊天模板做什么
- 为什么许可证很重要
- GGUF 和 safetensors 等格式如何 fit
05 - 生成、Softmax、贪婪和采样
为什么相同的提示可以产生不同的答案?因为模型不直接"选择单词"。它为可能的下一个 token 产生分数。这些分数变成概率,解码设置决定选择哪个 token。
你将学习:
- logits 在高层是什么
- softmax 如何将分数变成概率
- 贪婪解码做什么
- 为什么采样创造变化
- 温度如何改变随机性
- top-k 和 top-p 如何塑造 token 选择
- 为什么生成设置影响风格,不是模型的底层知识
06 - KV 缓存和会话记忆
KV 缓存是最被误解的本地 LLM 概念之一。它通过存储先前 token 的中间注意力信息来帮助模型高效地继续生成。但它不是长期记忆。
你将学习:
- KV 缓存存储什么
- 为什么它使生成更快
- 它如何与活动上下文中的先前 token 相关
- 为什么 KV 缓存不是学习到的知识
- 为什么聊天历史、上下文、缓存和记忆是不同的东西
- 为什么模型不能可靠地使用其活动上下文之外的信息,除非另一个系统提供它
07 - Transformer:核心引擎
大多数现代 LLM 建立在 transformer 架构上。解释 transformer 的高层:如何处理 token 序列,通过层转换表示,以及使用注意力让 token 相互影响。
你将学习:
- 为什么 transformer 很重要
- token 表示如何通过层移动
- 注意力在概念上做什么
- 为什么 transformer 随数据和计算良好扩展
- 为什么它们取代了许多旧的序列建模方法
- transformer 如何驱动现代本地 LLM
08 - Transformer 层和自注意力
自注意力是现代 LLM 背后的关键思想之一。它让每个 token 查看序列中的其他 token 并决定哪些关系重要。
你将学习:
- 什么是 token 表示
- 自注意力如何让 token 相互关联
- 为什么注意力权重很重要
- 层如何精炼表示
- 多头注意力在概念上做什么
- 为什么堆叠层构建更丰富的理解
09 - 从理论到运行本地模型
将整个系列连接到真实本地推理。当你通过 llama.cpp、Ollama、LM Studio 或其他运行时运行 GGUF 模型时,前面文章中的所有部分都汇集在一起。
你将学习:
- 运行时如何加载模型权重和配置
- 聊天模板如何格式化消息
- tokenizer 如何将文本变成 token ID
- 上下文窗口如何设置活动工作区
- 推理如何一次预测一个 token
- 采样如何选择输出 token
- KV 缓存如何加速继续
- 为什么硬件决定实际速度和内存限制
- GGUF、Ollama、LM Studio 和 llama.cpp 在哪里 fit
跟随下一个系列,更深入地进入本地 LLM 的世界。