ARTICLE DETAIL

资讯详情

深耕商务建站与企业官网运营的一线实战洞察。

【Plain Language Large Model】【大语言模型底层原理全解析:从Token生成到智能体演进】流食般投喂

【Plain Language Large Model】【大语言模型底层原理全解析:从Token生成到智能体演进】流食般投喂 大语言模型底层原理全解析从Token生成到智能体演进当我们熟练地调用 ChatGPT、DeepSeek 或千问的 API 时可曾想过模型背后并非“思考”而是在进行一场精密且疯狂的数学运算这一系列课堂笔记将带大家穿透黑盒看清 LLM 从“说第一个字”到“进化为机器人”的完整旅程。一、核心工作原理一场“滚雪球”式的概率游戏大语言模型LLM interaction 的流程可以极度简化为三段式Prompt → LLM → Token。用户输入的指令叫做提示词Prompt。比如问“什么是大语言模型”这句话就是 Prompt。模型拿到后并不会直接“理解”这句话而是做一道数学题基于当前词表计算下一个最应该出现的词元Token。1.1 Token 的本质“词”而非“字”这里老师特别强调了一个易错点模型生成的最小单位是Token词元/代币它通常是一个词而非单个汉字。例如“我爱北京天安门”中每个词可能对应一个或多个 Token“西红柿炒鸡蛋”里“西红柿”“炒”“鸡蛋”各自可能是独立的 Token。老师用“这件衣服很漂亮”与“这件衣服很帅气”举例说明模型会根据上文计算概率为后续拼接不同的词语。1.2 自回归生成像滚雪球一样循环模型的工作方式是自回归Auto-regressive用老师的话说就是“滚雪球”。以“中国的首都是哪里”为例课堂上的推演非常经典模型一通概率计算发现下一个概率最高的 Token 是“北”但它不会停而是把“中国的首都是哪里 北”作为新的输入再次喂给自己模型继续算得出下一个高概率 Token 是“京”再把“中国的首都是哪里 北京”拼回去模型判断句子完整于是输出句号或特殊的EOSEnd of Sentence结束标记最终整段回答是由这一个个 Token 依次拼接而成的。老师形象地说道这个过程如同滚雪球上一步生成的内容会反馈回模型成为生成下一步的语境。1.3 Token 的选择策略不只“选最像的”那么模型如何从动辄 10 万 的词表中挑选下一个 Token课堂上介绍了从“最老实”到“最天马行空”的几种策略贪婪策略Greedy Search每次都选概率最高的那个。好处是结果固定、稳定坏处是缺乏多样性无法解释为什么同一个问题偶尔会给出不同回答。随机策略像掷骰子、抽扑克牌一样完全随机选。极具不确定性现实里基本不单独使用。温度系数Temperature这是控制“贪婪”与“随机”之间平衡的旋钮。低温倾向选高概率 Token适合数学题等逻辑性强、答案唯一的场景高温增加低概率词被选中的机会回答更发散适合创意写作。老师补充很多可视化平台里的“逻辑性强”或“发散思维”选项底层其实就是调节 Temperature只是加了一层遮罩。Top-K 采样只从概率最高的前 K 个如前 50 个Token 里选缩小候选范围过滤掉极低概率的不合理词汇。Top-P 核采样Nucleus Sampling动态选择累积概率达到阈值 P如 0.9的最小 Token 集合。与 Top-K 固定数量不同Top-P 固定的是“概率质量”。老师举了一个直观的例子如果是“112”“2”的概率可能占 99%此时 Top-P 可能只选 1 个词如果概率分布均匀则可能选数千个词。综合流程课堂零碎知识点实际应用中往往是组合拳——先 Top-P 缩小范围再 Top-K 筛选最后结合 Temperature 做加权随机选择。在选定候选集后还会对其概率进行重新归一化放大至 100%再依据温度系数抽样。这个“概率重校准”的细节是很多初学者容易忽略的。二、认识 Token模型的“原子”与经济账本理解了生成机制后课程进入了更微观的层面Token 到底是什么为什么模型非得用 Token 说话2.1 Token 的形态与分词差异Token 是模型处理的最小基本单位不可再分。它的形态多样一个完整的英文单词如 believe中文里的一个字单词的一部分子词单元标点符号、表情符号老师特别提到“一个笑脸也是一个 Token”所以模型能生成表情。课堂上用实际工具对比了分词差异这些例子非常经典值得记住英文“Believe”在 GPT-4 和 GPT-5 中都被切分为 3 个 Token但切分位置和 Token ID 并不完全相同中文“我爱大模型开发”在 GPT-4 中是 4 个 Token老师提到当时测试还出现了乱码而在千问Qwen模型中则是 5 个 Token。这说明不同模型拥有独立的词表和分词策略Token ID 对应的就是模型内部的“字典页码”。2.2 为什么非要引入 Token 机制老师归纳了两大核心原因第一数字化与语义保留。大模型底层是复杂的矩阵运算必须把文本转成向量。如果直接把整句“我爱你”映射为一个 ID会丢失内部词汇的组合关系。拆成“我”“爱”“你”三个 Token模型才能学会“我”和“你”之间可以放“爱”或“喜欢”从而保留语义灵活性。第二避免计算量与词表爆炸。若以单个字母为基本单位虽然基数只有 26 个但任意长度拼接会导致组合数量天文数字般增长计算效率极低若以完整单词为基本单位英语单词本就数十万再加上多语言混合词表规模会极其庞大。Token 是介于“字/字母”与“完整单词”之间的折中方案既控制词表规模如 LLaMA 约 12 万、Qwen 可达 25 万又保证计算效率因此被称为“词元”。2.3 输入 Token 为什么比输出 Token 便宜课堂后半段揭秘了一个行业现象输出 Token 的价格通常远高于输入 Token比如某旗舰模型输出约 6 元/百万 Token输入仅约 3 元/百万若缓存命中输入甚至低至 0.025 元/百万。根本原因不在软件而在GPU 硬件计算特性显存带宽瓶颈GPU 计算需要把数据从显存VRAM搬运到高速内存SRAM/SM中运算。输入阶段所有 Token 一次性并行加载耗时极短但输出阶段是自回归的每生成一个 Token 都要把之前的历史上下文从显存反复搬运到 SRAM。这种频繁的“搬运-计算-等待”导致 GPU 算力闲置且占用了昂贵的显存带宽。KV Cache(键值缓存) 累积为避免重复计算模型会把已算好的 Key-Value 缓存到显存中。随着输出长度增加KV Cache 不断累积占用大量显存空间。每次生成新 Token 都要读取这些庞大的 KV 数据进一步加剧资源消耗。老师用了一个生活化比喻输入就像把一车货一次性拉到工地输出则是每砌一块砖都要把之前砌好的所有砖再搬过来参考一遍自然又慢又贵。三、词表LLM 的“新华字典”与 OOV 困境如果说 Token 是原子那词表Vocabulary就是元素周期表。老师将其本质一语道破词表是一个映射字典类比 Java/C 里的 Map或 Python 里的 Dict。3.1 词表的工作流输入端文本先被分词为 Token再转为唯一的数字 ID如“LM”对应 10001因为模型只认数字输出端模型输出的是一系列 ID系统再查词表把 ID 翻译回人类可读的 Token。老师特别强调了一个边界模型无法生成词表范围之外的内容。所有输出都受限于这张“字典”。3.2 字节级回退遇到生僻字的“兜底方案”课堂上抛出了一个现实问题如果遇到词表没收录的新词、生僻字甚至“火星文”怎么办这就是 OOVOut-of-Vocabulary问题。解决方案是字节级回退Byte-level Fallback系统将 0x00 到 0xFF 的所有字节值预设为独立的 Token遇到未知字符时将其拆成单个字节如一个 UTF-8 字符可能由多个字节组成每个字节映射为已知 Token再基于这些字节 Token 做预测。优点保证模型遇到任何字符都不会完全失效。缺点效率低。一个常规 Token 可能被拆成多个字节 Token老师举例说“一个字符可能消耗 5 个 Token”Token 消耗量显著增加既拖慢速度又增加成本。四、多人对话的真相模型没有记忆只有“上下文拼接”课程进入应用层首先打破了一个常见幻觉大模型没有记忆力。4.1 无状态本质y 2x 1老师用了一个极其精准的数学比喻大模型就像函数y 2x 1它不会对输入值有任何记忆只负责对当前输入做复杂计算。课堂实验也很直接先问模型“我叫小明今年 6 岁”再问“我叫什么”它能答出来但新开一个会话直接问“我叫什么”模型完全不知道。这就是所谓的“记忆”把历史对话记录History与当前新问题拼接后一并发送给模型。用户感觉模型记住了其实只是因为它在每次提问时都读到了完整的“剧本”。4.2 为什么人类需要多轮对话既然模型没记忆那为什么要设计多轮对话老师总结了三个深层原因上下文依赖Context Dependency自然语言充满代词和隐喻。比如先问“龙是什么”再问“它的头像”单轮对话无法解决这种指代关系。复杂问题的澄清与拆解人类沟通遵循“省力原则”初始指令往往信息不全。老师举了一个非常贴近实际的例子让 AI 做“用户管理系统”。模型不会直接上手写代码而是会通过多轮反问来明确需求——包含哪些字段需要新增/删除/修改/查询吗经过多轮对齐最终才输出完整方案。纠错与对齐大模型是概率模型会犯错。比如课堂上讨论的数学问题0.999... 1引发的争论。用户需要通过多轮对话指出错误、要求修正才能对齐结果。4.3 引入多轮后的三大挑战与解决方案这部分是课程的“干货中的干货”老师讲得非常细致挑战 1上下文管理瓶颈模型有上下文长度上限如 DeepSeek 支持 1M tokens输出限制 384k。若对话过长会撑爆这个“容器”。对话摘要让模型把长对话压缩成核心信息。老师举了代码工程的例子先让 AI 分析整个项目目录并形成摘要后续开发时只携带摘要而非千万行代码。滑动窗口只保留最近 N 轮如 20-30 轮丢弃早期记录。老师提示这个 N 可以通过运营数据统计出合理值不是拍脑袋定的。RAG检索增强生成把海量数据如《西游记》全文存入向量数据库。问“牛魔王与孙悟空的关系”时只把相关片段如牛魔王结拜、红孩儿章节检索出来喂给模型避免全量投喂。挑战 2推理效率与成本上下文越长生成每个字都要重算前文速度慢、电费高。KV Cache缓存已计算好的 Key-Value 值生成新字时无需重复计算前文剪枝Pruning直接删除对话中的冗余信息和废话减少输入长度。挑战 3中间遗忘Lost in the Middle老师引用了一篇经典论文模型对上下文首尾信息记忆较好但容易遗忘中间部分呈 U 型记忆曲线。根本解决把上下文长度从 1M 扩展到 10M——但这训练成本极高动辄数百万美金周期长。外挂状态存储终极方案引入外部数据库如 PG、MySQL。老师举了旅游计划的例子当家庭出游计划发生变更爸爸要看老虎儿子要看斑马AI 助手检测到状态变化后不把希望寄托在模型回忆上而是将最新计划写入数据库。后续查询时直接从数据库读取最新状态注入 Prompt彻底规避遗忘问题。五、提示词工程给模型设定“人设”与“边界”课程接下来剖析了提示词的分类与系统提示词System Prompt的核心作用。5.1 用户提示词 vs 系统提示词User Prompt用户直接说的话如“北京的天气怎么样”System Prompt预先设定且置于最前端的顶层指令由开发者设定对用户不可见且贯穿整个对话始终。5.2 系统提示词的四大作用1. 定义角色和行为边界可以把“全科博士”塑造成特定专家。老师演示了引导式教学人设设定模型为“一步步引导小朋友且不直接给出答案的老师”。面对2x 3 7模型不会直接报答案而是像教小朋友一样提问“观察天平右边是什么我们第一步先做什么”边界划定设定为“数学老师”并规定“不回答其他科目问题”。当用户要求写一篇春天的作文时模型幽默拒绝“抱歉你走错教室了。”2. 稳定模型行为模型基于概率生成本质上带有“摇色子”般的随机性回复风格可能波动。通过系统提示词限定“回复非常专业”或“语气温柔”可以约束输出保持一致。3. 安全与合规充当安全护栏拒绝制作炸弹、涉黄涉政等请求。同时防御提示词攻击如用户试图套取系统提示词本身。4. 弥补知识短板和提供上下文模型训练数据有截止日期。老师展示了 ClaudeSOP 公司公开的系统提示词案例其中明确写入了当前美国总统及其就职时间等实时政治信息以弥补模型训练数据的滞后。此外还包含模型名称、官网、儿童安全策略、恶意代码处理原则等。5.3 开发框架的抽象在实际开发框架如 LangChain中这些概念被抽象为MessageSystem Message系统提示User Message用户输入AI Message模型回复注意回复本身不属于 Prompt所以统称 MessageTool Message工具调用及返回六、聊天模板格式化的“安全蓝图”当用户输入变得复杂、模型版本快速迭代时直接把 JSON 发给模型会很危险——如果用户输入里带了引号极易导致模型把用户内容和系统指令搞混。这就是聊天模板Chat Template存在的意义。6.1 核心机制用特殊 Token 划定边界聊天模板本质上是一种格式蓝图。它把 JSON 转换成带特殊标记的字符串例如用|start|表示系统指令开始|end|表示结束。模型只需识别这些特定标记就能清晰区分“哪里是系统指令、哪里是用户输入”避免冲突。6.2 模型间的格式鸿沟不同模型家族的模板差异巨大甚至同一系列不同版本如 Qwen 2.5 与 2.7都有细微差别。硬编码 Python 字符串拼接来适配维护成本极高。6.3 为什么推荐 Jinja2课堂上力荐Jinja2作为模板引擎三大优势解耦通用性模型格式微调时只需改模板文件无需改动核心业务代码动态逻辑控制支持 if-else 判断可根据是否有系统指令、是否有工具调用灵活生成不同结构安全防护防注入Jinja2 的自动转义Escape能力能处理用户输入中的复杂特殊字符防止恶意构造字符串破坏解析逻辑。6.4 实际应用路径云端调用如 LangChain 阿里云 QwenJSON 到模板的转换在服务端黑盒完成开发者无感知本地复现/调试建议使用 Hugging Face Transformers 库的apply_chat_template方法输入 JSON 消息列表观察渲染后的完整字符串验证 Start/End Token 格式。七、从“大脑”到“机器人”大模型的未来演进课程最后做了一次系统性回顾并指明了演进方向。7.1 机制闭环一条完整的 LLM 交互链是用户输入 → 系统提示词注入 → 聊天模板格式化 → 词表数字化/概率计算 → 自回归生成 Token → 查表解码 → 多轮上下文循环7.2 可能性之海老师用一组惊人的数字解释了为什么 LLM 能不断“创造”新内容假设词表 10 万10⁵生成第一个字有 10⁵ 种可能第二个字又有 10⁵ 种可能……生成 500 字时累积的可能性呈指数级增长甚至远超宇宙原子总数约 10⁸⁰。有限的词表通过组合产生了近乎无穷的回答空间。7.3 当前局限与智能体Agent目前的大模型主要局限于“回答问题”相当于只有大脑缺乏对外部世界的实际操作能力。下一步的核心演进路径是挂载工具Tools——为大模型装上“四肢”让它不仅能思考还能调用API、查询数据库、执行代码。届时语言模型将从单纯的问答系统进化为能够完成任务的类机器人智能体。写在最后回望这一系列课程从“中国的首都是哪里”的 Token 拼接到旅游计划变更时的外挂数据库从词表里一个生僻字的字节回退到 Claude 系统提示词里对总统信息的精准修补——大语言模型看似“聪明”的背后其实是一套极其严谨的概率工程、内存工程与提示工程的综合体。理解这些底层逻辑不仅能帮我们更高效地调用模型更是在为即将到来的 Agent 时代打下认知地基。毕竟只有先理解大脑如何工作才能真正设计出四肢与大脑协调的机器人。
返回列表
PREV
查看更多资讯
NEXT
返回资讯列表