导语:让 AI 总结一篇两万字的长文,它说“没问题”;你连续聊了一下午,回头问它早上说过什么,它却一脸茫然。为什么它时而记性好、时而金鱼记忆?答案藏在两个词里:token 和上下文窗口。
核心要点
- 模型读文字的最小单位不是字也不是词,而是 token,一个 token 大约对应一到两个汉字
- 上下文窗口是模型一次能处理的最大 token 数,相当于它眼前这张“桌子”的大小
- 超出窗口的对话内容会被挤出去,模型不是“忘了”,而是“看不见了”
- 窗口越大,计算量和成本越高,所以“窗口大小”一直是各家比拼的硬指标
AI 眼中的文字:不是字,是 token
人在阅读时看到的是一个个汉字和词语,但大模型不是。它把文本先切成一串更小的单元——token,每个 token 对应一个编号,模型真正处理的是这些编号。英文里一个 token 大约是四分之三个单词,中文里一个 token 大约对应一到两个汉字,具体怎么切取决于模型自带的“切词表”。
为什么要这么切?因为模型需要一套有限的“积木块”来表示无限的文字组合。常见汉字、常用词各有自己的积木,生僻词则拆成几块拼起来。这个设计对使用者有个直接影响:很多按量计费的 AI 服务是按 token 收费的,同样一段话,中文消耗的 token 和英文不一样,超过切词表规则的长单词、特殊符号还可能额外费 token。
对普通人来说,记住一个粗略的换算就够用:一万字的中文文章,大约折合六千到一万个 token。看到模型标称“支持 10 万 token 上下文”,你就能大致估算它装得下多少页材料。
上下文窗口:一张不能无限扩大的桌子
模型处理一段对话时,会把“这段对话的全部历史”铺在它面前一起算,这段能铺开的总量上限,就是上下文窗口。你可以把它想象成一张桌子:桌子就那么大,所有材料——系统设定、历史对话、你贴的长文——都得摊在桌上。摊不下的部分,就掉到桌子底下去了。
这解释了开头的两个现象。让它总结一篇长文时,文章是这一轮刚贴上去的,只要没超窗口,它看得清清楚楚;而连续聊了一下午,历史消息越堆越多,最早的那部分被挤出桌外,它再“看”不到早上说过什么了。它不是记忆衰退,而是那段内容压根不在它的视野里。
同样,当你贴一份超长的文档给它,如果整份文档加上问题超出了窗口,有些工具会悄悄把中间部分截掉——模型回答时可能漏掉文档中段的关键信息,而且不会提醒你。处理长文档时,分段核对是个好习惯。
为什么窗口不能随便做大
把桌子做大听起来很容易,实际代价不小。模型计算时,每个 token 都要和前面所有 token 交互,token 数量翻倍,计算量大约翻四倍。窗口越大,响应越慢、耗电越多、服务成本越高。此外,训练时模型见过的长文本相对有限,窗口拉满时的表现常常不如中短长度时稳定——号称支持百万 token 的模型,在极长输入下也未必每一段都读得扎实。
所以各家的策略通常是一边扩大窗口、一边优化计算方式,比如让计算量随长度近似线性增长的改进架构。这也是为什么“上下文窗口大小”成了发布会上的标配参数——它是用户可感知的能力指标,也是各家技术实力的体现。
还有一点值得知道:上下文窗口是“工作记忆”,不是“长期记忆”。有些产品支持跨对话记住你的偏好,那是把部分信息存在外部、下次再注入窗口实现的,和窗口本身是两回事。窗口再大,也只在这一次对话里有效。
用好有限窗口的几个习惯
既然桌子有限,摆放就要讲究。第一,新开对话等于换一张空桌子:想讨论新话题时,别在塞满历史的旧对话里继续,开个新会话反而更准。第二,重要的信息放在输入的开头或结尾:研究发现模型对窗口两端的注意力更强,中段内容相对容易被忽略。第三,长材料先做减法:与其扔一整份报告,不如先摘出相关章节,既省 token 又少干扰。
第四,遇到超长材料,主动让模型分段处理:先总结每一段,再把各段总结合并分析。这等于利用模型的输出帮你“折叠”材料,把一桌子原文压缩成几页卡片,再摊开细看。
常见问题
窗口越大是不是就越好?选模型只看这个参数吗?
不是。窗口大小只解决“装得下”的问题,不等于“读得好”。超大窗口下,模型对中间内容的注意力可能下降,回答质量未必线性提升;而且窗口越大通常越慢、越贵。日常问答几千到几万 token 完全够用,只有长文档分析、超长对话这类场景才真正需要大窗口。选模型时,建议结合自己最常用的场景综合判断。
本文为 AI 科普内容,仅用于知识普及,不构成任何技术选型、投资或职业决策建议。