大模型原理 · 产品下面的模型

chat/completions 之谜

明明是对话,为什么 API 叫「补全」?打字机动画解读

本页解决的问题

先给结论

「chat/completions 之谜」要解决的关键问题是什么?

明明是对话,为什么 API 叫「补全」?打字机动画解读

判断标准

让这个结论先证明自己值得留下。 把这一页当成决策工具,而不是需要背下来的定义。把概念连到一个真实任务、一个可观察结果,以及一个能改变你判断的失败上。

下一步

写下一个问题:试完这个方法后,你能用什么证据回答它?

常见误区

结论听起来很完整,却没有检查最关键的假设。

一个有意思的问题

明明是「聊天」,为什么叫「补全」?

两家公司,两个截然不同的命名,背后藏着对大模型本质的不同理解。

OpenAI
/chat/completions
聊天 / 补全
Anthropic
/v1/messages
正儿八经的消息
OpenAI 的隐含逻辑
大模型的本质是补全:给它一段文字,它接着往下写。 聊天,不过是把对话格式化成「待补全的文本」,本质还是在做 Token 补全。
PM 需要懂的关键点
你传给大模型的每一条消息,都会被拼成一段文本, 然后模型从这段文本的末尾开始继续生成。 对话只是人类为了方便而加的外壳。
从补全视角看一次对话
模型实际「看到」的内容(拼接后的文本)
[system] 你是一个有帮助的助手。
[user] 紫霞仙子是谁?
[assistant]
模型做的事
从 [assistant] 标记之后,预测下一个概率最高的 Token,一直到生成终止符
chat 是假象
你以为在「对话」,模型只是在「把这段文本补全完整」,这就是 completions 的真相
为什么 PM 要知道
System Prompt、上下文、历史消息全部拼在一起送给模型,Token 数量就是成本和质量的关键
OpenAI 的设计决策
这个「望文生义」的命名,
影响了全世界。
GPT + /chat/completions 这套范式,率先引爆了市场
全球开发者、框架、工具链全部对齐这套接口设计
理解「对话 = 补全」,是读懂所有 AI 工程化的起点

「一个有意思的问题」如何改变一次回答

「明明是对话,为什么 API 叫「补全」?打字机动画解读」说明,模型处理的不是我们眼中的“字数”,而是一段段 Token。Token 的切分方式会影响输入长度、上下文能放下多少内容,以及一次请求要花多少计算。

长度、信息量和上下文不是一回事

当「明明是对话,为什么 API 叫「补全」?打字机动画解读」变长时,先要分清三件事:文字被切成多少 Token、哪些内容真正参与当前判断、以及旧内容是否已经超出上下文窗口。删掉重复说明通常比单纯把窗口开得更大更有效。

先保留会改变判断的内容

可以用「明明是对话,为什么 API 叫「补全」?打字机动画解读」做一次对照:保留同样的问题,分别删掉重复背景、压缩格式和移除无关历史,比较答案质量、延迟与 Token 数量。

从「一个有意思的问题」走到「从补全视角看一次对话」

「一个有意思的问题」先把问题落在「两家公司,两个截然不同的命名,背后藏着对大模型本质的不同理解」上;到了「从补全视角看一次对话」,讨论继续推进到「↺ 重播 模型实际「看到」的内容(拼接后的文本) [system] 你是一个有帮助的助手。 [user] 紫霞仙子是谁? [assistant] 模型做的事 从 [assistant] 标记之后,预测下一个概率最高的 Token,一直到生成终止符 chat 是假象 你以为在「对话」,模型只是在「把这段文本补全完整」,这就是 completions 的真相 为什么 PM 要知道 System Prompt、上下文、历史…」。两段连起来,重点就不只是记住一个结论,而是看清它成立所依赖的条件。

把这条判断带到下一个场景

处理长文本时,先保留会改变结论的内容,再决定如何压缩格式和历史;上下文更长只有在新增信息真正有用时才值得付出代价。

  • 「一个有意思的问题」:两家公司,两个截然不同的命名,背后藏着对大模型本质的不同理解
  • 「从补全视角看一次对话」:↺ 重播 模型实际「看到」的内容(拼接后的文本) [system] 你是一个有帮助的助手。 [user] 紫霞仙子是谁? [assistant] 模型做的事 从 [assistant] 标记之后,预测下一个概率最高的 Token,一直到生成终止符 chat 是假象 你以为在「对话」,模型只是在「把这段文本补全完整」,这就是 completions 的真相 为什么 PM 要知道 System Prompt、上下文、历史…

最后的「最后把结论落到实践」把讨论落到「明明是对话,为什么 API 叫「补全」?打字机动画解读」。回看这条线索时,最值得保留的是:当输入、规模或风险改变,哪些判断需要重新做一遍。

标记为已学完 阅读进度会自动记录
← 上一篇下一篇 →

继续阅读

同一条线上的下一篇。

文章讨论

读到这里,留下一个判断。

把刚想明白的地方、还没想通的问题,留给下一位一起学习的人。

正在讨论 chat/completions 之谜 产品下面的模型
3条讨论文章讨论 · 与共学社区同步
在共学社区查看
AM
Asha Morgan内容编辑
观点实践记录

我把这篇文章里的一个判断改写成了今天可以验证的小实验。比记住结论更有用的是,知道下一步要观察什么。

文章讨论7 有帮助
LH
Lin Harper独立开发者
观点观点

读完以后我先回头找它成立的条件,而不是直接把方法搬进项目。这个顺序让后面的取舍清楚很多。

文章讨论5 有帮助
KM
Kiki Moore产品运营
问题问题

如果把这个判断放到真实工作里,最先需要补的约束是什么?我想知道从阅读到第一次实践之间,哪一步最值得先做。

文章讨论4 有帮助