既然大语言模型中的 Transformer 算法是通过预测最高概率的下一个字来生成文本,那是不是意味着一个输入应该只有一种输出?但是在现实应用中,为什么相同的输入可能会有多种不同的输出呢?
这个问题问得非常棒,乍一听好像挺矛盾的:既然 Transformer 是在预测 概率最高的下一个字(Token) ,那是不是意味着每次都应该生成一样的结果?但你在实际用 ChatGPT、DeepSeek 的时候,明明同样的 提示词,每次生成的结果还不一样,甚至风格都变了。
这其实涉及到了两个层面的理解:
01 | 理论层面:Transformer 是 概率模型 ,不是“唯一真理”模型
我们直觉上以为,AI 就像 Excel 函数,一样的输入就应该得到一样的输出。但大语言模型(LLM)不是这么干的。
大模型的输出过程,本质上是 基于概率的词语选择过程 ,一句话说白了就是:
它不是挑“唯一正确的词”,而是挑“下一个可能最合适的词”。
每一个词都是在一个巨大的“概率分布”中选出来的,模型会根据前文语义、训练经验等,算出下一个词的概率,然后“掷骰子”选一个。
这个“掷骰子”的过程,就是所谓的采样(sampling)机制,导致了每次生成都有差异。
Transformer 确实是在干一件事:
→ 给定一个上下文,预测下一个 Token 出现的概率分布
比如你输入:“我今天早上喝了一杯”,模型会预测:
Token | 概率 |
咖啡 | 0.45 |
牛奶 | 0.32 |
豆浆 | 0.12 |
啤酒 | 0.01 |
…… | …… |
然后,它根据某种策略选择一个 Token 作为“下一个字”。问题的关键就在这一步: 怎么选?
02 | 实践层面:为什么“选 Token”的策略会导致不确定性
大模型的输出,不只是“概率最高”,而是“采样策略”决定的!
主要有以下几种策略:
1. Greedy Search(贪婪搜索)
- 每次都选概率最高的 Token
- 输出确定,每次都一样
- 缺点:句子容易无聊、单调、不自然
2. Top-k Sampling
- 每次只考虑概率前 k 个的 Token,然后随机选一个
- 引入了一定的不确定性,但控制范围
3. Top-p Sampling(Nucleus Sampling)
- 找出累计概率前 p(比如 0.9)的一组 Token,再从中采样
- 更自然灵活
4. Temperature(温度系数)调控
- 控制“随机性”
- 温度越高(如 1.5),结果越发散、越创新
- 温度越低(如 0.3),越保守、越接近贪婪策略
这就像点菜:
- Greedy 是“每次都点最热门的那道菜”
- Top-k 是“从前 5 热门中随机选一道”
- Top-p 是“从整体推荐中选出 90%顾客喜欢的那些,然后再选一盘”
这两个参数控制的是模型“敢不敢冒险”,范围越大,生成越灵活;范围越小,结果越稳定。
03 | 为什么要搞这么复杂?统一输出不是更好吗
因为人类语言本身就不是唯一确定的。
比如你问:
“我今天很累,下班后做什么比较放松?”
有人回答:“去健身” 有人说:“刷剧” 有人建议:“泡脚、听歌、读书”
每个答案都“合理”,而不是“唯一正确”。
AI 也一样 —— 要生成 丰富多样、自然真实 的对话内容,就不能每次都机械重复。
所以“非确定性”本身就是 LLM 的优点。
如果你是做内容的,用过 GPT 写文案写脚本,就应该知道:
有时候差异性,是灵感的源泉。
你给一个提示词,让它帮你写“XXX产品的文案”,第一次结果平平无奇,第二次突然金句频出——这其实是模型的“创意跳跃”。
对于开发者来说,如果你想用大模型做“稳定回复”类任务(比如客服、问答、知识检索),就应该:
- 调低 Temperature,让模型更“保守”;
- 限制 Top-p,让它别乱说话。
很多 AI 产品出问题,其实是没把这些参数调好,结果模型该“老实”时太跳脱,该“发挥”时又太怂。
04 | 总结:相同输入,为什么有不同输出
- Transformer 本质是生成“概率分布”,不是选唯一答案
- 使用了不同的 采样策略 (Top-k、Top-p、Temperature)
- 语言本身就有丰富的“多样性”和上下文理解偏差
- ChatGPT 等模型为了提高“互动性”、“创造性”,故意引入了“不确定性”
05|有没有办法控制生成的“随机性”
有的!我们常用的几种控制方法:
- 设置温度参数
几乎所有调用 OpenAI、Claude、Moonshot、DeepSeek 等 API 或平台工具时,都可以手动设置 temperature
,最稳妥的是设为 0
(完全确定性)。
- 多轮校验、重试生成
如果你想要稳定性,又不想放弃创意,可以:
-
用多个不同 prompt 轮流生成;
-
对多个生成结果进行 rerank、过滤,选择最优者。
-
搭配工具/插件约束输出
比如你用 Coze、Dify、Langchain 等框架,可以设定约束规则、格式模板,引导输出更符合期望。
最后:这其实是 AI 的价值点
如果你还觉得 “为什么 AI 总是不一样?” 不好接受,我想说:
这正是大模型最迷人的地方——它不是个死板的机器,而更像一个有点脾气、略带灵感的“创作者”。
就像同一个问题,你问一个朋友 5 次,也许得到的是 5 种角度。AI 只是用更快的速度、更大的语料库,模拟这种“语言的多样性”。
🎯 大家都在看
扣子空间初体验:不用写代码,你的AI全能助理来了【附邀请码分享】
10分钟搭建智能体:提取抖音爆款视频文案转小红书(附全流程截图)