扫描策略与关联管理
世界书的效能很大程度上取决于扫描策略的配置,这决定了系统如何从海量对话中挖掘关键词。
1. 扫描机制
当用户发送消息或系统准备生成回复时,世界书处理器 (Worldbook Processor) 会执行以下操作:
- 提取文本: 获取最近的对话历史。
- 关键词匹配: 在提取的文本中搜索所有关联世界书的关键词。
- 递归扫描 (Recursive Scan): 如果匹配到的条目内容中也包含关键词,系统会继续扫描这些内容,直到没有新条目被触发。
- 角色过滤: 检查条目是否设置了角色过滤(例如:仅当当前 Agent 是“医生”时才触发医疗知识条目)。
2. 扫描深度 (Scanning Depth)
扫描深度决定了系统“往回看”多少条消息:
- 深度为 1: 仅扫描当前发送的这一条消息。
- 深度为 5: 扫描最近的 5 条对话记录。
- 平衡点: 深度越大,触发越精准,但计算开销和 Token 消耗也越高。建议设置为 3-5。
3. 关联管理
全局世界书
在 聊天设置 -> 世界书 中关联的书库。这些世界书对所有 Agent 和所有会话生效,适合存放通用的常识或系统规则。
Agent 专属世界书
在 Agent 编辑器 中关联。
- 优先级: Agent 专属世界书的条目通常具有更高的注入优先级。
- 配置覆盖: Agent 可以独立设置是否启用“递归扫描”以及自定义“扫描深度”。
4. 调试与优化
如果你发现世界书没有按预期触发,或者注入了太多无关内容,可以:
- 使用上下文分析器: 在分析器的“结构化视图”中,你可以清晰看到哪些条目被匹配、匹配的原因以及它们最终所在的位置。
- 检查全词匹配: 如果关键词是“人”,可能会错误触发“人生”、“人民”。开启“全词匹配”可以解决此问题。
- 调整扫描深度: 如果设定是在几轮对话前提到的,尝试增加扫描深度。