词汇表

AI 角色扮演的那些词,说人话

人设、系统提示词、上下文窗口、持久记忆、分岔、temperature。每个词到底是什么意思,以及出问题的时候哪几个才要紧。

Talaforge › AI 角色扮演的那些词,说人话

这些词大多是从论文里跑出来的,一直没人把它们翻成人话。认识其中六个,就能把一个「莫名其妙不对劲」的聊天,变成一个你定位得到的问题。

最该先学的两个是上下文窗口和持久记忆,因为几乎所有以「角色忘了」开头的抱怨,归根到底都是把这两个搞混了。

角色本身

人设 Persona——角色的身份层:名字、说话的声口、态度、来历、小动作。这是模型在每一条回复里都被要求去扮演的东西。

系统提示词 System prompt——模型在生成任何内容之前收到的那段隐藏指令。在这里,它装着人设、当前生效的场景规则,以及给这位读者专属的那一小段记忆。

角色卡 Character card——一个可携带的包,装着人设、开场白、默认模型和采样参数。社区里有好几种通用格式,角色就是靠它们在平台之间搬家的。

记忆,以及被大家认错成记忆的那个东西

上下文窗口 Context window——模型为了生成一条回复,最多能同时装在脑子里的文本量。窗口越大,能照顾到的近期对话越多,每次调用也越贵。它是一个上限,不是一个仓库:对话超出去之后,最早的那部分就直接掉出去了。

持久记忆 Persistent memory——角色跨会话保存下来的、关于你的那些事实。这是完全不同的另一套机制:经过挑选、可以编辑,并且在每一条回复里被塞回上下文。在这里它按角色、按话题、按读者分开,而且对你完全可见。

把大多数抱怨解开的,就是这个区分。角色忘了一小时前的事,是上下文窗口的效应。角色忘了你妹妹的名字,是记忆条目的问题——而如果那件事从来没被写下来,哪个模型都不会正好想对。

token——模型读写时的最小单位,大约相当于四个英文字符。上下文窗口是按 token 计的,所以一个听上去大得吓人的上限,装满的速度往往比你想的快。

把对话导起来

分岔 Branch / fork——一个分开的点。从一条回复分岔出去,会长出一条和原来那条并行的替代线,两条都留着。正因为这样,试另一个方向才是免费的,而不是破坏性的。

重新生成 Regenerate——要最后那条回复的另一个版本,别的什么都不动。上下文照旧,答案是新的。

那些旋钮

temperature——回复有多好猜。低一点更稳,高一点更意外。一个读起来很平的角色,往往是 temperature 的问题,不是模型的问题。

top_p、top_k、min_p——约束模型压根会考虑哪些候选下一个词。调语气很好用:谨慎、外放、简短、啰嗦。

重复惩罚 Repetition penalty——压住反复用同一句话的倾向。一个每隔四条回复就把口头禅搬出来的角色,靠它治。

底下的管道

模型路由 Model router——从一个池子里为某个场景挑模型、并在其中一个状态变差时悄悄切走的那套基础设施。

故障切换与熔断 Failover / circuit breaker——路由在一条状态变差的线路把超时和拒答带进对话之前,把它掐掉,改发给健康的那一条。这东西起作用的时候你根本不会察觉,而这正是它的意义。

边角上的词

Telegram Stars——Telegram 自带的小额支付单位,在 Telegram 里买,用来付升级。充值本身不需要银行卡。

分享链接 Share link——一条带归属追踪的网址,打开它就直接进入和某位作者角色的对话。从这条链接进来的人花掉的 Stars,作者能分到一份。

话题 Topic——Telegram 里的一条独立论坛线程,用来给每个角色一个自己的房间,有自己的历史和置顶条。

年龄确认 Age gate——开启成人向角色扮演之前,在机器人内完成的验证步骤。公开网站是全年龄的;成人模式要过了这一关之后自己去开,而硬性红线不管怎样都在。

RTL——从右往左的书写方式,阿拉伯语、希伯来语和波斯语用它。界面元素是整个镜像过来的,而不是把左对齐的文字塞进一个右对齐的语言里。

上下文窗口和记忆有什么区别?
上下文窗口是模型为一条回复所能同时装在脑子里的文本量——一个按 token 计的上限,更早的对话会从里面掉出去。持久记忆则是经过挑选、可以编辑、并被塞进每一条回复的、关于你的事实。大多数「它忘了某件事」的抱怨属于前者,大多数「它把我忘了」的抱怨属于后者。
AI 角色扮演里的系统提示词是什么?
模型在动笔之前收到的那段隐藏指令。它装着角色的人设、当前的场景规则,以及专属于你的那一小段记忆——所以同一个角色面对两个不同的人,表现可以不一样。
角色卡是什么?
一个可携带的包,里面有人设、开场白、默认模型和采样参数。社区里有好几种通用格式,在一个平台上写的角色,就是靠它们被导入到另一个平台的。
temperature 到底干什么用?
它控制下一个词有多好猜。数值低,回复更稳也更容易重复;数值高,回复更意外也更不受控。一个读起来很平的角色,多半是这个值调低了,而不是模型选错了。
对话分岔是什么意思?
从一条回复叉出一条替代线,同时把原来那条留着。两条都继续存在、各自生长,所以试另一个方向不花任何代价。
token 是什么?
模型读写的单位——大约四个英文字符。上下文上限是按 token 数的,所以一个数字上听着很大的窗口,实际装下的对话比看上去少。
模型路由是什么?
决定由哪个模型来服务一个场景、并在某个模型开始出问题时把它换掉的那套基础设施——赶在超时和拒答传到对话之前。它工作正常的时候,是看不见的。
在 Telegram 里做一个角色 →

接着读