mcp-super-memory 0.8.0 → 0.10.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/README.md +24 -5
- package/dist/embedding.d.ts +8 -0
- package/dist/embedding.d.ts.map +1 -1
- package/dist/embedding.js +67 -7
- package/dist/embedding.js.map +1 -1
- package/dist/memoryGraph.d.ts +2 -1
- package/dist/memoryGraph.d.ts.map +1 -1
- package/dist/memoryGraph.js +133 -32
- package/dist/memoryGraph.js.map +1 -1
- package/dist/modelDownload.d.ts +17 -0
- package/dist/modelDownload.d.ts.map +1 -0
- package/dist/modelDownload.js +75 -0
- package/dist/modelDownload.js.map +1 -0
- package/dist/reranker.d.ts +9 -0
- package/dist/reranker.d.ts.map +1 -0
- package/dist/reranker.js +87 -0
- package/dist/reranker.js.map +1 -0
- package/dist/server.js +5 -3
- package/dist/server.js.map +1 -1
- package/dist/types.d.ts +3 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -66,6 +66,9 @@ Search `"Newton"` → matches `[Newton]`, `[apple]` keys (1-hop) → follows sha
|
|
|
66
66
|
| Hybrid retrieval (BM25 + dense + RRF) | ✅ | ❌ | partial | ❌ |
|
|
67
67
|
| Dual-path dense recall | ✅ key + content | ❌ | ❌ | ❌ |
|
|
68
68
|
| Hebbian link learning | ✅ | ❌ | ❌ | ❌ |
|
|
69
|
+
| Cross-encoder rerank | ✅ opt-in | ❌ | partial | ❌ |
|
|
70
|
+
| Depth-floored recall (`min_depth`) | ✅ | ❌ | ❌ | ❌ |
|
|
71
|
+
| Auto-download models (bge-m3 / reranker) | ✅ | n/a | n/a | n/a |
|
|
69
72
|
|
|
70
73
|
### Depth System
|
|
71
74
|
|
|
@@ -217,7 +220,7 @@ The memory system exposes 10 tools via MCP:
|
|
|
217
220
|
|
|
218
221
|
| Tool | Description |
|
|
219
222
|
| --- | --- |
|
|
220
|
-
| `recall(query, top_k, namespace?, expand?, hops?, min_rel_score?, min_score?, min_z?)` | Hybrid search (BM25 + dense key/content, RRF-fused) with associative traversal. `hops` sets depth (default 2; 1=direct, up to 5 for chained drill-down — one call replaces manual `related()` chaining). `min_rel_score` (0–0.9, default 0) drops results below that fraction of the top score — set ~0.05 with deep `hops` to trim hub-key noise. `min_score` (0–1, overrides `SUPER_MEMORY_MIN_SCORE`
|
|
223
|
+
| `recall(query, top_k, namespace?, expand?, hops?, min_rel_score?, min_score?, min_z?, min_key_gate?, min_depth?)` | Hybrid search (BM25 + dense key/content, RRF-fused) with associative traversal. `hops` sets depth (default 2; 1=direct, up to 5 for chained drill-down — one call replaces manual `related()` chaining). For complex/multi-fact questions, **decompose into focused sub-queries and call recall per sub-query, then merge** (a single broad query blurs concepts). `min_rel_score` (0–0.9, default 0) drops results below that fraction of the top score — set ~0.05 with deep `hops` to trim hub-key noise. `min_score` (0–1, overrides `SUPER_MEMORY_MIN_SCORE`) is an absolute cosine floor; `0` disables. `min_z` (≥0, overrides `SUPER_MEMORY_GATE_Z`) is the distribution gate threshold; `0` disables. **`min_depth` (0–1, default 0)** returns only well-established memories whose depth ≥ floor — surface frequently-confirmed/important facts only. Returns `[]` when nothing clears the active gates. Results include a `contradicts` array. |
|
|
221
224
|
| `remember(content, keys, key_types?, namespace?, ttl_seconds?, related_to?)` | Save memory with key concepts and optional type annotations |
|
|
222
225
|
| `correct(memory_id, content, keys?, key_types?, related_to?)` | Versioned update — old memory preserved but weakened |
|
|
223
226
|
| `related(memory_id)` | Find memories sharing keys (associative exploration) |
|
|
@@ -298,21 +301,37 @@ EMBEDDING_BACKEND=local
|
|
|
298
301
|
LOCAL_EMBEDDING_MODEL=fast-multilingual-e5-large # default; best fit for Korean/multilingual keys
|
|
299
302
|
```
|
|
300
303
|
|
|
301
|
-
**BGE-M3 (
|
|
304
|
+
**BGE-M3 (recommended, multilingual) — auto-downloaded:** set `LOCAL_EMBEDDING_MODEL=bge-m3` (aliases: `bgem3`, `baai/bge-m3`, `fast-bge-m3`). On first use the model is **fetched automatically if missing** — quantized ONNX (~570MB, from `onnx-community/bge-m3-ONNX`) plus the tokenizer/config (from `BAAI/bge-m3`) — and cached under `~/.super-memory/models/bge-m3`. No manual download needed:
|
|
302
305
|
|
|
303
306
|
```
|
|
304
307
|
EMBEDDING_BACKEND=local
|
|
305
308
|
LOCAL_EMBEDDING_MODEL=bge-m3
|
|
306
|
-
|
|
307
|
-
|
|
309
|
+
# optional — point at an existing model dir to skip the download (backward compatible):
|
|
310
|
+
# LOCAL_EMBEDDING_MODEL_PATH=/absolute/path/to/model-dir # dir with model.onnx + tokenizer files
|
|
311
|
+
# LOCAL_EMBEDDING_MODEL_FILE=model.onnx # optional; default is model.onnx
|
|
308
312
|
```
|
|
309
313
|
|
|
314
|
+
> First run downloads ~570MB once, then reuses the cache. If `LOCAL_EMBEDDING_MODEL_PATH` already holds the model it is used **as-is with no download** (a partial dir is self-healed — only missing files are fetched). Online-API backends (OpenAI) and fastembed built-ins are unaffected.
|
|
315
|
+
|
|
316
|
+
**Cross-encoder reranking (optional):** set `SUPER_MEMORY_RERANK=true` to re-score recall's top candidates with `bge-reranker-v2-m3` — a joint query↔memory relevance model that fixes cases where the right memory is retrieved but ranked too low. The model (~570MB, quantized) **auto-downloads on first use** and caches under `~/.super-memory/models/reranker` (its tokenizer is shared with bge-m3). It is a model, not an LLM, so it runs in-process.
|
|
317
|
+
|
|
318
|
+
```
|
|
319
|
+
SUPER_MEMORY_RERANK=true
|
|
320
|
+
# optional: SUPER_MEMORY_RERANK_MODEL_PATH=/dir SUPER_MEMORY_RERANK_POOL=30 (candidates re-scored)
|
|
321
|
+
```
|
|
322
|
+
|
|
323
|
+
> Off by default. If the model can't load, recall transparently falls back to its fused ranking (never breaks). Most useful for multi-fact / competing-candidate queries; single-fact recall is already strong without it. (Note: query *decomposition* — splitting a complex question into sub-queries — is the **caller's** job, since that needs LLM reasoning; the reranker is the server-side precision pass.)
|
|
324
|
+
|
|
310
325
|
> **Prefix behavior:** BGE-M3 does **not** use `passage:`/`query:` prefixes — embeddings are passed through as-is. All other local models (e5, BGE-en, MiniLM) continue to use prefixes unchanged.
|
|
311
326
|
|
|
327
|
+
> **Recommended for multilingual / cross-lingual use: `bge-m3`.** On a real 19-memory Korean graph, English natural-language queries against Korean content land the correct memory at rank #1 in **7/7** cases under bge-m3 versus **2/7** under e5 (e5 leans on literal BM25 token overlap, so an English query sharing no tokens with Korean content is buried below noise). bge-m3 also separates found from not-found cleanly via the absolute `min_score` gate (≈96% on the gate fixture), whereas e5 needs the gate disabled entirely. Use e5 only if you cannot supply the bge-m3 ONNX model.
|
|
328
|
+
|
|
312
329
|
If `OPENAI_API_KEY` is not set and `EMBEDDING_BACKEND` is unset, the server automatically uses the local `fastembed` backend.
|
|
313
330
|
For English-only use or lower local resource usage, set `LOCAL_EMBEDDING_MODEL=fast-bge-base-en-v1.5` or `fast-bge-small-en-v1.5`.
|
|
314
331
|
|
|
315
|
-
> **Switching backends is safe.**
|
|
332
|
+
> **Switching backends is safe.** The graph records an embedding **fingerprint** (backend + model id) identifying the vector space its embeddings live in. On startup, if the current backend's fingerprint **or** dimension differs from what is stored, the graph **auto-migrates** — every key and memory is re-embedded with the new backend while content, links, depth, and access history are preserved (a `graph.json.bak.*` backup is written first). The fingerprint matters because two models can share a dimension yet produce incompatible vectors (e.g. `fast-multilingual-e5-large` and `bge-m3` are **both 1024-d**); a dimension check alone would miss that swap and silently corrupt every similarity. Disable with `SUPER_MEMORY_AUTO_MIGRATE=false`. Re-embedding via OpenAI incurs one-time API cost proportional to your memory count.
|
|
333
|
+
>
|
|
334
|
+
> **Migrating a pre-fingerprint (legacy) graph across same-dimension models.** A graph written before fingerprinting has no recorded vector space, so a same-dimension model swap off it cannot be detected automatically. Set `SUPER_MEMORY_FORCE_REEMBED=true` for **one** startup to re-embed unconditionally and stamp the fingerprint; remove it afterward (left on, it re-embeds on every start). This is exactly the one-shot needed when moving an existing e5 graph to bge-m3.
|
|
316
335
|
|
|
317
336
|
```bash
|
|
318
337
|
pnpm dev
|
package/dist/embedding.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type Fetcher } from "./modelDownload.js";
|
|
1
2
|
export declare const OPENAI_API_KEY: string;
|
|
2
3
|
export declare const OPENAI_EMBEDDING_MODEL: string;
|
|
3
4
|
export declare const EMBEDDING_BACKEND: string;
|
|
@@ -13,14 +14,21 @@ export interface ThresholdProfile {
|
|
|
13
14
|
minScore: number;
|
|
14
15
|
contradiction: number;
|
|
15
16
|
gateZ: number;
|
|
17
|
+
keyGate: number;
|
|
18
|
+
shortKeyMerge: number;
|
|
16
19
|
}
|
|
17
20
|
export declare const THRESHOLD_PROFILES: Record<string, ThresholdProfile>;
|
|
18
21
|
export declare function familyForModel(modelName: string): "e5" | "bge" | "minilm" | "bgem3" | "unknown";
|
|
19
22
|
export declare function usesE5Prefix(family: string): boolean;
|
|
23
|
+
export declare function embeddingFingerprint(): string;
|
|
20
24
|
export declare function customModelConfig(): {
|
|
21
25
|
dir: string;
|
|
22
26
|
file: string;
|
|
23
27
|
};
|
|
28
|
+
export declare function ensureCustomEmbeddingModel(fetcher?: Fetcher): Promise<{
|
|
29
|
+
dir: string;
|
|
30
|
+
file: string;
|
|
31
|
+
}>;
|
|
24
32
|
export declare function getThresholdProfile(): ThresholdProfile;
|
|
25
33
|
export declare function __setTestEmbedder(fn: (text: string, inputType: EmbeddingInputType) => number[]): void;
|
|
26
34
|
export declare function __clearTestEmbedder(): void;
|
package/dist/embedding.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedding.d.ts","sourceRoot":"","sources":["../src/embedding.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"embedding.d.ts","sourceRoot":"","sources":["../src/embedding.ts"],"names":[],"mappings":"AAMA,OAAO,EAAmD,KAAK,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAEnG,eAAO,MAAM,cAAc,QAAmC,CAAC;AAC/D,eAAO,MAAM,sBAAsB,QAC6B,CAAC;AAGjE,eAAO,MAAM,iBAAiB,QACqB,CAAC;AACpD,eAAO,MAAM,qBAAqB,QACiC,CAAC;AACpE,eAAO,MAAM,yBAAyB,QACkB,CAAC;AAGzD,KAAK,kBAAkB,GAAG,SAAS,GAAG,OAAO,CAAC;AAuE9C,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IAItB,QAAQ,EAAE,MAAM,CAAC;IAIjB,aAAa,EAAE,MAAM,CAAC;IAKtB,KAAK,EAAE,MAAM,CAAC;IAKd,OAAO,EAAE,MAAM,CAAC;IAKhB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CA2C/D,CAAC;AAEF,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,GAChB,IAAI,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAU/C;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAEpD;AAQD,wBAAgB,oBAAoB,IAAI,MAAM,CAM7C;AAED,wBAAgB,iBAAiB,IAAI;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAUjE;AAeD,wBAAsB,0BAA0B,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAmB1G;AA8CD,wBAAgB,mBAAmB,IAAI,gBAAgB,CAiBtD;AAYD,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,kBAAkB,KAAK,MAAM,EAAE,GAC5D,IAAI,CAEN;AAED,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAyDD,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAC1C,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAI1C,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAEtF;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAIvD;AAED,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,SAAS,GAAE,kBAA8B,GACxC,OAAO,CAAC,MAAM,EAAE,CAAC,CAsBnB"}
|
package/dist/embedding.js
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { config } from "dotenv";
|
|
2
2
|
config();
|
|
3
3
|
import OpenAI from "openai";
|
|
4
|
+
import { existsSync, statSync } from "node:fs";
|
|
5
|
+
import { join } from "node:path";
|
|
6
|
+
import { KNOWN_MODELS, defaultModelDir, ensureModelFiles } from "./modelDownload.js";
|
|
4
7
|
export const OPENAI_API_KEY = process.env.OPENAI_API_KEY ?? "";
|
|
5
8
|
export const OPENAI_EMBEDDING_MODEL = process.env.OPENAI_EMBEDDING_MODEL ?? "text-embedding-3-small";
|
|
6
9
|
const _DEFAULT_BACKEND = OPENAI_API_KEY ? "openai" : "local";
|
|
@@ -60,8 +63,8 @@ function resolveLocalModel(modelName, embeddingModel) {
|
|
|
60
63
|
throw new Error(`Unsupported LOCAL_EMBEDDING_MODEL "${modelName}". Supported values: ${supported}`);
|
|
61
64
|
}
|
|
62
65
|
export const THRESHOLD_PROFILES = {
|
|
63
|
-
openai: { keyMerge: 0.85, memoryDedup: 0.9, keyAutoLink: 0.5, keyRecall: 0.28, contentRecall: 0.28, minScore: 0.28, contradiction: 0.85, gateZ: 0 },
|
|
64
|
-
bge: { keyMerge: 0.85, memoryDedup: 0.9, keyAutoLink: 0.6, keyRecall: 0.6, contentRecall: 0.5, minScore: 0.5, contradiction: 0.85, gateZ: 0 },
|
|
66
|
+
openai: { keyMerge: 0.85, memoryDedup: 0.9, keyAutoLink: 0.5, keyRecall: 0.28, contentRecall: 0.28, minScore: 0.28, contradiction: 0.85, gateZ: 0, keyGate: 0, shortKeyMerge: 0 },
|
|
67
|
+
bge: { keyMerge: 0.85, memoryDedup: 0.9, keyAutoLink: 0.6, keyRecall: 0.6, contentRecall: 0.5, minScore: 0.5, contradiction: 0.85, gateZ: 0, keyGate: 0, shortKeyMerge: 0 },
|
|
65
68
|
// e5: query↔key is asymmetric (query/passage prefixes) and separates well —
|
|
66
69
|
// exact-term matches land ~0.886+, distinct words ≤0.82, so keyRecall 0.85
|
|
67
70
|
// catches real key hits. But key↔key and content↔key are both passage-embedded
|
|
@@ -80,9 +83,20 @@ export const THRESHOLD_PROFILES = {
|
|
|
80
83
|
// produces a flat content distribution may be gated out — the gate intentionally overrides
|
|
81
84
|
// weak fuzzy-key anchors on e5; only literal key matches (definiteAnchor, memRawSim>=0.999)
|
|
82
85
|
// are protected from the distribution gate.
|
|
83
|
-
//
|
|
84
|
-
|
|
85
|
-
|
|
86
|
+
// not-found gate DISABLED on e5 by default (gateZ 0, keyGate 0). Empirically, no
|
|
87
|
+
// similarity heuristic reliably separates found/not-found on e5: held-out validation
|
|
88
|
+
// showed both the content-distribution gate AND the key-proximity gate overfit
|
|
89
|
+
// (12-query tuning set 100%, but a fresh held-out set only 63%). e5 packs everything
|
|
90
|
+
// into ~0.83–0.92, and person-attribute queries ("동균 나이", "전화번호") are
|
|
91
|
+
// inseparable from real facts that share the subject — a not-found query can score a
|
|
92
|
+
// higher content-z (전화번호 z=4.70) or topContentCos (동균 나이 0.891) than a real
|
|
93
|
+
// match. Since hiding a real memory (false negative) is a worse failure than returning
|
|
94
|
+
// noise, e5 defaults to no gate (0.7.0 behavior: never hides). The gate machinery is
|
|
95
|
+
// env-opt-in (SUPER_MEMORY_GATE_Z / _KEY_GATE) for users who accept the precision/recall
|
|
96
|
+
// tradeoff; for RELIABLE not-found detection use bge-m3, which separates cleanly via the
|
|
97
|
+
// absolute minScore gate (verified found→hit / not-found→[] end-to-end).
|
|
98
|
+
e5: { keyMerge: 0.97, memoryDedup: 0.985, keyAutoLink: 0.93, keyRecall: 0.85, contentRecall: 0.8, minScore: 0.8, contradiction: 0.95, gateZ: 0, keyGate: 0, shortKeyMerge: 0 },
|
|
99
|
+
minilm: { keyMerge: 0.85, memoryDedup: 0.9, keyAutoLink: 0.6, keyRecall: 0.5, contentRecall: 0.45, minScore: 0.45, contradiction: 0.85, gateZ: 0, keyGate: 0, shortKeyMerge: 0 },
|
|
86
100
|
// bge-m3: multilingual, 1024-dim, well-separated (closer to bge than e5).
|
|
87
101
|
// dedup lowered to 0.94 so real duplicates are caught without fragmenting.
|
|
88
102
|
// contradiction 0.80 calibrated against real bge-m3: same-subject conflicting
|
|
@@ -90,7 +104,7 @@ export const THRESHOLD_PROFILES = {
|
|
|
90
104
|
// facts top out ~0.80, so 0.80 separates them. Note a known limit — conflicts
|
|
91
105
|
// differing by a single token ("월요일" vs "금요일") can land ~0.95, above
|
|
92
106
|
// memoryDedup, and are silently superseded rather than flagged. Env-overridable.
|
|
93
|
-
bgem3: { keyMerge: 0.86, memoryDedup: 0.94, keyAutoLink: 0.62, keyRecall: 0.62, contentRecall: 0.55, minScore: 0.55, contradiction: 0.80, gateZ: 0 },
|
|
107
|
+
bgem3: { keyMerge: 0.86, memoryDedup: 0.94, keyAutoLink: 0.62, keyRecall: 0.62, contentRecall: 0.55, minScore: 0.55, contradiction: 0.80, gateZ: 0, keyGate: 0, shortKeyMerge: 0 },
|
|
94
108
|
};
|
|
95
109
|
export function familyForModel(modelName) {
|
|
96
110
|
const normalized = normalizeModelName(modelName);
|
|
@@ -109,6 +123,19 @@ export function familyForModel(modelName) {
|
|
|
109
123
|
export function usesE5Prefix(family) {
|
|
110
124
|
return family === "e5";
|
|
111
125
|
}
|
|
126
|
+
// Identifies the embedding vector space the graph was built in. Two models of the
|
|
127
|
+
// same dimension (e5-large ↔ bge-m3, both 1024-d) produce INCOMPATIBLE vectors, so
|
|
128
|
+
// a dimension check alone cannot detect a backend swap. The graph stores this
|
|
129
|
+
// fingerprint; on load a mismatch triggers a re-embed. Read live from env so a
|
|
130
|
+
// per-process backend change is reflected even though the module-level consts were
|
|
131
|
+
// snapshotted at import. OpenAI variants differ by model name; local by model id.
|
|
132
|
+
export function embeddingFingerprint() {
|
|
133
|
+
const backend = process.env.EMBEDDING_BACKEND ?? _DEFAULT_BACKEND;
|
|
134
|
+
if (backend !== "local") {
|
|
135
|
+
return `openai:${process.env.OPENAI_EMBEDDING_MODEL ?? "text-embedding-3-small"}`;
|
|
136
|
+
}
|
|
137
|
+
return `local:${normalizeModelName(process.env.LOCAL_EMBEDDING_MODEL ?? "fast-multilingual-e5-large")}`;
|
|
138
|
+
}
|
|
112
139
|
export function customModelConfig() {
|
|
113
140
|
const dir = process.env.LOCAL_EMBEDDING_MODEL_PATH ?? "";
|
|
114
141
|
if (!dir.trim()) {
|
|
@@ -118,6 +145,37 @@ export function customModelConfig() {
|
|
|
118
145
|
}
|
|
119
146
|
return { dir, file: process.env.LOCAL_EMBEDDING_MODEL_FILE ?? "model.onnx" };
|
|
120
147
|
}
|
|
148
|
+
function modelFilePresent(dir, file) {
|
|
149
|
+
try {
|
|
150
|
+
return existsSync(join(dir, file)) && statSync(join(dir, file)).size > 0;
|
|
151
|
+
}
|
|
152
|
+
catch {
|
|
153
|
+
return false;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
// Resolve the local CUSTOM model directory, auto-downloading a known model (bge-m3) when
|
|
157
|
+
// its files are missing. Backward compatible: an existing LOCAL_EMBEDDING_MODEL_PATH with
|
|
158
|
+
// the model present is used unchanged with NO download; an unknown custom model with no
|
|
159
|
+
// usable path still throws the original guidance. Only the local backend's CUSTOM path
|
|
160
|
+
// calls this — OpenAI and fastembed built-ins never do.
|
|
161
|
+
export async function ensureCustomEmbeddingModel(fetcher) {
|
|
162
|
+
const fileEnv = process.env.LOCAL_EMBEDDING_MODEL_FILE;
|
|
163
|
+
const file = fileEnv ?? "model.onnx";
|
|
164
|
+
const envPath = (process.env.LOCAL_EMBEDDING_MODEL_PATH ?? "").trim();
|
|
165
|
+
// 1. A custom model FILENAME means the user manages this dir themselves → trust it
|
|
166
|
+
// entirely with no download (preserves the original behavior for bespoke setups).
|
|
167
|
+
if (fileEnv && envPath && modelFilePresent(envPath, file))
|
|
168
|
+
return { dir: envPath, file };
|
|
169
|
+
// 2. A known model (bge-m3) → ensure all files, downloading ONLY the missing ones. A
|
|
170
|
+
// complete dir downloads nothing (backward compatible); a partial/empty one heals.
|
|
171
|
+
if (localModelFamily() === "bgem3") {
|
|
172
|
+
const dir = envPath || defaultModelDir("bge-m3");
|
|
173
|
+
await ensureModelFiles(KNOWN_MODELS["bge-m3"], dir, fetcher);
|
|
174
|
+
return { dir, file: "model.onnx" };
|
|
175
|
+
}
|
|
176
|
+
// 3. Unknown custom model → original path-or-throw guidance.
|
|
177
|
+
return customModelConfig();
|
|
178
|
+
}
|
|
121
179
|
let _warnedUncalibrated = false;
|
|
122
180
|
function localModelFamily() {
|
|
123
181
|
const fam = familyForModel(LOCAL_EMBEDDING_MODEL);
|
|
@@ -173,6 +231,8 @@ export function getThresholdProfile() {
|
|
|
173
231
|
minScore: envThreshold("SUPER_MEMORY_MIN_SCORE") ?? base.minScore,
|
|
174
232
|
contradiction: envThreshold("SUPER_MEMORY_CONTRADICTION") ?? base.contradiction,
|
|
175
233
|
gateZ: envNonNegative("SUPER_MEMORY_GATE_Z") ?? base.gateZ,
|
|
234
|
+
keyGate: envThreshold("SUPER_MEMORY_KEY_GATE") ?? base.keyGate,
|
|
235
|
+
shortKeyMerge: envThreshold("SUPER_MEMORY_SHORT_KEY_MERGE") ?? base.shortKeyMerge,
|
|
176
236
|
};
|
|
177
237
|
}
|
|
178
238
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -197,7 +257,7 @@ async function getLocalModel() {
|
|
|
197
257
|
cacheDir: LOCAL_EMBEDDING_CACHE_DIR,
|
|
198
258
|
};
|
|
199
259
|
if (model === EmbeddingModel.CUSTOM) {
|
|
200
|
-
const { dir, file } =
|
|
260
|
+
const { dir, file } = await ensureCustomEmbeddingModel();
|
|
201
261
|
initOpts.modelAbsoluteDirPath = dir;
|
|
202
262
|
initOpts.modelName = file;
|
|
203
263
|
}
|
package/dist/embedding.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedding.js","sourceRoot":"","sources":["../src/embedding.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"embedding.js","sourceRoot":"","sources":["../src/embedding.ts"],"names":[],"mappings":"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"}
|
package/dist/memoryGraph.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ export declare class MemoryGraph {
|
|
|
10
10
|
private _memToKeys;
|
|
11
11
|
private _supersededBy;
|
|
12
12
|
private _storedDim;
|
|
13
|
+
private _storedFingerprint;
|
|
13
14
|
private _lock;
|
|
14
15
|
private _dirty;
|
|
15
16
|
private _bm25;
|
|
@@ -56,7 +57,7 @@ export declare class MemoryGraph {
|
|
|
56
57
|
namespace?: string | null;
|
|
57
58
|
relatedTo?: string[] | null;
|
|
58
59
|
}): Promise<string>;
|
|
59
|
-
recall(query: string, topK?: number, namespace?: string | null, expand?: boolean, maxHops?: number, minRelScore?: number, minScore?: number, minZ?: number): Promise<object[]>;
|
|
60
|
+
recall(query: string, topK?: number, namespace?: string | null, expand?: boolean, maxHops?: number, minRelScore?: number, minScore?: number, minZ?: number, minKeyGate?: number, minDepth?: number): Promise<object[]>;
|
|
60
61
|
getRelated(memoryId: string): object[];
|
|
61
62
|
delete(memoryId: string): Promise<boolean>;
|
|
62
63
|
listAll(namespace?: string | null): object[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memoryGraph.d.ts","sourceRoot":"","sources":["../src/memoryGraph.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"memoryGraph.d.ts","sourceRoot":"","sources":["../src/memoryGraph.ts"],"names":[],"mappings":"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"}
|