当前位置: 首页 > news >正文

从输入到输出:大语言模型一次完整推理简单解析 - 实践

前言

大语言模型(LLM)的推理过程,本质上是一个在离散 token 空间中进行条件概率建模与自回归采样的计算流程。从系统角度看,这一过程可以被严格拆解为:文本离散化、全量上下文建模(Prefill)、概率分布构造、候选空间裁剪、随机采样、状态递推,直至满足终止条件。以下按照真实执行顺序,对每一阶段进行完整解析。


一、文本输入与 Tokenisation:离散化的起点

模型无法直接处理字符串。所有文本输入起初通过 tokenizer 映射为 token ID 序列。Tokenisation 是一个确定性函数,其输出完全由 tokenizer 和词表定义,与模型参数无关。tokenization分为字词级、子词级、字节级词元化,各有优劣。

现代 LLM 普遍采用子词级(subword)tokenisation(如 BPE、Unigram LM)。其核心目标不是“语言学合理”,而是相对于其他词元化的规则,子词级有以下优势:

Tokenisation 的结果直接决定:

模型后续所有计算均发生在 token 空间中,任何字符串级执行在此之后都不再存在。


二、Embedding 与 Transformer:进入连续空间

每个 token ID 通过 embedding lookup 映射为一个定长向量,其维度为模型的 hidden size,与词表大小无关。Embedding 层的本质是一个形状为 (∣V∣×d|V| \times dV×d) 的查表矩阵,其中单个 token 对应的向量长度为 (d)。

Embedding 向量叠加位置编码后,输入 Transformer Decoder 堆栈。每一层 Transformer 由:

  • 多头自注意力(Self-Attention)
  • 前馈网络(FFN)
  • 残差连接与 LayerNorm
    组成。

长上下文推理的根本瓶颈。就是Self-Attention 的计算复杂度随 token 数平方增长,这


三、Prefill:全量上下文的 Attention 展开

Prefill 是指模型对全部输入 token进行一次前向传播的阶段,其核心目的不是生成输出,而是构建 Attention 所需的 Key / Value Cache

在 Prefill 阶段:

工程上,长 prompt 导致的首 token 延迟,几乎完全由 Prefill 决定。RAG、长对话、架构 prompt 叠加,本质上都是在放大这一阶段的成本。


四、KV Cache:自回归生成的状态基础

Prefill 结束后,模型已为当前上下文中所有 token 构建好 KV Cache。KV Cache 存储的是各层 Attention 的 Key / Value 张量,其维度属于 hidden space,而非词表空间。

KV Cache 的存在,使得后续生成阶段无需重新计算历史 token 的 Attention,从而将自回归生成的复杂度从O(n2)O(n^2)O(n2) 降为 O(n)O(n)O(n)。代价是显存占用随上下文长度线性增长。


五、Logits 与 Softmax:从连续表示到词表空间


六、候选空间裁剪:Top-k 与 Top-p

直接在完整词表上采样在工程上不可控,因此需要对概率分布进行裁剪。
设经过 softmax(已包含 temperature)后得到的概率分布为:
p=(p1,p2,…,p∣V∣),∑ipi=1p = (p_1, p_2, \dots, p_{|V|}), \quad \sum_i p_i = 1p=(p1,p2,,pV),ipi=1将所有 token 按概率从大到小排序:
p(1)≥p(2)≥⋯≥p(∣V∣) p_{(1)} \ge p_{(2)} \ge \dots \ge p_{(|V|)}p(1)p(2)p(V)

  • Top-k:仅保留概率最高的 (k) 个 token,形成硬截断的候选集。
  • Top-p(Nucleus Sampling):保留累计概率达到阈值 § 的最小 token 集合,属于分布感知型裁剪

若同时启用,最终候选集为二者的交集。实践中通常以 Top-p 为主、Top-k 为安全阀,用于限制极端平坦分布。

裁剪并不等于选择,它只是定义“哪些 token 仍有资格被选中”。


实际执行顺序为:

logits;→/T;softmax;→Top-p;Vp;→re-normalize;sampling \text{logits} ;\xrightarrow{/T}; \text{softmax} ;\xrightarrow{\text{Top-p}}; V_p ;\xrightarrow{\text{re-normalize}}; \text{sampling}logits;/T;softmax;Top-p;Vp;re-normalize;sampling

Temperature 决定概率如何分布,Top-p 决定哪些概率仍然存在。


七、重归一化与随机采样:离散决策的发生点

候选集确定后,系统会将候选集外 token 的概率置零,并在候选集内重新归一化,形成新的合法概率分布。随后进行一次分类分布采样,选出下一个 token ID。

这是整个推理过程中唯一引入随机性的步骤。所有生成多样性、漂移、重复、幻觉风险,最终都行追溯到这一采样操作及其参数设置。

当候选集退化为单一 token 时,采样等价于 greedy decoding。


八、Decode 循环:自回归推进

采样得到的 token 会立即:

  • 转换为 embedding;
  • 输入 Transformer;
  • 使用已有 KV Cache,仅计算新 token 的 Attention;
  • 输出新的 logits。

同时,新 token 对应的 Key / Value 会被追加进 KV Cache。随后再次进入“logits → 裁剪 → 采样”的循环。

这一 Decode 过程持续进行,直到满足停止条件(EOS、最大 token 数或自定义规则)。Streaming 输出只是 Decode 阶段逐 token 暴露中间结果的表现形式,不改变计算本质。


九、整体视角下的因果链

从框架角度看,整个推理过程可以压缩为一条因果链:

http://www.jsqmd.com/news/364884/

相关文章:

  • 小白救星!更贴合MBA需求的降AI率平台,千笔AI VS 灵感风暴AI
  • 2026冲刺用!千笔·专业论文写作工具,普遍认可的AI论文软件
  • 定稿前必看!本科生必备的AI论文平台 —— 千笔·专业论文写作工具
  • Bye2025, Hi2026
  • 你真的会用lsof吗?一个被低估的神器级指令(对比netstat ss)
  • 【土木、建筑领域均可投,征稿范围广】第二届桥隧建设与工程国际学术会议(BTCE 2026)
  • JS 里最“邪门”的两种语句:标签语句和 with,你敢用吗?
  • AT-abc 200-299 补题记录
  • TikTok视频下载的.NET实现:从HttpClient到Polly重试策略的工程化实践
  • 数据预处理的工程化革命:构建高性能、可复用的预处理组件
  • AI写论文大揭秘!这4款AI论文写作工具,让写职称论文轻松又高效!
  • 上线 48 小时,Claude Opus 4.6 横扫三榜,顺手开了个「氪金模式」!
  • 基于STM的播种种植监测系统(开题报告)
  • 【Matlab】MATLAB 图形标注教程:grid 网格线用法详解与实战
  • 2026 寒假模拟赛总结
  • AI写论文要点,这4款出色的AI论文生成工具助你完成高质量论文!
  • 基于搜索的剪枝方法
  • AI写论文新选择!4款AI论文写作工具测评,总有一款适合你!
  • AI驱动的儿童隐私保护测试:识别违规数据收集的技术实践
  • 多模态AI测试:融合文本、图像与声音的全面指南
  • AI写论文秘籍!4款AI论文写作工具,搞定毕业论文不在话下!
  • 为何选 Whatnot?MrBeast 超级碗直播的商业与技术双重考量
  • mybatis-plus 基于 Mapper接口的 select
  • 联邦学习系统测试:分布式数据下的模型验证
  • AI写论文必知!4款AI论文写作工具,让你告别论文写作的烦恼!
  • AI写论文的秘密武器!4款AI论文写作工具,解决论文写作痛点!
  • 直接上结论:更贴合MBA需求的AI论文写作软件,千笔ai写作 VS speedai
  • 高效管理AI项目的绝佳利器:Maestro
  • 导航特效 JS一键实现hover文本打乱效果
  • 【E3S出版,快速见刊检索】2026年可持续发展与城市规划国际学术会议(SDUP 2026)