LLMStart|持续课程 · 不追玄学
模块 2 · 2.3
进阶级50 分钟

2.3推理过程:Prompt 如何变成回答

本课只解决一个主问题:本单元只解决一个主问题:

用户输入 Prompt 后,模型是如何一步步生成回答的?

学习目标

学完本单元后,学习者应该能够:

  • 解释模型推理的大致流程。
  • 理解 Temperature、Top-p、Top-k 等采样参数的作用。
  • 理解上下文长度为什么影响成本和延迟。
  • 判断什么时候需要确定性输出,什么时候需要更开放的生成。

先给直觉

模型回答问题不是一次性把整段话从抽屉里拿出来。

更接近的过程是:

  1. 读入你的 Prompt。
  2. 计算下一个 Token 的可能性。
  3. 选出一个 Token。
  4. 把这个 Token 接到已有文本后面。
  5. 再计算下一个 Token。
  6. 重复,直到回答结束。

所以你在聊天产品里看到文字一个字一个字冒出来,不是表演,是生成过程本来就这样。

推理流程

一个简化的推理流程:

用户 Prompt
  ↓
Tokenizer 切分成 Token
  ↓
模型读取上下文
  ↓
计算下一个 Token 的概率分布
  ↓
采样或选择 Token
  ↓
把新 Token 加入上下文
  ↓
重复直到结束

这里最关键的是:模型每一步都在基于当前上下文预测下一个 Token。

概率分布是什么

假设 Prompt 是:

巴黎是法国的

模型可能给出类似这样的下一个 Token 概率:

首都:高
城市:中
一个:低
香蕉:极低

真实模型的候选 Token 很多,概率分布也复杂得多。这个例子只是帮助理解。

模型不是只知道一个答案,而是会计算很多候选 Token 的概率。

Temperature:控制随机性

Temperature 可以粗略理解为控制输出随机性的参数。

较低 Temperature:

  • 输出更稳定。
  • 更偏向高概率 Token。
  • 适合事实回答、分类、格式化、代码修改等任务。

较高 Temperature:

  • 输出更多样。
  • 更可能选择低概率但有创意的 Token。
  • 适合头脑风暴、创意写作、标题候选等任务。

注意:提高 Temperature 不会让模型变聪明,只会让生成更发散。把温度开高解决不了事实错误,它只会让错误更有想象力。

Top-p 与 Top-k

Top-k 是只从概率最高的 k 个 Token 中选择。

Top-p 是只从累计概率达到 p 的候选集合中选择,也叫 nucleus sampling。

它们都用于控制采样范围。

直觉:

  • Top-k:只允许前 k 名参加比赛。
  • Top-p:只允许最可能的一组选手参加,直到概率总和够了。

具体参数怎么设,取决于模型、任务和产品目标。课程里不鼓励背固定值,因为不同模型和接口可能行为不同。

确定性输出与开放生成

不同任务需要不同生成风格。

更适合确定性的任务

  • 信息抽取
  • 分类
  • JSON 输出
  • 代码修复
  • 合同条款总结
  • 基于资料的问答

这些任务通常希望模型稳定、少发挥。

更适合开放生成的任务

  • 创意标题
  • 故事灵感
  • 头脑风暴
  • 多种表达方式
  • 广告文案候选

这些任务可以接受多样性。

一个好产品通常不会把所有任务都用同一套采样参数硬套到底。

上下文长度为什么重要

上下文长度决定模型一次能看多少 Token。

上下文里可能包括:

  • 系统提示
  • 用户问题
  • 历史对话
  • 上传文档
  • RAG 检索片段
  • 工具返回结果
  • 模型正在生成的回答

上下文越长,不一定越好。

问题包括:

  • 成本更高。
  • 延迟更大。
  • 关键信息可能被噪音淹没。
  • 模型可能忽略中间部分或混淆来源。

所以长上下文不是把所有资料一股脑塞进去。更好的方式通常是筛选、摘要、检索和结构化。

延迟、吞吐与成本

推理不是免费的魔法。

影响成本和速度的因素包括:

  • 输入 Token 数。
  • 输出 Token 数。
  • 模型大小。
  • 是否使用推理增强能力。
  • 并发请求量。
  • 是否需要工具调用或检索。

几个基本判断:

  • 回答越长,输出成本越高。
  • 输入资料越多,输入成本越高。
  • 模型越强,通常单次调用越贵。
  • 工具调用越多,链路越慢也越容易失败。

这就是为什么 AI 产品必须做成本和延迟设计。

案例

任务 1:

请把下面 20 条用户反馈分类为:价格、功能、性能、服务。

建议:

  • 低 Temperature。
  • 明确输出格式。
  • 要求只使用给定标签。
  • 必要时做结果校验。

任务 2:

请为一门 AI 入门课想 20 个有趣但不夸张的文章标题。

建议:

  • 可以适当提高多样性。
  • 允许输出多个候选。
  • 再用人工或模型评分筛选。

同一个模型,不同任务,推理策略应该不同。

常见误区

误区 1:Temperature 高,模型更聪明

不是。Temperature 控制随机性,不提升知识或推理能力。

误区 2:上下文越长越好

不一定。长上下文会带来成本、延迟和噪音问题。

误区 3:模型每次回答不同,说明它不稳定不可用

生成式模型本来就可能有随机性。严肃任务可以通过参数、格式、评估和校验提高稳定性。

误区 4:输出慢只是网速问题

输出慢可能来自模型推理、上下文长度、工具调用、服务负载等多种因素。

动手练习

选一个模型,尝试同一个问题:

请给一门 AI 入门课想 10 个标题,要求不标题党。

分别用更稳定和更发散的设置测试。如果界面不提供参数,就多次重复同一问题,观察差异。

记录:

  • 哪些标题更稳定?
  • 哪些更有创意?
  • 哪些开始变得夸张或不准确?
检查题(自测)
  1. 模型生成回答时,为什么通常是逐 Token 输出?
  2. Temperature 控制什么?它不能解决什么?
  3. 为什么长上下文不是越长越好?
参考答案
  1. 模型按"预测下一个 Token"的方式生成:每一步根据已有上下文预测下一个 Token,再把它接回去继续预测,所以输出是逐 Token 出现的。
  2. Temperature 控制采样时的随机性:越高输出越多样,越低越确定。它不能解决事实错误、幻觉和上下文不足,只能调节表达的多样性。
  3. 长上下文会带来更高成本和注意力负担;无关内容会稀释注意力、干扰模型;超出上下文窗口的部分模型根本看不到。关键是给够完成任务所需的信息。

Takeaway

推理是模型基于上下文逐步生成 Token 的过程。采样参数影响输出风格,上下文长度影响成本和质量。会用模型,不只是会问问题,还要懂一点生成过程。