知识截止日期 | 大模型 | 做产品
知识截止日期
训练语料收集到某一天就停了,那一天之后的世界,模型完全没见过。它不会因此沉默,它会推一个。
你会遇到的现象
-
它给的代码用的是某个库两年前的写法,新版本早就改了
-
问它某个模型的最新版本,它笃定地说出一个已经过时的型号
-
你让它算「距离下周三还有几天」,它算错了,因为它不知道今天是几号
截止日是什么
训练要先把语料收齐,收齐这个动作有个截止时间。之后还要训练几个月、做安全评估、内部测试,才对外发布。所以你用到的模型,知识总是比今天旧一大截,而且比它的发布日还要旧几个月。
还有两条容易被忽略的细节。
**截止日附近的知识是稀薄的。**一件事发生之后,网上要过一段时间才会积累起足够多的讨论。所以临近截止日的那几个月,语料密度明显偏低,模型对这段时间的了解比对更早时期还浅。别把截止日当成一条「之前全懂、之后全不懂」的干净分界线。
**模型自己报的截止日未必准。**你问它「你的知识截止到什么时候」,它给的答案也是生成出来的,可能来自系统提示,也可能是编的。要准确的日期,去看官方文档。
为什么它讲错还很自信
因为「不知道」在它那里不是一个状态。截止日之后的事,它没有对应的记忆,但它有大量关于这类事情长什么样的规律。于是它按规律外推:版本号往上加一位、路线图照着惯例往下写、人事任命按行业常态猜一个。推出来的东西非常合理,只是恰好不是真的。
最危险的是变化快、格式固定的领域,因为这两个特征凑在一起,编得最像:
这类内容典型翻车方式 软件库的 API给出上一个大版本的写法,参数名对不上 模型和产品的版本号说出一个不存在的型号,说得很笃定 价格、额度、限制报一个早就调过的数字 政策、法规、合规要求引用已经废止的条款 「最新」「目前」「现在」类问题它理解的「现在」是截止日那一刻 任何相对时间计算不知道今天几号,全盘错
最后两行最常被忽略。凡是提示里出现「最新」「目前」「今年」这类词,你都得先问一句:它知道今天是哪天吗?
截止日不是一条「之前全懂、之后全不懂」的干净分界线
完全没见过 但它照样会推一个
知识截止日
今天
语料 密度
更早的时期,讨论积累充分 临近截止的几个月 了解比更早时期还浅
成本几乎为零、收益最大:把今天的日期写进系统提示 模型自己报的截止日也是生成出来的,要准数看官方文档
那块红色区域里,它不会沉默——它会按规律外推:版本号往上加一位、路线图照惯例往下写。**推出来的东西非常合理,只是恰好不是真的。**凡是提示里出现「最新」「目前」「今年」,都先问一句:它知道今天是哪天吗。
怎么把今天塞给它
解决办法不在模型侧,在你这边。核心就一句话:凡是会过时的信息,都要由你在这一次请求里提供,不能指望它记得。
-
**把今天的日期写进系统提示。**成本几乎为零,收益出奇地大。一行「今天是 2026 年 8 月 17 日」就能修好所有相对时间计算,也能让它在回答「最新」类问题时意识到自己有多旧。
-
**需要事实就先检索。**把真实原文取出来贴进上下文,再让它基于原文回答。这是把「回忆题」换成「阅读理解题」,它的正确率会有质变。但要记得同时限定:只能用这些材料。
-
**明确声明优先级。**在提示里写清楚「以下资料与你已有的认知冲突时,以资料为准」。不写这一句,它可能会把你给的新信息和旧记忆和稀泥,混出一个都不对的版本。
-
**实时数据要走工具。**库存、价格、订单状态这类每分钟都在变的东西,检索也不够,得让它去调接口现查。这类信息永远不该来自模型的记忆。
还有两件产品层面的事。一是把版本钉死。让它写某个库的代码时,直接告诉它用哪个版本,最好连关键 API 的签名一起给。二是在界面上标出信息的时间——如果答案来自模型记忆,就说清楚这是截止到某个时间的认知;如果来自实时检索,就把来源和抓取时间露出来。用户能看见时间,误判的代价就小很多。
接着看
大模型与搜索引擎的区别 有截止日的根本原因:它是凭一份固定的权重在答,不是在查。
幻觉产生的原因 「没见过也照样往下推」的机制,以及防住它的四个动作。
上下文是怎么回事 「把今天塞给它」,塞的就是上下文。这块地方有多大、怎么分配。
