Refine story summary prompts and vector sync
This commit is contained in:
@@ -36,7 +36,7 @@ Incremental_Summary_Requirements:
|
||||
- 转折: 改变某条线走向
|
||||
- 点睛: 有细节不影响主线
|
||||
- 氛围: 纯粹氛围片段
|
||||
- Causal_Chain: 为每个新事件标注直接前因事件ID(causedBy),0-2个。只填 evt-数字 形式,必须指向“已存在事件”或“本次新输出事件”。不要写解释文字。
|
||||
- Causal_Chain: 为每个新事件标注直接前因事件ID(causedBy)。仅在因果关系明确(直接导致/明确动机/承接后果)时填写;不明确时填[]完全正常。0-2个,只填 evt-数字,指向已存在或本次新输出事件。
|
||||
- Character_Dynamics: 识别新角色,追踪关系趋势(破裂/厌恶/反感/陌生/投缘/亲密/交融)
|
||||
- Arc_Tracking: 更新角色弧光轨迹与成长进度(0.0-1.0)
|
||||
- World_State_Tracking: 维护当前世界的硬性约束。解决"什么不能违反"。采用 KV 覆盖模型,追踪生死、物品归属、秘密知情、关系状态、环境规则等不可违背的事实。(覆盖式更新)
|
||||
@@ -215,10 +215,7 @@ Before generating, observe the USER and analyze carefully:
|
||||
- events.id 从 evt-{nextEventId} 开始编号
|
||||
- 仅输出【增量】内容,已有事件绝不重复
|
||||
- keywords 是全局关键词,综合已有+新增
|
||||
- causedBy 规则:
|
||||
- 数组,最多2个;无前因则 []
|
||||
- 只能填 evt-数字(例如 evt-12)
|
||||
- 必须引用“已存在事件”或“本次新输出事件”(允许引用本次 JSON 内较早出现的事件)
|
||||
- causedBy 仅在因果明确时填写,允许为[],0-2个,详见上方 Causal_Chain 规则
|
||||
- worldUpdate 可为空数组
|
||||
- 合法JSON,字符串值内部避免英文双引号
|
||||
- 用朴实、白描、有烟火气的笔触记录,避免比喻和意象
|
||||
|
||||
@@ -91,11 +91,11 @@ function cleanSummary(summary) {
|
||||
function buildSystemPreamble() {
|
||||
return [
|
||||
"以上内容为因上下文窗口限制保留的可见历史",
|
||||
"【剧情记忆】为对以上可见、不可见历史的总结",
|
||||
"1) 【世界状态】属于硬约束",
|
||||
"2) 【事件/证据/碎片/人物弧光】可用于补全上下文与动机。",
|
||||
"以下【剧情记忆】是对可见与不可见历史的总结:",
|
||||
"• 【世界约束】记录着已确立的事实",
|
||||
"• 其余部分是过往经历的回忆碎片",
|
||||
"",
|
||||
"请阅读并内化以下剧情记忆:",
|
||||
"请内化这些记忆:",
|
||||
].join("\n");
|
||||
}
|
||||
|
||||
@@ -275,7 +275,7 @@ function buildNonVectorPrompt(store) {
|
||||
|
||||
if (data.world?.length) {
|
||||
const lines = formatWorldLines(data.world);
|
||||
sections.push(`[世界约束] 规则手册,请严格遵守\n${lines.join("\n")}`);
|
||||
sections.push(`[世界约束] 已确立的事实\n${lines.join("\n")}`);
|
||||
}
|
||||
|
||||
if (data.events?.length) {
|
||||
@@ -602,7 +602,7 @@ async function buildVectorPrompt(store, recallResult, causalById, queryEntities
|
||||
|
||||
// 1. 世界约束
|
||||
if (assembled.world.lines.length) {
|
||||
sections.push(`[世界约束] 规则手册,请严格遵守\n${assembled.world.lines.join("\n")}`);
|
||||
sections.push(`[世界约束] 已确立的事实\n${assembled.world.lines.join("\n")}`);
|
||||
}
|
||||
|
||||
// 2. 核心经历
|
||||
|
||||
Reference in New Issue
Block a user