@scotthuang/engram 0.6.7 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/logger.d.ts DELETED
@@ -1,32 +0,0 @@
1
- /**
2
- * Memory System Plugin - Logger
3
- *
4
- * 按天写日志文件,方便长期回溯记忆召回问题。
5
- * - 传入 logDir:在 logDir/engram/ 下按天创建日志文件(YYYY-MM-DD.log)
6
- * - 不传入 logDir:fallback 到 console.log / console.error
7
- */
8
- export type LogLevel = "INFO" | "WARN" | "ERROR";
9
- declare class Logger {
10
- private logDir;
11
- private currentDate;
12
- private currentLogPath;
13
- /**
14
- * 初始化 logger
15
- * @param parentDir 父目录路径,会在下面创建 engram/ 子文件夹。不传则用 console 输出。
16
- */
17
- init(parentDir?: string): void;
18
- /**
19
- * 确保当天的日志文件路径是最新的(使用本地日期)
20
- */
21
- private ensureLogFile;
22
- /**
23
- * 写一行日志
24
- */
25
- private write;
26
- info(message: string): void;
27
- warn(message: string): void;
28
- error(message: string): void;
29
- }
30
- /** 全局单例 */
31
- export declare const logger: Logger;
32
- export {};
package/dist/logger.js DELETED
@@ -1,106 +0,0 @@
1
- /**
2
- * Memory System Plugin - Logger
3
- *
4
- * 按天写日志文件,方便长期回溯记忆召回问题。
5
- * - 传入 logDir:在 logDir/engram/ 下按天创建日志文件(YYYY-MM-DD.log)
6
- * - 不传入 logDir:fallback 到 console.log / console.error
7
- */
8
- import { mkdirSync, appendFileSync } from "node:fs";
9
- import { join } from "node:path";
10
- /**
11
- * 格式化本地时间为 YYYY-MM-DD HH:mm:ss.SSS 格式
12
- * 使用本机时区而非 UTC,方便阅读和按天归档
13
- */
14
- function localTimestamp(now) {
15
- const y = now.getFullYear();
16
- const M = String(now.getMonth() + 1).padStart(2, "0");
17
- const d = String(now.getDate()).padStart(2, "0");
18
- const h = String(now.getHours()).padStart(2, "0");
19
- const m = String(now.getMinutes()).padStart(2, "0");
20
- const s = String(now.getSeconds()).padStart(2, "0");
21
- const ms = String(now.getMilliseconds()).padStart(3, "0");
22
- return `${y}-${M}-${d} ${h}:${m}:${s}.${ms}`;
23
- }
24
- /**
25
- * 获取本地日期字符串 YYYY-MM-DD(用于日志文件名)
26
- */
27
- function localDateStr(now) {
28
- const y = now.getFullYear();
29
- const M = String(now.getMonth() + 1).padStart(2, "0");
30
- const d = String(now.getDate()).padStart(2, "0");
31
- return `${y}-${M}-${d}`;
32
- }
33
- class Logger {
34
- logDir = null;
35
- currentDate = "";
36
- currentLogPath = "";
37
- /**
38
- * 初始化 logger
39
- * @param parentDir 父目录路径,会在下面创建 engram/ 子文件夹。不传则用 console 输出。
40
- */
41
- init(parentDir) {
42
- if (!parentDir) {
43
- this.logDir = null;
44
- console.log("[engram:logger] No logDir configured, using console output");
45
- return;
46
- }
47
- this.logDir = join(parentDir, "engram");
48
- try {
49
- mkdirSync(this.logDir, { recursive: true });
50
- console.log(`[engram:logger] Log directory: ${this.logDir}`);
51
- }
52
- catch (err) {
53
- console.error(`[engram:logger] Failed to create log directory ${this.logDir}: ${err}`);
54
- this.logDir = null;
55
- }
56
- }
57
- /**
58
- * 确保当天的日志文件路径是最新的(使用本地日期)
59
- */
60
- ensureLogFile() {
61
- if (!this.logDir)
62
- return null;
63
- const today = localDateStr(new Date());
64
- if (today !== this.currentDate) {
65
- this.currentDate = today;
66
- this.currentLogPath = join(this.logDir, `${today}.log`);
67
- }
68
- return this.currentLogPath;
69
- }
70
- /**
71
- * 写一行日志
72
- */
73
- write(level, message) {
74
- const timestamp = localTimestamp(new Date());
75
- const line = `${timestamp} [${level}] ${message}`;
76
- // 始终输出到 console(保持现有行为)
77
- if (level === "ERROR") {
78
- console.error(line);
79
- }
80
- else {
81
- console.log(line);
82
- }
83
- // 如果有文件日志目录,同时写文件
84
- const logFile = this.ensureLogFile();
85
- if (logFile) {
86
- try {
87
- appendFileSync(logFile, line + "\n");
88
- }
89
- catch {
90
- // 写文件失败不应影响主流程,静默忽略
91
- }
92
- }
93
- }
94
- info(message) {
95
- this.write("INFO", message);
96
- }
97
- warn(message) {
98
- this.write("WARN", message);
99
- }
100
- error(message) {
101
- this.write("ERROR", message);
102
- }
103
- }
104
- /** 全局单例 */
105
- export const logger = new Logger();
106
- //# sourceMappingURL=logger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"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"}
package/dist/profile.d.ts DELETED
@@ -1,37 +0,0 @@
1
- /**
2
- * Memory System Plugin - Profile (语义画像)
3
- *
4
- * 画像 JSON 结构 + 读写 + 压缩摘要
5
- */
6
- export type ProfileTag = {
7
- value: string;
8
- confidence: number;
9
- lastSeen: string;
10
- };
11
- export type SemanticProfile = {
12
- summary: string;
13
- coreTags: string[];
14
- tags: Record<string, ProfileTag[]>;
15
- updatedAt: string;
16
- };
17
- export declare const EMPTY_PROFILE: SemanticProfile;
18
- export declare class ProfileManager {
19
- private profile;
20
- private profilePath;
21
- constructor(workspaceDir: string);
22
- ensureDir(): Promise<void>;
23
- load(): Promise<SemanticProfile>;
24
- save(profile: SemanticProfile): Promise<void>;
25
- /**
26
- * 获取召回用的摘要信息(控制 token 消耗)
27
- */
28
- getRecallContext(profile: SemanticProfile): string;
29
- /**
30
- * 添加标签(增量更新)
31
- */
32
- addTag(profile: SemanticProfile, dimension: string, value: string): SemanticProfile;
33
- /**
34
- * 降低标签置信度(遗忘)
35
- */
36
- decayTags(profile: SemanticProfile, factor?: number): SemanticProfile;
37
- }
package/dist/profile.js DELETED
@@ -1,107 +0,0 @@
1
- /**
2
- * Memory System Plugin - Profile (语义画像)
3
- *
4
- * 画像 JSON 结构 + 读写 + 压缩摘要
5
- */
6
- import { promises as fs } from "node:fs";
7
- import { logger } from "./logger.js";
8
- import { join } from "node:path";
9
- export const EMPTY_PROFILE = {
10
- summary: "",
11
- coreTags: [],
12
- tags: {},
13
- updatedAt: new Date().toISOString(),
14
- };
15
- export class ProfileManager {
16
- profile = null;
17
- profilePath;
18
- constructor(workspaceDir) {
19
- this.profilePath = join(workspaceDir, "memory-engram", "profile", "semantic_profile.json");
20
- }
21
- async ensureDir() {
22
- await fs.mkdir(join(this.profilePath, ".."), { recursive: true });
23
- }
24
- async load() {
25
- if (this.profile)
26
- return this.profile;
27
- try {
28
- const raw = await fs.readFile(this.profilePath, "utf-8");
29
- this.profile = JSON.parse(raw);
30
- const tagCount = Object.values(this.profile.tags).reduce((sum, tags) => sum + tags.length, 0);
31
- logger.info(`[engram:profile] Loaded profile: ${tagCount} tags, ${Object.keys(this.profile.tags).length} dimensions, coreTags=[${this.profile.coreTags.join(", ")}]`);
32
- }
33
- catch {
34
- logger.info(`[engram:profile] Profile not found at ${this.profilePath}, using empty profile`);
35
- this.profile = { ...EMPTY_PROFILE };
36
- }
37
- return this.profile;
38
- }
39
- async save(profile) {
40
- this.profile = profile;
41
- profile.updatedAt = new Date().toISOString();
42
- await this.ensureDir();
43
- await fs.writeFile(this.profilePath, JSON.stringify(profile, null, 2), "utf-8");
44
- const tagCount = Object.values(profile.tags).reduce((sum, tags) => sum + tags.length, 0);
45
- logger.info(`[engram:profile] Saved profile: ${tagCount} tags, summary="${(profile.summary || "").slice(0, 50)}"`);
46
- }
47
- /**
48
- * 获取召回用的摘要信息(控制 token 消耗)
49
- */
50
- getRecallContext(profile) {
51
- if (!profile.summary && profile.coreTags.length === 0) {
52
- return "";
53
- }
54
- const parts = [];
55
- if (profile.summary) {
56
- parts.push(`【用户画像】${profile.summary}`);
57
- }
58
- if (profile.coreTags.length > 0) {
59
- parts.push(`【核心标签】${profile.coreTags.join(", ")}`);
60
- }
61
- return parts.join("\n");
62
- }
63
- /**
64
- * 添加标签(增量更新)
65
- */
66
- addTag(profile, dimension, value) {
67
- if (!profile.tags[dimension]) {
68
- profile.tags[dimension] = [];
69
- }
70
- // 避免重复
71
- const existing = profile.tags[dimension].find(t => t.value === value);
72
- if (existing) {
73
- existing.confidence = Math.min(1.0, existing.confidence + 0.1);
74
- existing.lastSeen = new Date().toISOString();
75
- }
76
- else {
77
- profile.tags[dimension].push({
78
- value,
79
- confidence: 0.7,
80
- lastSeen: new Date().toISOString(),
81
- });
82
- }
83
- return profile;
84
- }
85
- /**
86
- * 降低标签置信度(遗忘)
87
- */
88
- decayTags(profile, factor = 0.95) {
89
- let decayed = 0;
90
- let pruned = 0;
91
- for (const dimension of Object.keys(profile.tags)) {
92
- const before = profile.tags[dimension].length;
93
- profile.tags[dimension] = profile.tags[dimension]
94
- .map(t => ({ ...t, confidence: t.confidence * factor }))
95
- .filter(t => t.confidence > 0.2); // 淘汰低置信度标签
96
- decayed += profile.tags[dimension].length;
97
- pruned += before - profile.tags[dimension].length;
98
- // 清理空维度
99
- if (profile.tags[dimension].length === 0) {
100
- delete profile.tags[dimension];
101
- }
102
- }
103
- logger.info(`[engram:profile] decayTags: factor=${factor}, decayed=${decayed} tags, pruned=${pruned} low-confidence tags`);
104
- return profile;
105
- }
106
- }
107
- //# sourceMappingURL=profile.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"profile.js","sourceRoot":"","sources":["../src/profile.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAejC,MAAM,CAAC,MAAM,aAAa,GAAoB;IAC5C,OAAO,EAAE,EAAE;IACX,QAAQ,EAAE,EAAE;IACZ,IAAI,EAAE,EAAE;IACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;CACpC,CAAC;AAEF,MAAM,OAAO,cAAc;IACjB,OAAO,GAA2B,IAAI,CAAC;IACvC,WAAW,CAAS;IAE5B,YAAY,YAAoB;QAC9B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,uBAAuB,CAAC,CAAC;IAC7F,CAAC;IAED,KAAK,CAAC,SAAS;QACb,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC,OAAO,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACzD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoB,CAAC;YAClD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC9F,MAAM,CAAC,IAAI,CAAC,oCAAoC,QAAQ,UAAU,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,0BAA0B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxK,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,CAAC,IAAI,CAAC,yCAAyC,IAAI,CAAC,WAAW,uBAAuB,CAAC,CAAC;YAC9F,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,aAAa,EAAE,CAAC;QACtC,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAwB;QACjC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,OAAO,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACvB,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QAChF,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACzF,MAAM,CAAC,IAAI,CAAC,mCAAmC,QAAQ,mBAAmB,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IACrH,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,OAAwB;QACvC,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtD,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACrD,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,OAAwB,EAAE,SAAiB,EAAE,KAAa;QAC/D,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;QAC/B,CAAC;QACD,OAAO;QACP,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;QACtE,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC;YAC/D,QAAQ,CAAC,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC;gBAC3B,KAAK;gBACL,UAAU,EAAE,GAAG;gBACf,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACnC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,OAAwB,EAAE,SAAiB,IAAI;QACvD,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;iBAC9C,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,GAAG,MAAM,EAAE,CAAC,CAAC;iBACvD,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,WAAW;YAC/C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;YAC1C,MAAM,IAAI,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;YAClD,QAAQ;YACR,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzC,OAAO,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,sCAAsC,MAAM,aAAa,OAAO,iBAAiB,MAAM,sBAAsB,CAAC,CAAC;QAC3H,OAAO,OAAO,CAAC;IACjB,CAAC;CACF"}
package/dist/recall.d.ts DELETED
@@ -1,98 +0,0 @@
1
- /**
2
- * Memory System Plugin - Recall (自动召回)
3
- *
4
- * 双路召回:BM25(短期记忆) + Vector(长期记忆)
5
- * 查询重写 → 多子查询召回 → 分数融合 → 排重 → 时间衰减 → MMR 去重 → 画像注入
6
- */
7
- import { type MemorySystemConfig } from "./config.js";
8
- export type RecallResult = {
9
- id?: string;
10
- text: string;
11
- source: "short-term" | "vector";
12
- score: number;
13
- date?: string;
14
- category?: string;
15
- };
16
- /** recall-hits.json v2 格式:每个文件的命中统计 */
17
- export type RecallHitEntry = {
18
- /** 被召回命中的总次数 */
19
- hitCount: number;
20
- /** 第一次命中的时间戳 (ms) */
21
- firstHit: number;
22
- /** 最后一次命中的时间戳 (ms) */
23
- lastHit: number;
24
- /** 是否已沉淀到长期记忆 */
25
- settled: boolean;
26
- };
27
- export declare class RecallEngine {
28
- private bm25;
29
- private profileManager;
30
- private config;
31
- private workspaceDir;
32
- private vectorSearch?;
33
- private reinforceCallback?;
34
- /** recall-hits.json 路径 */
35
- private get recallHitsPath();
36
- constructor(workspaceDir: string, config: MemorySystemConfig);
37
- /**
38
- * 设置向量搜索回调(由 Plugin 主入口注入)
39
- */
40
- setVectorSearch(fn: (query: string, limit: number) => Promise<RecallResult[]>): void;
41
- /**
42
- * 设置记忆强化回调(由 Plugin 主入口注入)
43
- */
44
- setReinforceCallback(fn: (ids: string[]) => Promise<void>): void;
45
- /**
46
- * 检查是否已设置向量搜索
47
- */
48
- hasVectorSearch(): boolean;
49
- /**
50
- * 启动时初始化:加载画像 + 构建 BM25 索引
51
- */
52
- startup(): Promise<void>;
53
- /**
54
- * 增量重建 BM25 索引(在新增文件后调用)
55
- */
56
- rebuildBM25(): Promise<void>;
57
- /**
58
- * recall-hits.json 条目格式(v2)
59
- */
60
- static readonly RECALL_HITS_VERSION = 2;
61
- /**
62
- * 读取 recall-hits.json(兼容 v1 和 v2 格式)
63
- * v1: { "filename": timestamp }
64
- * v2: { "filename": { hitCount, firstHit, lastHit, settled } }
65
- */
66
- loadRecallHits(): Promise<Record<string, RecallHitEntry>>;
67
- /**
68
- * 记录被 BM25 召回命中的短期记忆文件
69
- * 累加 hitCount,更新 lastHit
70
- * 异步 fire-and-forget,不阻塞召回返回
71
- */
72
- private trackHitFiles;
73
- /**
74
- * 查询重写:调用云 LLM 将混合意图拆分为多个聚焦子查询
75
- * 返回 { queries: 子查询数组, primary: 主查询索引 }
76
- */
77
- private rewriteQuery;
78
- /**
79
- * 单子查询召回(内部方法)
80
- * 对一个子查询执行 BM25 + Vector 双路召回,返回原始候选列表
81
- * 不做加权和衰减 — 这些统一在 recall() 的 byId 合并阶段处理
82
- */
83
- private recallSingle;
84
- /**
85
- * 核心:双路召回(支持查询重写)
86
- *
87
- * 流水线(参考 OpenClaw hybrid.ts):
88
- * 1. 查询重写 → 多子查询
89
- * 2. 每个子查询:BM25 + Vector 双路召回
90
- * 3. byId Map 合并(同一条记忆只保留一条,两路分数加权求和)
91
- * 4. 时间衰减(仅对短期记忆,向量长期记忆豁免)
92
- * 5. 排序 → 去重 → 过滤低分 → MMR 重排 → Top-K
93
- */
94
- recall(query: string): Promise<{
95
- results: string;
96
- memoryContext: string;
97
- }>;
98
- }