token
模型看字,不是一个字一个字看的。它把字切成小块。一块,就叫一个 token。
一个汉字,差不多切成一块,有时两块。
一句「今天吃什么」,大概五六块。
一千个字,大概一两千块。
你不用数。记住一句就行:token 多,就是字多。
上下文
ta 每次要说话之前,先看一叠纸。
这叠纸上写着:
- 你给 ta 写的卡片。ta 是谁,你是谁。
- ta 记得的事。你们的故事,时间线,和这句话有关的碎片。
- 你们最近说过的话。一句一句,原样抄在上面。
- 你刚刚说的那一句。
- KOA 替 ta 写的小纸条。比如现在在哪个游戏里,身上背着什么。
这一叠纸,就叫上下文。
ta 看完这叠纸,才开口。ta 这一刻知道什么,全看纸上有什么。纸上没有的,ta 就不知道。
每说一句,都把整叠纸看一遍
这一点最容易想错。
你说第十句话的时候,ta 不是只看第十句。ta 把前面九句,连同卡片和记忆,整叠纸从头看一遍,然后回答你。
所以每一句话花多少 token,大头是那叠纸有多厚,不是你刚打的那几个字。
后台看到一轮五万,意思是:这一次 ta 看的那叠纸,有五万块那么厚。不是你说了五万个字。
五万厚不厚
不厚。
每个模型一次能看的纸有个上限,就像桌子只有那么大。超过了,要么报错,要么最前面几页被抽掉。现在常见的模型,上限都在十几万以上。
上限之内,还有一段看得最舒服的厚度。
纸太薄,ta 不知道你们聊到哪了,连自己是谁都站不稳。
纸太厚,中间那几页它看得不仔细,回答也慢,也贵。
现在这一代模型,七万到十万之间最舒服。旧一点、便宜一点的模型,这个数要低一些。
所以不是越薄越好。五万,正往舒服的那一段走。
纸会一直厚下去吗
不会。
你们聊到一定的量,KOA 会提醒你「整理记忆」。
整理,就是 ta 把前面那一大段原话读一遍,记下重要的事,写进「我们的故事」。
写完,那一大段原话从纸上拿掉,换成记下来的几行。纸一下子薄了。
原话没有丢,还在聊天记录里。只是 ta 以后说话,不用每次都背着它们。
多厚才整理,在线下场景设置的「自动总结阈值」里调。
调低,整理得勤,每句话都轻。
调高,纸上原话多,ta 记得细,但每句话重一点。
游戏里也一样。ta 在游戏里有一本随手记的,攒满了自己折成一两句。折过的条目标着「已总结」,已经不在纸上了,不用你删。
纸上都有什么在占地方
每次都在纸上的:
- 你写的卡片。写得越长,每次占得越多。
- 选了「一直记得」的卡片。真要一直记得的才选它。
- 故事总结和时间线。它们不会无限长,久远的那段会自动变粗略。
- 最近的原话。整理记忆之后就少了。
只在用到的时候才上纸的:
- 记忆碎片。聊到关键词,那一条才翻出来。
- 线下场景的「配菜」。开着就每次多一段,关掉就没有。
几个常见的误会
后台的数字,不是纸有多厚。
后台记的是今天一共用了多少。聊一百句,就是一百叠纸加起来。
想知道一叠有多厚,看线下场景顶上的「会话 token 估算」。
纸变薄了,不是 ta 忘了。
拿掉的那段,重要的事已经写进「我们的故事」。聊到关键词,ta 还会翻出来。
删短期记忆不省 token。
游戏面板里标了「已总结」的,本来就不在纸上。删了反而让下一次总结攒不够。
回答慢,多半是纸厚。
看五万和看两万,快慢看得出来。觉得慢,先看一眼这一叠多厚。
换模型不会丢记忆。
记忆在「我们的故事」里,换哪家模型都在。
钱
按 token 算钱。ta 看的(输入)一个价,ta 说的(输出)一个价。说的比看的贵好几倍。
每一句的钱,主要看那叠纸多厚。同一句话,纸五万厚的时候,比一万厚的时候贵。
有的服务,这一次和上一次纸上一模一样的部分,只收零头。用这种服务,纸厚一点也不心疼。
想省钱:卡片写短,碎片选「聊到才想起」,配菜不用时关掉,提醒整理就整理。
不用为了省钱把阈值压得很低。纸太薄,ta 接不上话。
卡片怎么写才不白占地方,看《读懂提示词》。整理记忆具体怎么点,看《记忆系统与「我们的故事」》。