mirror of
https://github.com/Youzini-afk/ST-Bionic-Memory-Ecology.git
synced 2026-05-15 22:30:38 +08:00
feat: Phase 3 世界书引擎移植 + EJS 支持
- 新增 task-worldinfo.js: 从 EW 移植世界书激活/分桶引擎 - 新增 task-ejs.js: 从 EW 移植 EJS 模板渲染引擎 - 新增 vendor/ejs.js: EJS runtime vendor - prompt-builder.js: 改为异步, 接入 worldInfoBefore/After/atDepth - prompt-profiles.js: 新增内置块 charDescription/userPersona/worldInfoBefore/After - 更新 extractor/retriever/compressor/consolidator 接入新 builder - st-context.js: 扩展 ST 上下文字段兜底 - 新增 tests/task-worldinfo.mjs: 世界书引擎测试
This commit is contained in:
21
extractor.js
21
extractor.js
@@ -109,7 +109,7 @@ export async function extractMemories({
|
||||
? `${messages[0]?.seq ?? "?"} ~ ${messages[messages.length - 1]?.seq ?? "?"}`
|
||||
: "";
|
||||
|
||||
const promptBuild = buildTaskPrompt(settings, "extract", {
|
||||
const promptBuild = await buildTaskPrompt(settings, "extract", {
|
||||
taskName: "extract",
|
||||
schema: schemaDescription,
|
||||
schemaDescription,
|
||||
@@ -152,7 +152,10 @@ export async function extractMemories({
|
||||
maxRetries: 2,
|
||||
signal,
|
||||
taskType: "extract",
|
||||
additionalMessages: promptBuild.customMessages || [],
|
||||
additionalMessages: [
|
||||
...(promptBuild.customMessages || []),
|
||||
...(promptBuild.additionalMessages || []),
|
||||
],
|
||||
});
|
||||
throwIfAborted(signal);
|
||||
|
||||
@@ -629,7 +632,7 @@ export async function generateSynopsis({
|
||||
.map((n) => `${n.fields.title}: ${n.fields.status || "active"}`)
|
||||
.join("; ");
|
||||
|
||||
const synopsisPromptBuild = buildTaskPrompt(settings, "synopsis", {
|
||||
const synopsisPromptBuild = await buildTaskPrompt(settings, "synopsis", {
|
||||
taskName: "synopsis",
|
||||
eventSummary: eventSummaries,
|
||||
characterSummary: charSummary || "(无)",
|
||||
@@ -665,7 +668,10 @@ export async function generateSynopsis({
|
||||
maxRetries: 1,
|
||||
signal,
|
||||
taskType: "synopsis",
|
||||
additionalMessages: synopsisPromptBuild.customMessages || [],
|
||||
additionalMessages: [
|
||||
...(synopsisPromptBuild.customMessages || []),
|
||||
...(synopsisPromptBuild.additionalMessages || []),
|
||||
],
|
||||
});
|
||||
|
||||
if (!result?.summary) return;
|
||||
@@ -742,7 +748,7 @@ export async function generateReflection({
|
||||
.map((e) => `${e.fromId} -> ${e.toId} (${e.relation})`)
|
||||
.join("\n");
|
||||
|
||||
const reflectionPromptBuild = buildTaskPrompt(settings, "reflection", {
|
||||
const reflectionPromptBuild = await buildTaskPrompt(settings, "reflection", {
|
||||
taskName: "reflection",
|
||||
eventSummary,
|
||||
characterSummary: characterSummary || "(无)",
|
||||
@@ -785,7 +791,10 @@ export async function generateReflection({
|
||||
maxRetries: 1,
|
||||
signal,
|
||||
taskType: "reflection",
|
||||
additionalMessages: reflectionPromptBuild.customMessages || [],
|
||||
additionalMessages: [
|
||||
...(reflectionPromptBuild.customMessages || []),
|
||||
...(reflectionPromptBuild.additionalMessages || []),
|
||||
],
|
||||
});
|
||||
|
||||
if (!result?.insight) return null;
|
||||
|
||||
Reference in New Issue
Block a user