🔥 在 SillyTavern(酒馆)中,世界书(World Book)是定义角色的第一步。
很多新手对世界书的理解停留在"角色卡的补充"层面,但实际上,世界书的本质远比这更加丰富。本文将从提示词工程的角度,系统解析世界书的工作原理、插入位置策略以及触发机制,帮助你真正掌握这个强大的功能。
一、世界书的本质:提示词的集合
首先,我们需要明确一个核心概念:世界书本质上是一连串提示词的集合。
这些集合因为触发策略不同、插入位置不同、深度顺序和触发概率的不同,在游玩过程中会产生不同的效果。但回归到本质上,它就是提示词——某种程度上跟正则表达式很像。正则只是一个简单的查找功能,但通过操作能实现丰富的功能;世界书也一样,通过我们的操作可以有很复杂的功能。
世界书可以实现的功能:
- 定义世界观:构建故事的基础规则和环境设定
- 补充世界观:对已有世界观进行细节补充
- 角色定义补充:对AI角色的属性进行额外说明
- 状态栏功能:追踪角色的当前状态
- 文风与格式规定:指定输出的文风和格式要求
与其把世界书看作是对角色卡的补充,不如直接把它看成是提示词。这样的话,对它的使用会更加广泛。
二、从提示词工程角度理解上下文
在深入世界书之前,我们需要从提示词工程的角度理解酒馆中的上下文结构。这是掌握世界书使用的基础知识框架。
上下文是一个有限的容器
在酒馆配置中,上下文可以理解成一个有限的容器。它由以下五个部分组成:
- 系统提示 - AI所有行为的核心基准
- 用户描述/角色定义 - AI的身份核心
- 作者注释 - 场景描述、情绪指引、风格指示
- 聊天记录 - 用户与AI的对话记录
- 用户最后的回复 - 用户当前的输入
由于这个容器是有限的,AI的记忆力和专注力也是有限的。这导致AI有时会丧失记忆或产生幻觉。不同AI的上下文要求不同,因此破限预设也需要针对不同大模型提供不同的解决方案。
首因效应与近因效应
由于初始效应和近因效应的原因,AI对于上下文中的开头和结尾两个部分的专注力和记忆力是最大的。其中,结尾部分会被AI认为是用户最迫切的需求,因此它的及时关注度是最高的。
当聊天记录不断增加,一旦超过容器大小后,就会丢失一些上下文内容。但它不是从顶部或底部丢失的,而是从中间部分丢失的。
永久提示词 vs 临时提示词
由此,我们可以将提示词分为两类:
- 永久提示词:一般放在开头位置,AI忘记的概率非常低(除非上文报满或AI崩溃)
- 临时提示词:放在中间或结尾部分,随着对话进行可能被挤出上下文
三、世界书的插入位置与效果
世界书可以插入在上述五个部分的不同位置,每个位置都有不同的效果。
1. 系统提示之后
生效属性:永久
这个位置是用来构建世界观的基石。放置一些非常基础、常规、不想被AI忘记的规则。例如,想让AI在每一段输出后将当前角色状态输出出来,就可以放在这个位置。
2. 角色定义之后
生效属性:永久
AI已经了解自己是谁了,这个位置用来对角色进行情景补充。比如当前环境的其他属性,或与该角色相关的其他角色内容。
3. 作者自述/注释之前
生效属性:临时
这个位置更偏向于客观背景的补充,仅对当前对话生效,记忆和关注度相对较小。
4. 作者注释之后、聊天历史之前
生效属性:临时
在准备回顾对话历史之前,对当前状态或聊天历史背景进行补充。
5. 聊天历史相关位置
还有两个与聊天历史相关的位置:
- 聊天历史顶端:当前对话历史的"影子",与第4个位置作用相似
- 聊天历史之后、用户输入之前:最贴近及时响应层,针对用户之后的输入进行需求和补充
6. 角色定义之前/之后(额外位置)
还有两个特殊位置需要单独说明:
- 角色定义之前:介于世界观基础规则与角色定义之间的补充说明,关注度和记忆度大于角色定义之后
- 角色定义之后:对当前角色的额外补充
重要提示:插入位置不是非黑即白的,这只是大部分使用者总结的经验。它充满了随机性,需要在不断实践中总结出自己的一套逻辑。
四、蓝灯/绿灯触发策略
在世界书中,每个条目都有三种状态:永久(蓝灯)、关键词(绿灯)和向量化。
蓝灯(永久)
一旦将世界书标定为蓝灯,意味着该世界书一定会被放到上下文中。每次给AI发送消息时,都一定包含蓝灯内容。
绿灯(关键词触发)
如果标定为绿灯,这个世界书不一定会被放入上下文。只有当聊天记录中提到该世界书的主要关键字时,才会将内容放入上下文。
例如,写一个描述角色"艾利亚"细节的世界书,但艾利亚不一定每次都会出现。这时可以标定为绿灯,关键字写"艾利亚"。只有当聊天中提到"艾利亚"时,这个世界书才会被触发。
向量化
向量化是将世界书通过某种方式变成向量数据库。这样在token使用上会减少很多,可以很大程度减小token消耗。
三者对比:
- 绿灯:几乎不影响token(只有触发时才占用)
- 蓝灯:一定会影响token
- 向量:会影响token,但影响程度不大
五、深度、顺序与触发概率
深度
深度可以理解为当前区域中的第几条信息。数值越小,排在越前面,越靠近开头,记忆和专注度越高。
注:深度设置在某些位置(如角色定义之前)可能不可用,只有在以"艾"开头的位置才有深度选项。
顺序
当插入位置和深度都相同时,需要用顺序来判别哪个放在前面。顺序数值越大的,越排在下面。
例如,信息栏和治疗同意书都放在角色定义之前(相同位置),如果顺序分别是99和100,系统就知道把信息栏放在前面,治疗同意书放在后面。
触发概率
对于绿灯条目,可以设置触发概率。例如设置为50%,意味着即使出现了关键字,也有50%的几率不会触发。
六、总结
世界书是SillyTavern中功能强大但容易被误解的工具。掌握它需要理解以下几个核心要点:
- 本质是提示词:不要把世界书局限在"角色卡补充"的范畴,它是灵活的提示词集合
- 理解上下文容器:上下文是有限的,AI对开头和结尾的记忆最强
- 位置决定效果:不同插入位置有不同的生效属性(永久/临时)
- 蓝灯绿灯策略:蓝灯常驻,绿灯按需触发,向量节省token
- 深度与顺序:用于精细控制多个世界书的排列顺序
世界书的使用充满随机性和个性化,上述规则只是经验总结。真正掌握它需要在实践中不断摸索,找到最适合自己使用场景的一套逻辑。
只有你自己写的角色卡,才是最完美的。
本文内容整理自B站教程视频(BV1MKahzaExx),仅代表作者对世界书的个人理解,如有错误欢迎在评论区指正。
← 返回博客首页