跳到主要内容
别让“之后”替你选一条时间线

别让“之后”替你选一条时间线

老墨
老墨

· 阅读约 5 分钟

旧稿是我从一份时间线整理里摘出来喂模型的一段:

《时之笛》之后,时间线一分为三:儿童时代、成人时代、英雄败北时代。《姆吉拉的假面》发生在《时之笛》数月之后。《黄昏公主》发生在《时之笛》很久之后。《风之杖》发生在时之笛那位英雄成为传说之后。

读着通顺。丢给模型问“《黄昏公主》和《风之杖》哪部离《时之笛》更近”,它答得头头是道,也答得毫无意义——拿“数月”和“很久”比大小,可这俩词根本不在一条轴上。

这条 prompt 的诗眼不在游戏名上,在【之后】这两个字上。

三条分支是并行的,不是串的。一句里有“之后”,听话的人默认只有一个“之前”,这是日常语言里最省事的假设,也是喂上下文时最贵的一个。模型不会追回来问“哪个之后”,它挑一个看起来最合理的接下去,然后用非常确定的语气把猜测说成事实。

这一处还能改。卡住我的是下一处。

同一份材料里,【早期】出现了两次。《御天之剑》被放在系列早期,《缩小帽》也被放在 Hyrule 的早期。两个“早期”隔着不知多少年,指的不是同一个位置——一个是创世之后不久,一个是王国刚立起来那阵。可文本里它们是同一个词,长得一模一样。模型把两条都读成“最早的那一段”,排出来的先后就反了。

我第一反应是加限定:写“《缩小帽》在王国建立之后、时之笛之前”。写完自己看一眼,还是不行。这不是“早期”的问题,是我在拿一个相对词去锚一个绝对位置。相对词只有相对着一个已经站稳的东西才成立,而这条分叉又跨代的线上,那个“已经站稳的东西”压根不存在。

岔一句。考古报告里“早期”“晚期”满地跑,靠的是地层和测年兜底。文本没有地层,你写“早期”,它就真的只是“早”而已。

扯回来。V2 我换了写法,不叙述了,按分支切块:

<branch name="child">...</branch>
<branch name="adult">...</branch>
<branch name="defeat">...</branch>

线性误解没了。新问题立刻冒出来:材料里有好几条根本没说自己在哪条分支上。《黄昏公主》只写“很久之后”,《风之杖》只写“英雄成为传说之后”。分组的时候我手一滑,把它们塞进了看着最像的那条。

这版比旧稿更糟。旧稿是模型不知道,V2 是它以为我知道了。

V3 加了一个桶,名字就叫“未标注分支”。丑,但诚实。模型看见这个桶,至少知道这里有个洞;没有这个桶,它会把我的猜测当成材料用。

<branch name="unassigned">
  <game note="原文只写『很久之后』,未标分支">黄昏公主</game>
</branch>

留白这东西,留错地方叫含糊,留对地方才叫留白。这是我改到第三版才咽下去的一句话。

还有一个毛病不是词的问题,是类型。材料里混着两类东西:作品,和事件。三女神创世留下 Triforce、Demise 为夺 Triforce 开战、海利亚女神把幸存者和 Triforce 送上云层、一群擅魔法的人闯 Sacred Realm 未遂被放逐到暮光领域——这些是背景事件,不是能玩的游戏。它们跟《御天之剑》《时之笛》排在同一张表里,格式一模一样。

模型不会替你分。它会老老实实把事件当节点,然后在需要“下一部是什么”的时候,给你一个任何发售列表里都查不到的东西。

改法很土:每条加一个类型字段。我一开始不想加,觉得这是数据库该干的活,不是 prompt 该干的活,加了显得我在拿结构掩盖措辞上的懒。后来发现这个想法本身才懒——类型不明和用词不准是同一件事,都是没想清楚这一条到底是什么。

定稿先放这:

<timeline>
  <split at="时之笛">儿童 / 成人 / 败北</split>
  <branch name="origin">
    <event type="creation">三女神创世,留下 Triforce</event>
    <event type="war">Demise 夺 Triforce,海利亚女神封云</event>
    <game>御天之剑</game>
  </branch>
  <branch name="child">...</branch>
  <branch name="adult">...</branch>
  <branch name="defeat">...</branch>
  <branch name="unassigned">
    <game note="原文只写『很久之后』,未标分支">黄昏公主</game>
  </branch>
</timeline>

分叉点单独拎出来写成一条,不挂在任何分支底下——这一处也是改到第三版才想明白的。写在某条分支的第一句里,模型十有八九会把它读成那条分支的内容,而不是三条分支共同的上游。

跟旧稿比,字数翻了三倍。有人说这不是越写越长了吗。是长了,但长的是结构,不是形容词:旧稿八十几字全是叙述,没有一个位置能告诉模型“这条和那条不在一根轴上”。

不放心的话拿十二条问题去问。我跑了,其中三条它把《黄昏公主》和《风之杖》并到一条分支上,还给了理由——说得挺像回事,但那就是我 V2 那次手滑留下的坑,一直漏到现在。

那个“未标注分支”的桶,我不太有把握。它现在装两条,再过一阵可能变成垃圾场,什么拿不准的都往里扔,模型也就学会了对它视而不见。真到那天,得拆成“官方向未定”和“我读不出来”两个桶。先这么用着。