大模型到底在算什么?用「猜下一个词」把 LLM 讲清楚
前言
很多人第一次用大模型,会下意识把它当成「更聪明的搜索引擎」:
你问一句,它回一段,看起来像查到了答案。
但如果你做过一点工程落地,会很快发现不对劲:
它有时会非常自信地胡说,也会把「上周的新闻」说成「刚刚发生」。
这不是它故意骗你,更多时候是:
你理解它的方式,和它实际在做的事,不是同一件事。
这篇写给想入门、但不想一上来就被公式砸脸的读者。
我们只抓一个核心心智模型:
大语言模型(LLM)本质上在做一件很朴素的事:
根据前面的文本,预测下一个 token(可以理解成更细碎的“词片”)。
一、先纠正一个误解:它不是「检索答案」
搜索引擎(经典意义)更像:
- 先找到网页
- 再抽取片段
- 再排序给你
而大模型更像:
- 读完你给的上下文(窗口内)
- 在内部表示里算出一个概率分布
- 挑下一个 token(或按随机策略采样)
- 拼上去,再继续预测下一个……
所以你看到它「一口气写完」,其实是很多次「下一步」连起来的结果。
这也解释了一个现象:
它并不天然知道「事实库」里有什么,除非你把事实写进上下文,或接检索(RAG)/工具(Tool calling)。
二、自回归:像接龙一样把句子接出来
LLM 最常见的生成方式叫 自回归(autoregressive):
- 输入:
你好,我是 - 模型输出下一个 token:
小 - 把
小拼回去,再预测下一个:王 - 继续……
它不是一次性「生成整段话的完整计划」,更像边写边改风格的接龙。
所以你让它写长文时,后面段落会「顺着前面已经写出来的字」继续走——
有时候顺对了,有时候顺偏了。
三、token 是什么:不是你以为的「一个字」
你会看到英文里 token 这个词。直观理解:
- 中文里,一个 token 可能是一个字,也可能是半个词组的一部分(取决于分词器)
- 英文里,
unbelievable可能被切成多个 token
为什么要切 token?
- 模型计算的基本单位是 token
- 你的输入 + 输出长度,通常按 token 计费、也按 token 截断
所以「我明明只写了两行,为什么提示上下文太长?」
往往不是字数,而是 token 数爆了。
四、上下文窗口:为什么它「记不住整本书」
上下文窗口可以理解为:
模型每一步预测时,最多能同时看见多长的前文。
窗口越大,理论上越能处理长文档、长对话。
但它仍然不是「无限记忆」。
常见后果(工程里很常见):
- 你把 30 页 PDF 直接塞进去,后半段可能被截断
- 对话很长时,早期的关键约束可能「滑出窗口」
解决思路不在「更会聊天」,而在架构:
- 分段总结(map-reduce)
- 向量检索把相关内容捞回来(RAG)
- 外部存储(数据库/知识库)+ 工具调用
五、温度(temperature)和 top-p:不是玄学旋钮
你可以把采样想成「从一堆候选里挑下一个 token」。
- 温度低:更保守,更像「选概率最高的那个」,输出更稳、更干
- 温度高:更发散,更像「偶尔故意不选第一名」,输出更活、更容易跑题
**top-p(核采样)**则是另一种控制方式:
只在累计概率达到 p 的那一小撮候选里采样,避免长尾里抽到离谱 token。
它们调的不是「知识」,而是随机性与多样性。
六、为什么会「幻觉」:一句话机制版
用上面的心智模型,幻觉并不神秘:
- 模型在补全文本时,会优先补「看起来像真的」的结构
- 但它不一定有可靠证据链
- 再叠加采样随机性,就会出现「编得很像」的内容
所以工程上才会强调:
- 引用来源(RAG)
- 可验证输出(表格/JSON/链接)
- 拒答策略(不知道就说不知道)
- 评测集(别只凭感觉上线)
七、给开发者的一句落地建议
如果你要把 LLM 用在业务里,记住三件事就够你少走一半弯路:
- 把它当生成器,不当真理机:事实要外置、要可校验
- 上下文是硬资源:该截断就截断,该索引就索引
- 把随机性写进产品预期:同样输入也可能不完全一致(除非你固定采样策略)
总结
你只要记住一句话:
LLM 的核心不是「懂世界」,而是「在给定上下文里,合理地接下去」。
剩下所有高级能力(工具调用、Agent、RAG、微调),本质都是在补齐它天然缺失的东西:
记忆、事实、行动、边界。
欢迎大家点赞关注,一起进步~~~
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)