@hope666/melu 1.0.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/LICENSE +15 -0
- package/README.md +57 -0
- package/dist/cli.d.ts +8 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +630 -0
- package/dist/cli.js.map +1 -0
- package/dist/config.d.ts +45 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +135 -0
- package/dist/config.js.map +1 -0
- package/dist/embedder-client.d.ts +24 -0
- package/dist/embedder-client.d.ts.map +1 -0
- package/dist/embedder-client.js +164 -0
- package/dist/embedder-client.js.map +1 -0
- package/dist/embedder-daemon-client.d.ts +10 -0
- package/dist/embedder-daemon-client.d.ts.map +1 -0
- package/dist/embedder-daemon-client.js +185 -0
- package/dist/embedder-daemon-client.js.map +1 -0
- package/dist/embedder-daemon.d.ts +11 -0
- package/dist/embedder-daemon.d.ts.map +1 -0
- package/dist/embedder-daemon.js +284 -0
- package/dist/embedder-daemon.js.map +1 -0
- package/dist/embedder-ipc.d.ts +27 -0
- package/dist/embedder-ipc.d.ts.map +1 -0
- package/dist/embedder-ipc.js +60 -0
- package/dist/embedder-ipc.js.map +1 -0
- package/dist/embedder-main.d.ts +2 -0
- package/dist/embedder-main.d.ts.map +1 -0
- package/dist/embedder-main.js +6 -0
- package/dist/embedder-main.js.map +1 -0
- package/dist/embedder.d.ts +41 -0
- package/dist/embedder.d.ts.map +1 -0
- package/dist/embedder.js +231 -0
- package/dist/embedder.js.map +1 -0
- package/dist/extraction-queue.d.ts +53 -0
- package/dist/extraction-queue.d.ts.map +1 -0
- package/dist/extraction-queue.js +418 -0
- package/dist/extraction-queue.js.map +1 -0
- package/dist/extraction-stats.d.ts +15 -0
- package/dist/extraction-stats.d.ts.map +1 -0
- package/dist/extraction-stats.js +89 -0
- package/dist/extraction-stats.js.map +1 -0
- package/dist/extractor-worker-main.d.ts +2 -0
- package/dist/extractor-worker-main.d.ts.map +1 -0
- package/dist/extractor-worker-main.js +70 -0
- package/dist/extractor-worker-main.js.map +1 -0
- package/dist/extractor-worker.d.ts +17 -0
- package/dist/extractor-worker.d.ts.map +1 -0
- package/dist/extractor-worker.js +164 -0
- package/dist/extractor-worker.js.map +1 -0
- package/dist/extractor.d.ts +36 -0
- package/dist/extractor.d.ts.map +1 -0
- package/dist/extractor.js +244 -0
- package/dist/extractor.js.map +1 -0
- package/dist/i18n.d.ts +995 -0
- package/dist/i18n.d.ts.map +1 -0
- package/dist/i18n.js +1024 -0
- package/dist/i18n.js.map +1 -0
- package/dist/memory.d.ts +62 -0
- package/dist/memory.d.ts.map +1 -0
- package/dist/memory.js +293 -0
- package/dist/memory.js.map +1 -0
- package/dist/model-bootstrap.d.ts +29 -0
- package/dist/model-bootstrap.d.ts.map +1 -0
- package/dist/model-bootstrap.js +235 -0
- package/dist/model-bootstrap.js.map +1 -0
- package/dist/proxy-main.d.ts +5 -0
- package/dist/proxy-main.d.ts.map +1 -0
- package/dist/proxy-main.js +10 -0
- package/dist/proxy-main.js.map +1 -0
- package/dist/proxy.d.ts +9 -0
- package/dist/proxy.d.ts.map +1 -0
- package/dist/proxy.js +309 -0
- package/dist/proxy.js.map +1 -0
- package/dist/run-runtime.d.ts +34 -0
- package/dist/run-runtime.d.ts.map +1 -0
- package/dist/run-runtime.js +170 -0
- package/dist/run-runtime.js.map +1 -0
- package/dist/runtime-context.d.ts +12 -0
- package/dist/runtime-context.d.ts.map +1 -0
- package/dist/runtime-context.js +39 -0
- package/dist/runtime-context.js.map +1 -0
- package/dist/text-chunking.d.ts +7 -0
- package/dist/text-chunking.d.ts.map +1 -0
- package/dist/text-chunking.js +50 -0
- package/dist/text-chunking.js.map +1 -0
- package/package.json +46 -0
package/dist/i18n.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.js","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"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"}
|
package/dist/memory.d.ts
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Melu 记忆存储与检索。
|
|
3
|
+
*
|
|
4
|
+
* 单个 .memory 文件 = 一个 SQLite 数据库。
|
|
5
|
+
* 支持 FTS5 全文搜索 + 向量余弦相似度搜索。
|
|
6
|
+
*/
|
|
7
|
+
export interface Memory {
|
|
8
|
+
id: string;
|
|
9
|
+
content: string;
|
|
10
|
+
summary: string;
|
|
11
|
+
category: string;
|
|
12
|
+
subject: string;
|
|
13
|
+
confidence: number;
|
|
14
|
+
isActive: number;
|
|
15
|
+
supersedes: string | null;
|
|
16
|
+
vector: Float32Array | null;
|
|
17
|
+
createdAt: string;
|
|
18
|
+
updatedAt: string;
|
|
19
|
+
lastAccessed: string;
|
|
20
|
+
accessCount: number;
|
|
21
|
+
sourceConversation: string | null;
|
|
22
|
+
extra: Record<string, unknown> | null;
|
|
23
|
+
}
|
|
24
|
+
export declare class MemoryStore {
|
|
25
|
+
private dbPath;
|
|
26
|
+
private db;
|
|
27
|
+
constructor(dbPath: string);
|
|
28
|
+
open(): void;
|
|
29
|
+
close(): void;
|
|
30
|
+
private get conn();
|
|
31
|
+
add(opts: {
|
|
32
|
+
content: string;
|
|
33
|
+
summary: string;
|
|
34
|
+
category?: string;
|
|
35
|
+
subject?: string;
|
|
36
|
+
confidence?: number;
|
|
37
|
+
vector?: Float32Array | null;
|
|
38
|
+
supersedes?: string | null;
|
|
39
|
+
sourceConversation?: string | null;
|
|
40
|
+
extra?: Record<string, unknown> | null;
|
|
41
|
+
}): string;
|
|
42
|
+
delete(memId: string): boolean;
|
|
43
|
+
clear(): number;
|
|
44
|
+
countActive(): number;
|
|
45
|
+
getById(memId: string): Memory | null;
|
|
46
|
+
listAll(includeInactive?: boolean): Memory[];
|
|
47
|
+
retrieve(queryVector?: Float32Array | null): Memory[];
|
|
48
|
+
findSimilar(queryVector: Float32Array, threshold?: number): Array<{
|
|
49
|
+
memory: Memory;
|
|
50
|
+
similarity: number;
|
|
51
|
+
}>;
|
|
52
|
+
setMeta(key: string, value: string): void;
|
|
53
|
+
getMeta(key: string): string | null;
|
|
54
|
+
exportTo(dest: string): Promise<void>;
|
|
55
|
+
importFrom(src: string): number;
|
|
56
|
+
private getAllActive;
|
|
57
|
+
private getByCategory;
|
|
58
|
+
private vectorSearch;
|
|
59
|
+
private touch;
|
|
60
|
+
}
|
|
61
|
+
export declare function formatMemoriesForInjection(memories: Memory[]): string;
|
|
62
|
+
//# sourceMappingURL=memory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA6CH,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACvC;AAwGD,qBAAa,WAAW;IAGV,OAAO,CAAC,MAAM;IAF1B,OAAO,CAAC,EAAE,CAAkC;gBAExB,MAAM,EAAE,MAAM;IAElC,IAAI,IAAI,IAAI;IAOZ,KAAK,IAAI,IAAI;IAKb,OAAO,KAAK,IAAI,GAGf;IAID,GAAG,CAAC,IAAI,EAAE;QACR,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;QAC7B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACnC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;KACxC,GAAG,MAAM;IAiCV,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAK9B,KAAK,IAAI,MAAM;IAOf,WAAW,IAAI,MAAM;IAOrB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAOrC,OAAO,CAAC,eAAe,UAAQ,GAAG,MAAM,EAAE;IAU1C,QAAQ,CAAC,WAAW,CAAC,EAAE,YAAY,GAAG,IAAI,GAAG,MAAM,EAAE;IAYrD,WAAW,CAAC,WAAW,EAAE,YAAY,EAAE,SAAS,SAAM,GAAG,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAoBtG,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAMzC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAS7B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK3C,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAkC/B,OAAO,CAAC,YAAY;IAcpB,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,YAAY;IAiBpB,OAAO,CAAC,KAAK;CASd;AAID,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,CAyBrE"}
|
package/dist/memory.js
ADDED
|
@@ -0,0 +1,293 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Melu 记忆存储与检索。
|
|
3
|
+
*
|
|
4
|
+
* 单个 .memory 文件 = 一个 SQLite 数据库。
|
|
5
|
+
* 支持 FTS5 全文搜索 + 向量余弦相似度搜索。
|
|
6
|
+
*/
|
|
7
|
+
import Database from "better-sqlite3";
|
|
8
|
+
import { v4 as uuidv4 } from "uuid";
|
|
9
|
+
import { normalizeWhitespace, truncateCharacters } from "./text-chunking.js";
|
|
10
|
+
// ── 时间工具 ─────────────────────────────────────────────────────────
|
|
11
|
+
/** 本地时区时间,精确到分钟,ISO8601 带时区偏移 */
|
|
12
|
+
function nowLocal() {
|
|
13
|
+
const now = new Date();
|
|
14
|
+
const offset = -now.getTimezoneOffset();
|
|
15
|
+
const sign = offset >= 0 ? "+" : "-";
|
|
16
|
+
const hh = String(Math.floor(Math.abs(offset) / 60)).padStart(2, "0");
|
|
17
|
+
const mm = String(Math.abs(offset) % 60).padStart(2, "0");
|
|
18
|
+
const iso = now.toISOString().slice(0, 16); // YYYY-MM-DDTHH:MM
|
|
19
|
+
return `${iso}${sign}${hh}:${mm}`;
|
|
20
|
+
}
|
|
21
|
+
// ── 向量工具 ─────────────────────────────────────────────────────────
|
|
22
|
+
function vectorToBlob(vec) {
|
|
23
|
+
return Buffer.from(vec.buffer, vec.byteOffset, vec.byteLength);
|
|
24
|
+
}
|
|
25
|
+
function blobToVector(blob) {
|
|
26
|
+
const ab = new ArrayBuffer(blob.length);
|
|
27
|
+
const view = new Uint8Array(ab);
|
|
28
|
+
for (let i = 0; i < blob.length; i++)
|
|
29
|
+
view[i] = blob[i];
|
|
30
|
+
return new Float32Array(ab);
|
|
31
|
+
}
|
|
32
|
+
function cosineSimilarity(a, b) {
|
|
33
|
+
let dot = 0, normA = 0, normB = 0;
|
|
34
|
+
for (let i = 0; i < a.length; i++) {
|
|
35
|
+
dot += a[i] * b[i];
|
|
36
|
+
normA += a[i] * a[i];
|
|
37
|
+
normB += b[i] * b[i];
|
|
38
|
+
}
|
|
39
|
+
const denom = Math.sqrt(normA) * Math.sqrt(normB);
|
|
40
|
+
return denom > 1e-10 ? dot / denom : 0;
|
|
41
|
+
}
|
|
42
|
+
function rowToMemory(row) {
|
|
43
|
+
return {
|
|
44
|
+
id: row.id,
|
|
45
|
+
content: row.content,
|
|
46
|
+
summary: row.summary,
|
|
47
|
+
category: row.category,
|
|
48
|
+
subject: row.subject,
|
|
49
|
+
confidence: row.confidence,
|
|
50
|
+
isActive: row.is_active,
|
|
51
|
+
supersedes: row.supersedes,
|
|
52
|
+
vector: row.vector ? blobToVector(row.vector) : null,
|
|
53
|
+
createdAt: row.created_at,
|
|
54
|
+
updatedAt: row.updated_at,
|
|
55
|
+
lastAccessed: row.last_accessed,
|
|
56
|
+
accessCount: row.access_count,
|
|
57
|
+
sourceConversation: row.source_conversation,
|
|
58
|
+
extra: row.extra ? JSON.parse(row.extra) : null,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
// ── Schema ───────────────────────────────────────────────────────────
|
|
62
|
+
const SCHEMA = `
|
|
63
|
+
CREATE TABLE IF NOT EXISTS memories (
|
|
64
|
+
id TEXT PRIMARY KEY,
|
|
65
|
+
content TEXT NOT NULL,
|
|
66
|
+
summary TEXT NOT NULL,
|
|
67
|
+
category TEXT NOT NULL DEFAULT 'event',
|
|
68
|
+
subject TEXT NOT NULL DEFAULT '',
|
|
69
|
+
confidence REAL NOT NULL DEFAULT 1.0,
|
|
70
|
+
is_active INTEGER NOT NULL DEFAULT 1,
|
|
71
|
+
supersedes TEXT,
|
|
72
|
+
vector BLOB,
|
|
73
|
+
created_at TEXT NOT NULL,
|
|
74
|
+
updated_at TEXT NOT NULL,
|
|
75
|
+
last_accessed TEXT NOT NULL,
|
|
76
|
+
access_count INTEGER NOT NULL DEFAULT 0,
|
|
77
|
+
source_conversation TEXT,
|
|
78
|
+
extra TEXT
|
|
79
|
+
);
|
|
80
|
+
|
|
81
|
+
CREATE INDEX IF NOT EXISTS idx_memories_active ON memories(is_active);
|
|
82
|
+
CREATE INDEX IF NOT EXISTS idx_memories_category ON memories(category);
|
|
83
|
+
CREATE INDEX IF NOT EXISTS idx_memories_subject ON memories(subject);
|
|
84
|
+
|
|
85
|
+
CREATE VIRTUAL TABLE IF NOT EXISTS memories_fts USING fts5(
|
|
86
|
+
summary,
|
|
87
|
+
content,
|
|
88
|
+
content='memories',
|
|
89
|
+
content_rowid='rowid'
|
|
90
|
+
);
|
|
91
|
+
|
|
92
|
+
CREATE TRIGGER IF NOT EXISTS memories_ai AFTER INSERT ON memories BEGIN
|
|
93
|
+
INSERT INTO memories_fts(rowid, summary, content)
|
|
94
|
+
VALUES (new.rowid, new.summary, new.content);
|
|
95
|
+
END;
|
|
96
|
+
CREATE TRIGGER IF NOT EXISTS memories_ad AFTER DELETE ON memories BEGIN
|
|
97
|
+
INSERT INTO memories_fts(memories_fts, rowid, summary, content)
|
|
98
|
+
VALUES ('delete', old.rowid, old.summary, old.content);
|
|
99
|
+
END;
|
|
100
|
+
CREATE TRIGGER IF NOT EXISTS memories_au AFTER UPDATE ON memories BEGIN
|
|
101
|
+
INSERT INTO memories_fts(memories_fts, rowid, summary, content)
|
|
102
|
+
VALUES ('delete', old.rowid, old.summary, old.content);
|
|
103
|
+
INSERT INTO memories_fts(rowid, summary, content)
|
|
104
|
+
VALUES (new.rowid, new.summary, new.content);
|
|
105
|
+
END;
|
|
106
|
+
|
|
107
|
+
CREATE TABLE IF NOT EXISTS meta (
|
|
108
|
+
key TEXT PRIMARY KEY,
|
|
109
|
+
value TEXT
|
|
110
|
+
);
|
|
111
|
+
`;
|
|
112
|
+
const SELECT_COLS = "id, content, summary, category, subject, confidence, is_active, " +
|
|
113
|
+
"supersedes, vector, created_at, updated_at, last_accessed, " +
|
|
114
|
+
"access_count, source_conversation, extra";
|
|
115
|
+
const MAX_INJECTION_MEMORIES = 50;
|
|
116
|
+
const MAX_INJECTION_CHARS = 8000;
|
|
117
|
+
const RETRIEVAL_SIMILARITY_THRESHOLD = 0.45;
|
|
118
|
+
// ── MemoryStore ──────────────────────────────────────────────────────
|
|
119
|
+
export class MemoryStore {
|
|
120
|
+
dbPath;
|
|
121
|
+
db = null;
|
|
122
|
+
constructor(dbPath) {
|
|
123
|
+
this.dbPath = dbPath;
|
|
124
|
+
}
|
|
125
|
+
open() {
|
|
126
|
+
this.db = new Database(this.dbPath);
|
|
127
|
+
this.db.pragma("journal_mode = WAL");
|
|
128
|
+
this.db.pragma("foreign_keys = ON");
|
|
129
|
+
this.db.exec(SCHEMA);
|
|
130
|
+
}
|
|
131
|
+
close() {
|
|
132
|
+
this.db?.close();
|
|
133
|
+
this.db = null;
|
|
134
|
+
}
|
|
135
|
+
get conn() {
|
|
136
|
+
if (!this.db)
|
|
137
|
+
throw new Error("MemoryStore not opened");
|
|
138
|
+
return this.db;
|
|
139
|
+
}
|
|
140
|
+
// ── 写入 ─────────────────────────────────────────────────────
|
|
141
|
+
add(opts) {
|
|
142
|
+
const now = nowLocal();
|
|
143
|
+
const id = uuidv4();
|
|
144
|
+
this.conn.prepare(`INSERT INTO memories
|
|
145
|
+
(id, content, summary, category, subject, confidence,
|
|
146
|
+
is_active, supersedes, vector, created_at, updated_at,
|
|
147
|
+
last_accessed, access_count, source_conversation, extra)
|
|
148
|
+
VALUES (?,?,?,?,?,?,1,?,?,?,?,?,0,?,?)`).run(id, opts.content, opts.summary, opts.category ?? "event", opts.subject ?? "", opts.confidence ?? 1.0, opts.supersedes ?? null, opts.vector ? vectorToBlob(opts.vector) : null, now, now, now, opts.sourceConversation ?? null, opts.extra ? JSON.stringify(opts.extra) : null);
|
|
149
|
+
if (opts.supersedes) {
|
|
150
|
+
this.conn.prepare("UPDATE memories SET is_active=0, updated_at=? WHERE id=?").run(now, opts.supersedes);
|
|
151
|
+
}
|
|
152
|
+
return id;
|
|
153
|
+
}
|
|
154
|
+
delete(memId) {
|
|
155
|
+
const result = this.conn.prepare("DELETE FROM memories WHERE id=?").run(memId);
|
|
156
|
+
return result.changes > 0;
|
|
157
|
+
}
|
|
158
|
+
clear() {
|
|
159
|
+
const result = this.conn.prepare("DELETE FROM memories").run();
|
|
160
|
+
return result.changes;
|
|
161
|
+
}
|
|
162
|
+
// ── 读取 ─────────────────────────────────────────────────────
|
|
163
|
+
countActive() {
|
|
164
|
+
const row = this.conn.prepare("SELECT COUNT(*) as cnt FROM memories WHERE is_active=1").get();
|
|
165
|
+
return row?.cnt ?? 0;
|
|
166
|
+
}
|
|
167
|
+
getById(memId) {
|
|
168
|
+
const row = this.conn.prepare(`SELECT ${SELECT_COLS} FROM memories WHERE id=?`).get(memId);
|
|
169
|
+
return row ? rowToMemory(row) : null;
|
|
170
|
+
}
|
|
171
|
+
listAll(includeInactive = false) {
|
|
172
|
+
const where = includeInactive ? "" : "WHERE is_active=1";
|
|
173
|
+
const rows = this.conn.prepare(`SELECT ${SELECT_COLS} FROM memories ${where} ORDER BY created_at DESC`).all();
|
|
174
|
+
return rows.map(rowToMemory);
|
|
175
|
+
}
|
|
176
|
+
// ── 检索 ─────────────────────────────────────────────────────
|
|
177
|
+
retrieve(queryVector) {
|
|
178
|
+
const memories = queryVector
|
|
179
|
+
? this.vectorSearch(queryVector, MAX_INJECTION_MEMORIES, RETRIEVAL_SIMILARITY_THRESHOLD)
|
|
180
|
+
: this.getAllActive().slice(0, MAX_INJECTION_MEMORIES);
|
|
181
|
+
this.touch(memories);
|
|
182
|
+
return memories;
|
|
183
|
+
}
|
|
184
|
+
findSimilar(queryVector, threshold = 0.7) {
|
|
185
|
+
const rows = this.conn.prepare(`SELECT ${SELECT_COLS} FROM memories WHERE is_active=1 AND vector IS NOT NULL`).all();
|
|
186
|
+
const results = [];
|
|
187
|
+
for (const r of rows) {
|
|
188
|
+
const m = rowToMemory(r);
|
|
189
|
+
if (!m.vector)
|
|
190
|
+
continue;
|
|
191
|
+
const sim = cosineSimilarity(queryVector, m.vector);
|
|
192
|
+
if (sim >= threshold) {
|
|
193
|
+
results.push({ memory: m, similarity: sim });
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
results.sort((a, b) => b.similarity - a.similarity);
|
|
197
|
+
return results;
|
|
198
|
+
}
|
|
199
|
+
// ── 元信息 ────────────────────────────────────────────────────
|
|
200
|
+
setMeta(key, value) {
|
|
201
|
+
this.conn.prepare("INSERT OR REPLACE INTO meta (key, value) VALUES (?, ?)").run(key, value);
|
|
202
|
+
}
|
|
203
|
+
getMeta(key) {
|
|
204
|
+
const row = this.conn.prepare("SELECT value FROM meta WHERE key=?").get(key);
|
|
205
|
+
return row?.value ?? null;
|
|
206
|
+
}
|
|
207
|
+
// ── 导入导出 ──────────────────────────────────────────────────
|
|
208
|
+
async exportTo(dest) {
|
|
209
|
+
this.conn.pragma("wal_checkpoint(TRUNCATE)");
|
|
210
|
+
await this.conn.backup(dest);
|
|
211
|
+
}
|
|
212
|
+
importFrom(src) {
|
|
213
|
+
const srcDb = new Database(src, { readonly: true });
|
|
214
|
+
const rows = srcDb.prepare(`SELECT ${SELECT_COLS} FROM memories WHERE is_active=1`).all();
|
|
215
|
+
srcDb.close();
|
|
216
|
+
let count = 0;
|
|
217
|
+
for (const r of rows) {
|
|
218
|
+
const existing = this.getById(r.id);
|
|
219
|
+
if (!existing) {
|
|
220
|
+
const m = rowToMemory(r);
|
|
221
|
+
this.conn.prepare(`INSERT INTO memories
|
|
222
|
+
(id, content, summary, category, subject, confidence,
|
|
223
|
+
is_active, supersedes, vector, created_at, updated_at,
|
|
224
|
+
last_accessed, access_count, source_conversation, extra)
|
|
225
|
+
VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)`).run(m.id, m.content, m.summary, m.category, m.subject, m.confidence, m.isActive, m.supersedes, m.vector ? vectorToBlob(m.vector) : null, m.createdAt, m.updatedAt, m.lastAccessed, m.accessCount, m.sourceConversation, m.extra ? JSON.stringify(m.extra) : null);
|
|
226
|
+
count++;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
return count;
|
|
230
|
+
}
|
|
231
|
+
// ── 私有方法 ──────────────────────────────────────────────────
|
|
232
|
+
getAllActive() {
|
|
233
|
+
const rows = this.conn.prepare(`SELECT ${SELECT_COLS}
|
|
234
|
+
FROM memories
|
|
235
|
+
WHERE is_active=1
|
|
236
|
+
ORDER BY
|
|
237
|
+
CASE WHEN category='profile' THEN 0 ELSE 1 END,
|
|
238
|
+
access_count DESC,
|
|
239
|
+
last_accessed DESC,
|
|
240
|
+
created_at DESC`).all();
|
|
241
|
+
return rows.map(rowToMemory);
|
|
242
|
+
}
|
|
243
|
+
getByCategory(category) {
|
|
244
|
+
const rows = this.conn.prepare(`SELECT ${SELECT_COLS} FROM memories WHERE is_active=1 AND category=?`).all(category);
|
|
245
|
+
return rows.map(rowToMemory);
|
|
246
|
+
}
|
|
247
|
+
vectorSearch(queryVector, topK, threshold = 0) {
|
|
248
|
+
const rows = this.conn.prepare(`SELECT ${SELECT_COLS} FROM memories WHERE is_active=1 AND vector IS NOT NULL`).all();
|
|
249
|
+
const scored = [];
|
|
250
|
+
for (const r of rows) {
|
|
251
|
+
const m = rowToMemory(r);
|
|
252
|
+
if (!m.vector)
|
|
253
|
+
continue;
|
|
254
|
+
const sim = cosineSimilarity(queryVector, m.vector);
|
|
255
|
+
if (sim < threshold)
|
|
256
|
+
continue;
|
|
257
|
+
scored.push({ memory: m, sim });
|
|
258
|
+
}
|
|
259
|
+
scored.sort((a, b) => b.sim - a.sim);
|
|
260
|
+
return scored.slice(0, topK).map((s) => s.memory);
|
|
261
|
+
}
|
|
262
|
+
touch(memories) {
|
|
263
|
+
const now = nowLocal();
|
|
264
|
+
const stmt = this.conn.prepare("UPDATE memories SET last_accessed=?, access_count=access_count+1 WHERE id=?");
|
|
265
|
+
for (const m of memories) {
|
|
266
|
+
stmt.run(now, m.id);
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
// ── 格式化 ───────────────────────────────────────────────────────────
|
|
271
|
+
export function formatMemoriesForInjection(memories) {
|
|
272
|
+
if (memories.length === 0)
|
|
273
|
+
return "";
|
|
274
|
+
const lines = ["\n\n[User Memory - Provided by Melu]"];
|
|
275
|
+
let usedChars = lines[0].length;
|
|
276
|
+
for (const m of memories.slice(0, MAX_INJECTION_MEMORIES)) {
|
|
277
|
+
const content = truncateCharacters(normalizeWhitespace(m.content || m.summary), 500);
|
|
278
|
+
if (content === "")
|
|
279
|
+
continue;
|
|
280
|
+
const timestamp = (m.updatedAt || m.createdAt || "").slice(0, 16);
|
|
281
|
+
const line = `- ${timestamp} user says: ${content}`;
|
|
282
|
+
if (usedChars + line.length > MAX_INJECTION_CHARS) {
|
|
283
|
+
break;
|
|
284
|
+
}
|
|
285
|
+
lines.push(line);
|
|
286
|
+
usedChars += line.length + 1;
|
|
287
|
+
}
|
|
288
|
+
if (lines.length === 1) {
|
|
289
|
+
return "";
|
|
290
|
+
}
|
|
291
|
+
return lines.join("\n");
|
|
292
|
+
}
|
|
293
|
+
//# sourceMappingURL=memory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../src/memory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { type MeluConfig, type MirrorName, type UiLanguage } from "./config.js";
|
|
2
|
+
export declare function getMirrorLabel(mirror: MirrorName | null, language?: UiLanguage | null): string;
|
|
3
|
+
export declare function getConfiguredMirror(config: MeluConfig, preferredMirror?: string | null): MirrorName | null;
|
|
4
|
+
export declare function getConfiguredUiLanguage(config: MeluConfig, preferredLanguage?: string | UiLanguage | null): UiLanguage | null;
|
|
5
|
+
export declare function promptForUiLanguageSelection(languageForPrompts?: UiLanguage): Promise<UiLanguage>;
|
|
6
|
+
export declare function promptForMirrorSelection(language?: UiLanguage): Promise<MirrorName>;
|
|
7
|
+
export declare function ensureUiLanguageConfigured(config: MeluConfig, options?: {
|
|
8
|
+
interactive: boolean;
|
|
9
|
+
preferredLanguage?: string | UiLanguage | null;
|
|
10
|
+
save?: boolean;
|
|
11
|
+
}): Promise<MeluConfig>;
|
|
12
|
+
export declare function ensureMirrorConfigured(config: MeluConfig, options?: {
|
|
13
|
+
interactive: boolean;
|
|
14
|
+
preferredMirror?: string | null;
|
|
15
|
+
uiLanguage?: UiLanguage | null;
|
|
16
|
+
save?: boolean;
|
|
17
|
+
}): Promise<MeluConfig>;
|
|
18
|
+
export declare function ensureEmbeddingRuntimeAvailable(language?: UiLanguage | null): Promise<void>;
|
|
19
|
+
export declare function ensureEmbeddingModelReady(options?: {
|
|
20
|
+
config?: MeluConfig;
|
|
21
|
+
interactive?: boolean;
|
|
22
|
+
preferredLanguage?: string | UiLanguage | null;
|
|
23
|
+
preferredMirror?: string | null;
|
|
24
|
+
showProgress?: boolean;
|
|
25
|
+
}): Promise<{
|
|
26
|
+
config: MeluConfig;
|
|
27
|
+
modelPath: string;
|
|
28
|
+
}>;
|
|
29
|
+
//# sourceMappingURL=model-bootstrap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-bootstrap.d.ts","sourceRoot":"","sources":["../src/model-bootstrap.ts"],"names":[],"mappings":"AASA,OAAO,EAWL,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,UAAU,EAChB,MAAM,aAAa,CAAC;AA8BrB,wBAAgB,cAAc,CAC5B,MAAM,EAAE,UAAU,GAAG,IAAI,EACzB,QAAQ,GAAE,UAAU,GAAG,IAAW,GACjC,MAAM,CAGR;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,UAAU,EAClB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,GAC9B,UAAU,GAAG,IAAI,CAGnB;AAgBD,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,UAAU,EAClB,iBAAiB,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,GAC7C,UAAU,GAAG,IAAI,CAInB;AAED,wBAAsB,4BAA4B,CAChD,kBAAkB,GAAE,UAAiB,GACpC,OAAO,CAAC,UAAU,CAAC,CAkBrB;AAED,wBAAsB,wBAAwB,CAC5C,QAAQ,GAAE,UAAiB,GAC1B,OAAO,CAAC,UAAU,CAAC,CAqBrB;AAED,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,UAAU,EAClB,OAAO,GAAE;IACP,WAAW,EAAE,OAAO,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC;IAC/C,IAAI,CAAC,EAAE,OAAO,CAAC;CACS,GACzB,OAAO,CAAC,UAAU,CAAC,CAqBrB;AAED,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,UAAU,EAClB,OAAO,GAAE;IACP,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC/B,IAAI,CAAC,EAAE,OAAO,CAAC;CACS,GACzB,OAAO,CAAC,UAAU,CAAC,CAmBrB;AAED,wBAAsB,+BAA+B,CAAC,QAAQ,GAAE,UAAU,GAAG,IAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAkBvG;AAED,wBAAsB,yBAAyB,CAC7C,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC;IAC/C,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,YAAY,CAAC,EAAE,OAAO,CAAC;CACnB,GACL,OAAO,CAAC;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAuCpD"}
|