彻底了解 Silly Tavern 角色卡字段(4/5):世界书 — character_book 与条目
系列:彻底了解 Silly Tavern 角色卡字段(共 5 篇)。结构以 Character Card V2 规范中的 CharacterBook 类型 为准;Silly Tavern 里对应「角色世界信息 / World Info」如何导入、是否支持某子字段,以你使用的 ST 版本为准。
character_book 是什么
规范里的术语可以这么记:
- Lorebook:带关键词触发、把条目插入 prompt 的一类对象(不同软件叫法不同)。
- World book:挂在整个聊天/世界上的 lorebook。
- Character book:嵌在角色卡里、只跟这个角色走的 lorebook,避免用户再单独下一份世界书文件。
规范建议:角色书与世界书叠加使用,而不是二选一;并建议先用角色书额度,再用世界书(实现细节因前端而异)。
外层常见字段(概念)
character_book 里除了 entries 数组,还可能包含例如:
name/description:这套书的名称或说明(给人类看)。scan_depth、token_budget、recursive_scanning:控制扫多深的聊天记录、总 token 预算、是否递归触发等(各前端映射不同,见 ST 设置)。extensions:扩展槽,必须为对象,默认{};不要删除读不懂的键。
一条 entry 里有什么
规范中的条目(示意)包含但不限于:
| 概念 | 含义(口语) |
|---|---|
keys | 聊天里出现这些词就可能触发这条 |
content | 触发后要插入的正文 |
secondary_keys | 与 selective 配合:为 true 时,可能要同时命中主键与次键 |
selective | 是否启用「双键」触发逻辑 |
enabled | 这条是否启用 |
insertion_order | 数字越小,同批插入时越靠上(规范用语:插入顺序) |
case_sensitive | 关键词是否区分大小写 |
constant | 为 true 时可在预算内始终插入 |
position | 'before_char' 或 'after_char':插在角色定义前还是后 |
priority | 预算不够时,数字小的可能先被丢掉 |
extensions | 每条也有自己的扩展对象,默认不删未知键 |
部分字段规范注明在某一前端暂无对应——迁移卡时以实际 ST 行为为准。
迷你示例(仅占位)
下面是一段极度精简的示例,只为展示键名关系;实际写作请按你需要的条目数扩展。
json
"character_book": {
"name": "古籍店设定",
"scan_depth": 50,
"token_budget": 300,
"recursive_scanning": false,
"extensions": {},
"entries": [
{
"keys": ["家谱", "脱线"],
"content": "这本家谱曾遭虫蛀,客户去年自行补过书脊,修复时需避开二次损伤。",
"enabled": true,
"insertion_order": 100,
"case_sensitive": false,
"selective": false,
"secondary_keys": [],
"constant": false,
"position": "before_char",
"extensions": {}
},
{
"keys": ["浆糊"],
"content": "修复室用的是传统小麦淀粉浆,气味很淡;对墨水渗透敏感的人会觉得刺鼻。",
"enabled": true,
"insertion_order": 200,
"selective": true,
"secondary_keys": ["过敏"],
"extensions": {}
}
]
}写作流程可以记三个动词:列关键词 → 写短条目 → 开聊几句看是否乱触发。
上一章:(3/5)开场与情境:first_mes、scenario、alternate_greetings
下一章:(5/5)扩展与排错:system_prompt、Jailbreak 类字段、extensions
系列目录:返回文章列表 · 彻底了解 Silly Tavern 角色卡字段
在 Mac 上编辑 character_book 并写回 PNG,可用 Sillycard。产品细节以 App Store 与应用内为准。