LLM 怎么生成回答?揭秘“思考“过程

news2026/4/4 18:34:12
系列大语言模型原理科普5 篇本篇第 3 篇难度⭐⭐ 零基础 浅显技术字数约 9500 字阅读时间20 分钟 开篇你输入问题后发生了什么想象一下这个场景你在对话框输入今天天气怎么样 ↓ 点击发送 ↓ 等待 1-2 秒 ↓ LLM 回复我很好谢谢关心你呢但这 1-2 秒内LLM 内部经历了什么它是怎么把你的问题变成回答的第 1 篇我们知道了 LLM 是什么第 2 篇我们知道了它是怎么学习的。今天这篇我会带你走进 LLM 的大脑看看它内部是怎么工作的。你会了解输入的文字怎么变成数字自注意力机制的详细计算过程96 层每层都在做什么数字怎么变回文字为什么会有幻觉一、整体流程从输入到输出的旅程在深入细节之前我们先看整体流程。LLM 生成回答分为 5 个步骤第 1 步输入编码文字 → 数字 ↓ 第 2 步位置编码记住字的顺序 ↓ 第 3 步注意力层找字与字的关系 ↓ 第 4 步前馈层处理信息 ↓ 第 5 步输出解码数字 → 文字重复第 3-4 步 96 次然后输出。 图 1整体流程输入你好吗 ↓ [1] 输入编码 → [1234, 5678, 9012] ↓ [2] 位置编码 → 记住顺序 ↓ [3] 注意力层 → 找关系重复 96 次 ↓ [4] 前馈层 → 处理信息 ↓ [5] 输出解码 → 我很好二、第 1 步输入编码文字怎么变成数字2.1 为什么要变成数字LLM 是计算机程序它只认识数字。文字对人类有意义对计算机没有。所以第一步是把文字变成数字。你好吗 → [1234, 5678, 9012]这个过程叫编码Encoding。2.2 分词把句子拆成字/词编码之前需要先分词。分词是什么就是把句子拆成字或者词。中文分词 我喜欢吃苹果 → [我, 喜欢, 吃, 苹果] 英文分词 I like apples → [I, like, apples]为什么要分词如果按字分词汇量小几千个汉字但丢失词义如果按词分词汇量大几十万个词但保留词义大语言模型通常用子词Subword我喜欢吃苹果 → [我, 喜, 欢, 吃, 苹, 果] I like apples → [I, like, app, les]子词的好处词汇量适中约 5 万个能处理新词保留部分词义 技术小知识分词算法常用的分词算法 1. BPEByte Pair Encoding - 从字符开始合并频繁出现的组合 - 例子apple → app le 2. WordPiece - BPE 的变体Google 用 - 例子playing → play ##ing 3. SentencePiece - 把整个句子当字符串处理 - 支持多语言2.3 词嵌入字/词变成向量分词后每个字/词都有一个编号Token ID。我 → 1234 喜欢 → 5678 吃 → 9012 苹果 → 3456但这个编号还不够需要变成向量Vector。什么是向量就是一个数字列表。我 → [0.1, -0.5, 0.3, ..., 0.8] 长度为 4096为什么用向量一个数字只能表示是谁向量可以表示含义相似的词向量相近喜欢的向量[0.1, -0.5, 0.3, ...] 爱的向量 [0.1, -0.4, 0.3, ...] 很接近 苹果的向量[0.8, 0.2, -0.1, ...] 香蕉的向量[0.7, 0.3, -0.1, ...] 很接近 图 2词嵌入词汇表5 万个词 我 → 编号 1234 → 向量 [0.1, -0.5, 0.3, ...] 你 → 编号 1235 → 向量 [0.2, -0.4, 0.2, ...] 喜欢 → 编号 5678 → 向量 [0.3, -0.3, 0.4, ...] 向量长度4096每个词用 4096 个数字表示 技术小知识向量维度向量长度维度决定了表达能力 - 小模型2048 维 - 中模型4096 维 - 大模型8192 维 维度越高能表达的含义越丰富 但计算量也越大。三、第 2 步位置编码记住字的顺序3.1 为什么需要位置编码LLM 有一个问题它并行处理所有字不知道字的顺序。我喜欢吃苹果 和 苹果喜欢吃我 词是一样的但意思完全相反。怎么解决给每个字加上位置信息。第 1 个字我 位置 0 第 2 个字喜欢 位置 1 第 3 个字吃 位置 2 第 4 个字苹果 位置 3这个过程叫位置编码Positional Encoding。3.2 位置编码怎么实现位置编码也是一个向量和词向量相加。我的词向量 [0.1, -0.5, 0.3, ...] 位置 0 的向量 [0.0, 0.0, 0.0, ...] 相加后 [0.1, -0.5, 0.3, ...] 喜欢的词向量 [0.3, -0.3, 0.4, ...] 位置 1 的向量 [0.1, 0.1, 0.1, ...] 相加后 [0.4, -0.2, 0.5, ...] 吃的词向量 [0.5, -0.1, 0.2, ...] 位置 2 的向量 [0.2, 0.2, 0.2, ...] 相加后 [0.7, 0.1, 0.4, ...]这样每个字都有了位置信息。 技术小知识位置编码公式位置编码用正弦和余弦函数 PE(pos, 2i) sin(pos / 10000^(2i/d)) PE(pos, 2i1) cos(pos / 10000^(2i/d)) 不用懂细节知道核心思想就行 - 不同位置有不同的编码 - 相邻位置编码相近 - 可以表示相对位置 图 3位置编码词向量 位置向量 带位置的词向量 我 [0.1, -0.5, ...] [0.0, 0.0, ...] [0.1, -0.5, ...] 喜欢 [0.3, -0.3, ...] [0.1, 0.1, ...] [0.4, -0.2, ...] 吃 [0.5, -0.1, ...] [0.2, 0.2, ...] [0.7, 0.1, ...] 苹果 [0.6, 0.0, ...] [0.3, 0.3, ...] [0.9, 0.3, ...]四、第 3-4 步注意力层 前馈层核心处理编码完成后进入核心处理阶段。这个阶段重复 96 次每层都在做类似的事。4.1 自注意力机制找字与字的关系自注意力机制是 LLM 的核心。它的作用是让每个字注意其他字找关系。怎么工作分 4 步第 1 步生成 Q、K、V 向量每个字生成三个向量QQuery查询我想找什么KKey键我是什么VValue值我的内容我Q[...], K[...], V[...] 喜欢Q[...], K[...], V[...] 吃Q[...], K[...], V[...] 苹果Q[...], K[...], V[...] 类比想象你在图书馆找书 Q查询你想找的书的主题 K键每本书的标签 V值书的内容 你用 Q 去匹配 K找到相关的书 然后读取 V书的内容。第 2 步计算注意力分数用 Q 和 K 计算每个字之间的关系。苹果的 Q × 每个字的 K 注意力分数 苹果注意我0.1 苹果注意喜欢0.2 苹果注意吃0.3 苹果注意苹果0.4第 3 步Softmax 归一化把分数转成概率加起来等于 1。苹果注意我0.1 → 10% 苹果注意喜欢0.2 → 20% 苹果注意吃0.3 → 30% 苹果注意苹果0.4 → 40%第 4 步加权求和根据概率加权求和 V 向量。苹果的新向量 10% × 我的 V 20% × 喜欢的 V 30% × 吃的 V 40% × 苹果的 V这样苹果就融合了其他字的信息。 图 4自注意力机制句子我 | 喜欢 | 吃 | 苹果 苹果的注意力计算 1. 生成 Q、K、V 苹果的 Q [...] 所有字的 K [...], [...], [...], [...] 所有字的 V [...], [...], [...], [...] 2. 计算注意力分数 Q × K1 0.1注意我 Q × K2 0.2注意喜欢 Q × K3 0.3注意吃 Q × K4 0.4注意苹果 3. Softmax 归一化 0.1 → 10% 0.2 → 20% 0.3 → 30% 0.4 → 40% 4. 加权求和 新向量 10%×V1 20%×V2 30%×V3 40%×V44.2 多头注意力从多个角度看上面的过程只做了一次注意力计算。大语言模型会做多次这叫多头注意力Multi-Head Attention。头 1关注语法关系 头 2关注语义关系 头 3关注上下文 ... 头 8关注其他关系每个头独立计算然后把结果合并。 类比多头注意力就像 8 个人同时读一句话 第 1 个人关注语法主谓宾 第 2 个人关注词性名词、动词 第 3 个人关注情感褒义、贬义 ... 第 8 个人关注逻辑因果、转折 最后把 8 个人的发现合并 得到更全面的理解。 技术小知识为什么用多头单头注意力只能关注一种关系。 多头注意力可以 - 同时关注多种关系 - 提高表达能力 - 更鲁棒一个头失效其他头还能用 通常用 8-32 个头。4.3 前馈网络处理信息注意力层之后是前馈网络Feed-Forward Network。前馈网络是什么就是一个简单的神经网络每层独立处理信息。输入向量 → 线性变换 → 激活函数 → 线性变换 → 输出向量作用进一步处理注意力层的信息增加非线性让模型能表达复杂关系 图 5注意力层 前馈层输入 ↓ [自注意力层] ← 找字与字的关系 ↓ [残差连接] ← 保留原始信息 ↓ [层归一化] ← 规范化 ↓ [前馈网络] ← 处理信息 ↓ [残差连接] ← 保留原始信息 ↓ [层归一化] ← 规范化 ↓ 输出传给下一层4.4 96 层都在做什么大语言模型有 96 层每层都在做类似的事。但不同层关注的东西不同层级关注内容例子1-16 层底层字词级别词性、语法17-64 层中层短语级别短语结构、局部语义65-96 层高层句子级别整体语义、逻辑关系例子句子我喜欢吃苹果因为它很甜 底层1-16 层 - 苹果是名词 - 喜欢是动词 - 甜是形容词 中层17-64 层 - 喜欢吃苹果是动宾结构 - 因为它很甜是原因状语 高层65-96 层 - 它指代苹果 - 甜是喜欢的原因 图 696 层处理输入 → 层 1-16 → 层 17-64 → 层 65-96 → 输出 ↓ ↓ ↓ 字词级别 短语级别 句子级别 词性/语法 短语结构 整体语义五、第 5 步输出解码数字怎么变回文字经过 96 层处理后得到了一个向量。这个向量需要变回文字。5.1 预测下一个字输出的向量通过一个线性层变成词汇表大小的向量。96 层输出[0.1, -0.5, ..., 0.8] 长度 4096 ↓ 线性层 ↓ 词汇表分数[8.5, 1.0, 0.3, ..., 2.1] 长度 50000每个数字代表一个字的分数。然后用Softmax转成概率词汇表分数 → Softmax → 概率分布 好8.5 → 85% 不错1.0 → 10% 烂0.3 → 3% 其他2.1 → 2%选概率最高的字作为输出。5.2 递归生成一个字变成长篇大论生成一个字后把它加到输入里再预测下一个字。这就是递归。第 1 轮 输入今天天气 输出真 第 2 轮 输入今天天气真 输出好 第 3 轮 输入今天天气真好 输出 第 4 轮 输入今天天气真好 输出适 第 5 轮 输入今天天气真好适 输出合 ... 重复直到生成结束标记 技术小知识结束标记怎么知道什么时候结束 词汇表里有一个特殊标记EOSEnd of Sentence 当模型预测出EOS时就停止生成。 例子 今天天气真好。EOS ↑ 到这里停止 图 7递归生成第 1 次输入我 → 预测爱 → 输出我爱 ↓ 第 2 次输入我爱 → 预测学 → 输出我爱学 ↓ 第 3 次输入我爱学 → 预测习 → 输出我爱学习 ↓ ... 第 100 次预测EOS → 停止 最终输出我爱学习因为学习能让我进步...六、为什么会有幻觉技术原因大揭秘读到这里你可能有个问题LLM 为什么会胡说八道从技术角度看有几个原因6.1 原因 1概率生成≠事实LLM 生成文字是基于概率不是基于事实。问2025 年诺贝尔文学奖得主是谁 LLM 的思考过程 1. 见过很多诺贝尔文学奖得主是 XXX的句子 2. 计算每个名字的概率 3. 选概率最高的 它不知道 2025 年还没颁奖 它只是在预测听起来像真的答案。这就是幻觉的根本原因。6.2 原因 2训练数据有错误LLM 的知识来自训练数据。如果训练数据有错误LLM 也会学到错误。训练数据地球是平的错误信息 ↓ LLM 学到这个知识 ↓ 问地球是什么形状 答地球是平的错误互联网上有很多错误信息LLM 无法区分真假。6.3 原因 3过度泛化LLM 会从训练数据中学习规律。但有时会过度泛化。训练数据 - 美国总统住在白宫 - 英国首相住在唐宁街 10 号 - 法国总统住在爱丽舍宫 LLM 学到的规律国家领导人都住在有名的房子里 问德国总理住在哪里 LLM 答德国总理住在某某宫编造 它没见过正确答案就根据规律编了一个。6.4 原因 4注意力分散有时候注意力机制没有注意到关键信息。句子小明昨天去了北京今天去了上海 问小明现在在哪里 如果注意力机制 - 注意北京40% - 注意今天10% - 注意上海50% 可能答错因为没有正确理解时间顺序。 图 8幻觉原因幻觉的 4 大技术原因 1. 概率生成 ≠ 事实 [████████████████] 40% 2. 训练数据有错误 [████████] 25% 3. 过度泛化 [████] 20% 4. 注意力分散 [██] 15%七、总结3 分钟回顾核心要点读完这篇文章你应该记住这几点 核心要点1. 整体流程5 步输入编码文字→数字位置编码记住顺序注意力层找关系前馈层处理信息输出解码数字→文字2. 输入编码分词拆成字/词子词分词词嵌入字/词变成向量4096 维3. 位置编码记住字的顺序用正弦/余弦函数编码4. 自注意力机制核心Q、K、V 向量计算注意力分数Softmax 归一化加权求和5. 多头注意力8-32 个头从多个角度理解6. 96 层的作用底层1-16字词级别中层17-64短语级别高层65-96句子级别7. 输出解码线性层 → Softmax → 概率选概率最高的字递归生成8. 幻觉的技术原因概率生成≠事实训练数据有错误过度泛化注意力分散 下篇预告读完这篇你可能有个问题LLM 到底能做什么不能做什么它的能力边界在哪里哪些任务它擅长哪些任务它不擅长第 4 篇《LLM 能做什么能力边界全解析》我会全面分析 LLM 的能力。你会看到能力雷达图5 维评分擅长任务的详细分析不擅长任务的技术原因使用检查清单什么场景能用/不能用真实翻车案例下周五我们继续。 互动时间读完这篇文章你有什么问题欢迎在评论区留言我会尽量回答。你也可以做个小测试看看自己有没有理解 小测试1. LLM 输入编码的第一步是什么 A. 位置编码 B. 分词 C. 注意力 2. 词向量的作用是什么 A. 表示编号 B. 表示含义 C. 表示顺序 3. 自注意力机制中Q、K、V 分别代表什么 A. 查询、键、值 B. 问题、答案、结果 C. 输入、处理、输出 4. 多头注意力的作用是什么 A. 提高速度 B. 从多角度理解 C. 减少计算 5. 96 层中高层65-96关注什么 A. 字词 B. 短语 C. 句子级别语义 6. 幻觉的根本原因是什么 A. 程序 Bug B. 概率生成≠事实 C. 数据太少 答案1.B 2.B 3.A 4.B 5.C 6.B系列文章第 1 篇大语言模型是什么✅第 2 篇LLM 是怎么学习的✅第 3 篇LLM 怎么生成回答本文✅第 4 篇LLM 能做什么下周五第 5 篇LLM 的局限性和未来最后更新2026-04-02下一篇4 月 9 日周五发布如果你觉得这篇文章有帮助欢迎点赞、收藏、转发让更多人看懂大语言模型

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2483098.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…