LLM如何生成答案

本节目标

你将用一条完整数据流解释 LLM 如何处理输入,并理解 token、上下文、参数、Transformer、生成与随机性这些词。重点是建立正确直觉,不推导网络公式。

一句话直觉:根据上下文预测接下来什么更合适

**大语言模型(Large Language Model,LLM)**是一类处理语言 token 序列的模型。token 是模型处理文本时使用的片段,可能是一个字、词的一部分、标点或代码片段;它不等同于“一个汉字”或“一个英文单词”。

生成时,模型根据当前上下文为下一个 token 计算概率分布,选出一个 token,再把它接回上下文继续预测:

输入文本
  ↓ 分词(tokenization)
token 编号序列
  ↓ 向量表示 + Transformer 计算
下一个 token 的概率分布
  ↓ 选择一个 token
追加到序列并重复,直到停止

例如看到“雨天出门记得带”,模型可能给“伞”较高概率。但它不是在数据库中查出固定句子,而是根据训练得到的参数和当前上下文计算续写。

六个核心部件

1. Tokenizer:把文本变成可处理的编号

文本 LLM 在计算前先由 Tokenizer(分词器)把输入编码成 token,再映射成整数 ID。不同模型的切分规则不同,所以字符数不能可靠等同于 token 数。

2. Embedding:把离散编号变成向量

向量是一串数字。模型把 token 编号映射为向量,使后续计算能表达 token 在当前上下文中的关系。这里的 embedding 是模型内部表示;后续“向量数据库”常用的文本 embedding 是对句子或文档片段的整体表示,概念相关但用途不同。

3. Transformer:让位置之间交换信息

Transformer 是现代 LLM 常用的神经网络架构。注意力机制(attention)让模型在计算某个位置时,依据当前输入与学习到的参数计算注意力权重,再组合其他位置的信息;权重不是一张对所有输入固定不变的表。稳定事实:Vaswani 等在 2017 年论文中提出了以注意力为核心的 Transformer 架构。现代模型会有大量扩展,不能据此推断某个具体产品的全部内部实现。

4. 参数:训练后保留下来的数值

训练会调整大量参数,使模型在训练目标上减少预测误差。参数编码的是分布式统计模式,不是逐条可寻址的事实表。模型可能复现常见知识,也可能混淆、过时或生成不存在的细节。

5. 上下文窗口:这次推理能看到的内容

系统指令、用户输入、对话历史、检索片段和工具结果通常会一起占用上下文。超出窗口的内容需要截断、摘要或外部存储。可能变化:具体上下文长度、计费方式、结构化输出和多模态能力依模型与服务版本而变,实施时查当前官方文档。

6. 解码:从概率分布选择输出

总选最高概率 token 会更稳定,但也可能重复或僵化;按分布采样能增加多样性,也增加波动。temperature 常用于调节采样分布,但不同 API 的支持与语义应以当前文档为准。温度降低不等于事实自动正确。

LLM 为什么既强大又会“自信地错”

语言模型的训练目标与“每句话都由可靠证据支持”不是同一件事。它擅长生成在上下文中连贯、格式像样的序列,却没有内置的事实数据库事务,也不会天然知道自己缺少哪条证据。

这带来两个同时成立的判断:

  • 稳定事实:LLM 可以用同一种文本接口处理总结、抽取、改写、分类、问答和代码等多类任务。
  • 工程建议:凡是答案需要事实保证、实时状态或业务授权,都应连接可信数据源、验证输出,并根据风险加入人工审批;不能把流畅度当正确率。

一个可验证的输入设计

任务:从下面句子提取行动项。

会议决定:小李周五前提交测试报告;预算仍需财务确认。

比“总结一下”更可测试的要求是:

只提取明确出现的行动项,输出 JSON 数组。
字段为 task、owner、deadline、status。
原文未给出的字段填 null,不要猜测。

期望结果应把“提交测试报告”列为行动项,并把“预算仍需财务确认”标为未确认事项;若模型给预算填入具体金额,就是无依据补全。这里的关键不是提示词技巧,而是把正确与错误变得可判定。

常见误区与排查

误区为什么不成立更好的做法
“模型说得详细,所以更可信”细节也可能是生成的要求证据位置,并独立核验关键事实
“上下文放得越多越好”噪声、冲突和成本也会增加只提供与任务相关且有来源的上下文
“同样输入一定同样输出”采样、服务更新等可带来差异固定可控参数,保存版本信息并用测试集验收
“LLM 会自动知道今天的数据”训练知识与当前状态不是一回事用 API、检索或数据库提供实时数据
“让模型反思一次就可靠了”同一模型可能重复或合理化错误用外部规则、工具结果和独立测试验证

练习

  1. 用自己的话解释 token 与单词为什么不是一一对应。
  2. 为“从客服邮件提取订单号”写 3 条可判定的输出规则。
  3. 为上面的会议例子增加一个异常样例:没有负责人或截止日期时,期望输出是什么?
  4. 列出哪些字段需要来自实时系统,而不能依赖模型记忆。

自测

  1. LLM 的“下一个 token 预测”为什么仍能产生长文章?
  2. 参数为什么不能当成可查询数据库?
  3. 更低 temperature 能否保证事实正确?
  4. 上下文和训练参数有什么区别?

参考答案:生成的 token 会不断加入上下文,模型重复预测形成长序列;参数是分布式数值模式而非逐条记录;降低随机性不等于引入证据;上下文是本次调用可见的信息,参数是训练形成、推理时通常固定的模型状态。

相关概念

  • 本节的 token 与窗口预算会在 上下文工程 中变成选择、裁剪和压缩策略。
  • 模型内部 token 表示与用于检索的 Embedding 有共同的向量直觉,但训练目标、粒度和工程用途不同。
  • RAG提供外部证据,提示词工程定义任务契约;二者都不能把概率生成自动变成事实保证。

小结与下一步

LLM 提供的是基于上下文的语言推断能力。下一节 Agent如何完成任务 会把这项能力放进带有状态、工具和反馈的系统循环。

参考资料

获取日期:2026-07-22。