@saihm/shm 0.38.1 → 0.38.2

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 CHANGED
@@ -3,7 +3,7 @@ Business Source License 1.1
3
3
  Parameters
4
4
 
5
5
  Licensor: SAIHM Project
6
- Licensed Work: SHM (Super-Human Memory) 0.38.1
6
+ Licensed Work: SHM (Super-Human Memory) 0.38.2
7
7
  The Licensed Work is (c) 2026 SAIHM Project.
8
8
  Additional Use Grant: You may make production use of the Licensed Work if
9
9
  you hold a paid SAIHM subscription (a PRO, PRO_FAST,
package/README.md CHANGED
@@ -63,6 +63,10 @@ You need Node.js 20.20 or later, a paid SAIHM subscription, and
63
63
  0.13.0 or later. The [developer guide](#developer-guide) below takes you from install to
64
64
  your first ranked answer.
65
65
 
66
+ On Linux x64, the install also downloads a GPU library of about 270 MB that SHM does not
67
+ use. To skip it, for example on a network that blocks the download, install with
68
+ `ONNXRUNTIME_NODE_INSTALL=skip npm install @saihm/shm`.
69
+
66
70
  ## Support SHM
67
71
 
68
72
  If SHM is useful to you, here is how to help it reach more people:
@@ -1 +1 @@
1
- {"version":3,"file":"inbound.d.ts","sourceRoot":"","sources":["../../src/coordination/inbound.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7D,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,SAAS,SAAS,EAAE,CAAC;IACrC,QAAQ,CAAC,UAAU,EAAE,SAAS,SAAS,EAAE,CAAC;IAC1C,QAAQ,CAAC,UAAU,EAAE,SAAS,SAAS,EAAE,CAAC;IAC1C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAID,wBAAgB,MAAM,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,CAE7C;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAa5F;AAED,qBAAa,YAAa,SAAQ,KAAK;gBACzB,OAAO,EAAE,MAAM;CAI5B;AAED,qBAAa,qBAAsB,SAAQ,YAAY;;CAKtD;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,SAAS,EAAE,CAMrE;AAED,MAAM,MAAM,gBAAgB,GACxB;IAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,SAAS,EAAE,CAAA;CAAE,GAChE;IAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,SAAS,EAAE,CAAA;CAAE,CAAC;AAE/F,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,OAAO,GAAG,gBAAgB,CAWlE;AAgCD,wBAAgB,aAAa,CAAC,IAAI,EAAE,SAAS,SAAS,EAAE,EAAE,IAAI,GAAE,cAAmB,GAAG,aAAa,CAuClG"}
1
+ {"version":3,"file":"inbound.d.ts","sourceRoot":"","sources":["../../src/coordination/inbound.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7D,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,SAAS,SAAS,EAAE,CAAC;IACrC,QAAQ,CAAC,UAAU,EAAE,SAAS,SAAS,EAAE,CAAC;IAC1C,QAAQ,CAAC,UAAU,EAAE,SAAS,SAAS,EAAE,CAAC;IAC1C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAID,wBAAgB,MAAM,CAAC,GAAG,EAAE,SAAS,GAAG,MAAM,CAE7C;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAa5F;AAED,qBAAa,YAAa,SAAQ,KAAK;gBACzB,OAAO,EAAE,MAAM;CAI5B;AAED,qBAAa,qBAAsB,SAAQ,YAAY;;CAKtD;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,SAAS,EAAE,CAMrE;AAED,MAAM,MAAM,gBAAgB,GACxB;IAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,SAAS,EAAE,CAAA;CAAE,GAChE;IAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,SAAS,EAAE,CAAA;CAAE,CAAC;AAE/F,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,OAAO,GAAG,gBAAgB,CAWlE;AAmCD,wBAAgB,aAAa,CAAC,IAAI,EAAE,SAAS,SAAS,EAAE,EAAE,IAAI,GAAE,cAAmB,GAAG,aAAa,CAuClG"}
@@ -66,20 +66,23 @@ function rowsOf(r) {
66
66
  const rows = r["shared"];
67
67
  if (!Array.isArray(rows))
68
68
  throw new ListingError("not a share listing: `shared` is not an array");
69
- return rows.map((row, i) => {
69
+ const out = [];
70
+ for (let i = 0; i < rows.length; i++) {
71
+ const row = rows[i];
70
72
  const o = typeof row === "object" && row !== null ? row : undefined;
71
73
  const sharer = o?.["sharer"];
72
74
  const cellId = o?.["cellId"];
73
- if (o === undefined || typeof sharer !== "string" || typeof cellId !== "string") {
74
- throw new ListingError(`share listing row ${i} has no string sharer and cellId`);
75
+ if (o === undefined || typeof sharer !== "string" || typeof cellId !== "string" || sharer === "" || cellId === "") {
76
+ throw new ListingError(`share listing row ${i} has no non-empty string sharer and cellId`);
75
77
  }
76
- return {
78
+ out.push({
77
79
  sharer,
78
80
  cellId,
79
81
  ...(typeof o["scope"] === "string" ? { scope: o["scope"] } : {}),
80
82
  ...(typeof o["verified"] === "boolean" ? { verified: o["verified"] } : {}),
81
- };
82
- });
83
+ });
84
+ }
85
+ return out;
83
86
  }
84
87
  export function triageInbound(refs, opts = {}) {
85
88
  const seen = opts.seen ?? new Set();
@@ -1 +1 @@
1
- {"version":3,"file":"inbound.js","sourceRoot":"","sources":["../../src/coordination/inbound.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inbound.js","sourceRoot":"","sources":["../../src/coordination/inbound.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { Embedder, EmbedResult } from "./types.js";
2
2
  export declare class LocalMiniLmEmbedder implements Embedder {
3
- readonly modelId = "Xenova/all-MiniLM-L6-v2";
3
+ get modelId(): string;
4
4
  readonly dim = 384;
5
5
  private extractor;
6
6
  private pipe;
@@ -1 +1 @@
1
- {"version":3,"file":"local_minilm.d.ts","sourceRoot":"","sources":["../../src/embed/local_minilm.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAExD,qBAAa,mBAAoB,YAAW,QAAQ;IAClD,QAAQ,CAAC,OAAO,6BAA6B;IAC7C,QAAQ,CAAC,GAAG,OAAO;IACnB,OAAO,CAAC,SAAS,CAAuE;YAE1E,IAAI;IAQZ,KAAK,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;CAoB5D"}
1
+ {"version":3,"file":"local_minilm.d.ts","sourceRoot":"","sources":["../../src/embed/local_minilm.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAKxD,qBAAa,mBAAoB,YAAW,QAAQ;IAClD,IAAI,OAAO,IAAI,MAAM,CAEpB;IACD,QAAQ,CAAC,GAAG,OAAO;IACnB,OAAO,CAAC,SAAS,CAAuE;YAE1E,IAAI;IAQZ,KAAK,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;CAoB5D"}
@@ -1,12 +1,16 @@
1
+ import { loadTransformers, ortRuntime } from "./transformers_runtime.js";
2
+ const MINILM_REPO = "Xenova/all-MiniLM-L6-v2";
1
3
  export class LocalMiniLmEmbedder {
2
- modelId = "Xenova/all-MiniLM-L6-v2";
4
+ get modelId() {
5
+ return ortRuntime() === "wasm" ? "Xenova/all-MiniLM-L6-v2@hft4-q8-wasm" : "Xenova/all-MiniLM-L6-v2@hft4-q8";
6
+ }
3
7
  dim = 384;
4
8
  extractor = null;
5
9
  async pipe() {
6
10
  if (this.extractor)
7
11
  return this.extractor;
8
- const { pipeline } = await import("@xenova/transformers");
9
- const extractor = await pipeline("feature-extraction", this.modelId);
12
+ const { lib, modelOptions } = await loadTransformers();
13
+ const extractor = await lib.pipeline("feature-extraction", MINILM_REPO, { dtype: "q8", ...modelOptions });
10
14
  this.extractor = extractor;
11
15
  return this.extractor;
12
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"local_minilm.js","sourceRoot":"","sources":["../../src/embed/local_minilm.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,mBAAmB;IACrB,OAAO,GAAG,yBAAyB,CAAC;IACpC,GAAG,GAAG,GAAG,CAAC;IACX,SAAS,GAAkE,IAAI,CAAC;IAEhF,KAAK,CAAC,IAAI;QAChB,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC,SAAS,CAAC;QAC1C,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;QAC1D,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,oBAAoB,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACrE,IAAI,CAAC,SAAS,GAAG,SAA4E,CAAC;QAC9F,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAwB;QAClC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;QACrF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QACpC,MAAM,OAAO,GAAmB,EAAE,CAAC;QACnC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,CAAC,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAEzE,CAAC;YACF,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;YAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CACb,yDAAyD,IAAI,CAAC,MAAM,WAAW,IAAI,CAAC,OAAO,GAAG,CAC/F,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC;QAC3C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC;IACjD,CAAC;CACF"}
1
+ {"version":3,"file":"local_minilm.js","sourceRoot":"","sources":["../../src/embed/local_minilm.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEzE,MAAM,WAAW,GAAG,yBAAyB,CAAC;AAE9C,MAAM,OAAO,mBAAmB;IAC9B,IAAI,OAAO;QACT,OAAO,UAAU,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC,CAAC,iCAAiC,CAAC;IAC9G,CAAC;IACQ,GAAG,GAAG,GAAG,CAAC;IACX,SAAS,GAAkE,IAAI,CAAC;IAEhF,KAAK,CAAC,IAAI;QAChB,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC,SAAS,CAAC;QAC1C,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,MAAM,gBAAgB,EAAE,CAAC;QACvD,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,oBAAoB,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,YAAY,EAAE,CAAC,CAAC;QAC1G,IAAI,CAAC,SAAS,GAAG,SAA4E,CAAC;QAC9F,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAwB;QAClC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;QACrF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QACpC,MAAM,OAAO,GAAmB,EAAE,CAAC;QACnC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,CAAC,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAEzE,CAAC;YACF,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;YAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CACb,yDAAyD,IAAI,CAAC,MAAM,WAAW,IAAI,CAAC,OAAO,GAAG,CAC/F,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC;QAC3C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC;IACjD,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ export type OrtRuntime = "native" | "wasm";
2
+ export interface LoadedTransformers {
3
+ readonly lib: typeof import("@huggingface/transformers");
4
+ readonly runtime: OrtRuntime;
5
+ readonly modelOptions: Record<string, unknown>;
6
+ }
7
+ export type NativeProbe = (requireFromLib: NodeJS.Require) => void;
8
+ export declare function ortRuntime(probe?: NativeProbe): OrtRuntime;
9
+ export declare function loadTransformers(): Promise<LoadedTransformers>;
10
+ //# sourceMappingURL=transformers_runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformers_runtime.d.ts","sourceRoot":"","sources":["../../src/embed/transformers_runtime.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE3C,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,GAAG,EAAE,cAAc,2BAA2B,CAAC,CAAC;IACzD,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChD;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,cAAc,EAAE,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC;AASnE,wBAAgB,UAAU,CAAC,KAAK,GAAE,WAAyB,GAAG,UAAU,CAUvE;AAED,wBAAgB,gBAAgB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAG9D"}
@@ -0,0 +1,57 @@
1
+ import { createRequire } from "node:module";
2
+ import { dirname } from "node:path";
3
+ import { pathToFileURL } from "node:url";
4
+ const probeNative = (requireFromLib) => {
5
+ requireFromLib("onnxruntime-node");
6
+ };
7
+ let decided;
8
+ let loading;
9
+ export function ortRuntime(probe = probeNative) {
10
+ if (!decided) {
11
+ try {
12
+ probe(libRequire());
13
+ decided = { runtime: "native" };
14
+ }
15
+ catch (nativeError) {
16
+ decided = { runtime: "wasm", nativeError };
17
+ }
18
+ }
19
+ return decided.runtime;
20
+ }
21
+ export function loadTransformers() {
22
+ loading ??= load();
23
+ return loading;
24
+ }
25
+ function libRequire() {
26
+ return createRequire(createRequire(import.meta.url).resolve("@huggingface/transformers"));
27
+ }
28
+ async function load() {
29
+ if (ortRuntime() === "native") {
30
+ return { lib: await import("@huggingface/transformers"), runtime: "native", modelOptions: {} };
31
+ }
32
+ const requireFromLib = libRequire();
33
+ const nativeError = decided?.nativeError;
34
+ const ORT = Symbol.for("onnxruntime");
35
+ const g = globalThis;
36
+ if (!(ORT in g)) {
37
+ const ort = requireFromLib("onnxruntime-web");
38
+ ort.env.wasm.wasmPaths = pathToFileURL(dirname(requireFromLib.resolve("onnxruntime-web")) + "/").href;
39
+ g[ORT] = ort;
40
+ const nodePath = requireFromLib.resolve("onnxruntime-node");
41
+ const Module = requireFromLib("node:module");
42
+ const m = new Module(nodePath);
43
+ m.filename = nodePath;
44
+ m.loaded = true;
45
+ m.exports = ort;
46
+ requireFromLib.cache[nodePath] = m;
47
+ }
48
+ const reason = nativeError instanceof Error ? nativeError.message.split("\n")[0] : String(nativeError);
49
+ process.emitWarning(`SHM: the native ONNX runtime cannot load on ${process.platform}/${process.arch} (${reason}); ` +
50
+ "using its WebAssembly build, which is slower and keeps its own index.", { code: "SHM_ORT_WASM" });
51
+ return {
52
+ lib: await import("@huggingface/transformers"),
53
+ runtime: "wasm",
54
+ modelOptions: { device: "auto", session_options: { executionProviders: ["wasm"] } },
55
+ };
56
+ }
57
+ //# sourceMappingURL=transformers_runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformers_runtime.js","sourceRoot":"","sources":["../../src/embed/transformers_runtime.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cross_encoder.d.ts","sourceRoot":"","sources":["../../src/rerank/cross_encoder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAK5D,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,qBAAa,oBAAqB,YAAW,QAAQ;IACnD,QAAQ,CAAC,OAAO,mCAAmC;IACnD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,GAAG,CAA0B;IACrC,OAAO,CAAC,KAAK,CAAyB;gBAE1B,GAAG,GAAE,kBAAuB;YAO1B,IAAI;IAUZ,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,eAAe,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAmBtF"}
1
+ {"version":3,"file":"cross_encoder.d.ts","sourceRoot":"","sources":["../../src/rerank/cross_encoder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAM5D,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,qBAAa,oBAAqB,YAAW,QAAQ;IACnD,QAAQ,CAAC,OAAO,mCAAmC;IACnD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,GAAG,CAA0B;IACrC,OAAO,CAAC,KAAK,CAAyB;gBAE1B,GAAG,GAAE,kBAAuB;YAO1B,IAAI;IAUZ,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,eAAe,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAmBtF"}
@@ -1,3 +1,4 @@
1
+ import { loadTransformers } from "../embed/transformers_runtime.js";
1
2
  export class CrossEncoderReranker {
2
3
  modelId = "Xenova/ms-marco-MiniLM-L-6-v2";
3
4
  batchSize;
@@ -12,9 +13,9 @@ export class CrossEncoderReranker {
12
13
  async load() {
13
14
  if (this.tok && this.model)
14
15
  return { tokenizer: this.tok, model: this.model };
15
- const { AutoTokenizer, AutoModelForSequenceClassification } = await import("@xenova/transformers");
16
- const tokenizer = await AutoTokenizer.from_pretrained(this.modelId);
17
- const model = await AutoModelForSequenceClassification.from_pretrained(this.modelId);
16
+ const { lib, modelOptions } = await loadTransformers();
17
+ const tokenizer = await lib.AutoTokenizer.from_pretrained(this.modelId);
18
+ const model = await lib.AutoModelForSequenceClassification.from_pretrained(this.modelId, { dtype: "q8", ...modelOptions });
18
19
  this.tok = tokenizer;
19
20
  this.model = model;
20
21
  return { tokenizer: this.tok, model: this.model };
@@ -1 +1 @@
1
- {"version":3,"file":"cross_encoder.js","sourceRoot":"","sources":["../../src/rerank/cross_encoder.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,oBAAoB;IACtB,OAAO,GAAG,+BAA+B,CAAC;IAClC,SAAS,CAAS;IAC3B,GAAG,GAAqB,IAAI,CAAC;IAC7B,KAAK,GAAoB,IAAI,CAAC;IAEtC,YAAY,MAA0B,EAAE;QACtC,IAAI,CAAC,SAAS;YACZ,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,IAAK,GAAG,CAAC,SAAoB,IAAI,CAAC;gBAC9D,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAmB,CAAC;gBACrC,CAAC,CAAC,EAAE,CAAC;IACX,CAAC;IAEO,KAAK,CAAC,IAAI;QAChB,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;QAC9E,MAAM,EAAE,aAAa,EAAE,kCAAkC,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;QACnG,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpE,MAAM,KAAK,GAAG,MAAM,kCAAkC,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrF,IAAI,CAAC,GAAG,GAAG,SAAiC,CAAC;QAC7C,IAAI,CAAC,KAAK,GAAG,KAA4B,CAAC;QAC1C,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAa,EAAE,UAAsC;QAC/D,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACvC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/C,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC3D,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;YACtD,MAAM,MAAM,GAAG,SAAS,CACtB,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EACtB,EAAE,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CACzE,CAAC;YACF,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;YACvC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC7B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;gBACrB,MAAM,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;YACtG,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
1
+ {"version":3,"file":"cross_encoder.js","sourceRoot":"","sources":["../../src/rerank/cross_encoder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AASpE,MAAM,OAAO,oBAAoB;IACtB,OAAO,GAAG,+BAA+B,CAAC;IAClC,SAAS,CAAS;IAC3B,GAAG,GAAqB,IAAI,CAAC;IAC7B,KAAK,GAAoB,IAAI,CAAC;IAEtC,YAAY,MAA0B,EAAE;QACtC,IAAI,CAAC,SAAS;YACZ,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,IAAK,GAAG,CAAC,SAAoB,IAAI,CAAC;gBAC9D,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAmB,CAAC;gBACrC,CAAC,CAAC,EAAE,CAAC;IACX,CAAC;IAEO,KAAK,CAAC,IAAI;QAChB,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;QAC9E,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,MAAM,gBAAgB,EAAE,CAAC;QACvD,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxE,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,kCAAkC,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,YAAY,EAAE,CAAC,CAAC;QAC3H,IAAI,CAAC,GAAG,GAAG,SAAiC,CAAC;QAC7C,IAAI,CAAC,KAAK,GAAG,KAA4B,CAAC;QAC1C,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAa,EAAE,UAAsC;QAC/D,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACvC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/C,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC3D,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;YACtD,MAAM,MAAM,GAAG,SAAS,CACtB,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EACtB,EAAE,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CACzE,CAAC;YACF,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;YACvC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC7B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;gBACrB,MAAM,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;YACtG,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
@@ -33,6 +33,8 @@ export declare class ResidentSession {
33
33
  private readonly leases;
34
34
  private readonly draining;
35
35
  private readonly retirements;
36
+ private closing;
37
+ private closed;
36
38
  private readonly clock;
37
39
  private readonly startedAtMs;
38
40
  constructor(cfg: ResidentConfig);
@@ -1 +1 @@
1
- {"version":3,"file":"resident.d.ts","sourceRoot":"","sources":["../../src/service/resident.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE7D,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;IAC5C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,MAAM,GAAG,MAAM,CAAC;IAC3C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC;CAChC;AAED,qBAAa,eAAe;IAed,OAAO,CAAC,QAAQ,CAAC,GAAG;IAdhC,OAAO,CAAC,IAAI,CAA4B;IACxC,OAAO,CAAC,UAAU,CAA8B;IAChD,OAAO,CAAC,WAAW,CAA8B;IACjD,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;IAC3D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwC;IACjE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA4B;IACxD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;gBAER,GAAG,EAAE,cAAc;IAK1C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAM5B,OAAO,IAAI,aAAa;IAKlB,WAAW,IAAI,OAAO,CAAC,aAAa,CAAC;IAiBrC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAqB9D,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC;IAKvC,MAAM,IAAI,cAAc;IAiBxB,IAAI,cAAc,IAAI,MAAM,CAE3B;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAY5B,OAAO,CAAC,OAAO;YAsCD,MAAM;CAOrB"}
1
+ {"version":3,"file":"resident.d.ts","sourceRoot":"","sources":["../../src/service/resident.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAElE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE7D,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;IAC5C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,MAAM,GAAG,MAAM,CAAC;IAC3C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC;CAChC;AAED,qBAAa,eAAe;IAiBd,OAAO,CAAC,QAAQ,CAAC,GAAG;IAhBhC,OAAO,CAAC,IAAI,CAA4B;IACxC,OAAO,CAAC,UAAU,CAA8B;IAChD,OAAO,CAAC,WAAW,CAA8B;IACjD,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;IAC3D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwC;IACjE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA4B;IACxD,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAe;IACrC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;gBAER,GAAG,EAAE,cAAc;IAK1C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAO5B,OAAO,IAAI,aAAa;IAMlB,WAAW,IAAI,OAAO,CAAC,aAAa,CAAC;IAiBrC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAuB9D,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC;IAMvC,MAAM,IAAI,cAAc;IAiBxB,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBtB,OAAO,CAAC,OAAO;YAuCD,MAAM;CAOrB"}
@@ -1,3 +1,4 @@
1
+ import { SessionClosedError } from "../retrieval/session_closed.js";
1
2
  export class ResidentSession {
2
3
  cfg;
3
4
  live;
@@ -11,6 +12,8 @@ export class ResidentSession {
11
12
  leases = new Map();
12
13
  draining = new Map();
13
14
  retirements = new Set();
15
+ closing;
16
+ closed = false;
14
17
  clock;
15
18
  startedAtMs;
16
19
  constructor(cfg) {
@@ -19,6 +22,8 @@ export class ResidentSession {
19
22
  this.startedAtMs = this.clock();
20
23
  }
21
24
  async start() {
25
+ if (this.closing !== undefined)
26
+ throw new SessionClosedError("ResidentSession.start");
22
27
  if (this.live !== undefined)
23
28
  return;
24
29
  await this.rebuild();
@@ -26,6 +31,8 @@ export class ResidentSession {
26
31
  throw new Error(`ResidentSession.start: first open failed — ${this.lastError ?? "unknown error"}`);
27
32
  }
28
33
  current() {
34
+ if (this.closed)
35
+ throw new SessionClosedError("ResidentSession");
29
36
  if (this.live === undefined)
30
37
  throw new Error("ResidentSession: not started");
31
38
  return this.live;
@@ -33,7 +40,7 @@ export class ResidentSession {
33
40
  async ensureFresh() {
34
41
  const live = this.current();
35
42
  const f = this.cfg.freshness;
36
- if (f === undefined)
43
+ if (f === undefined || this.closing !== undefined)
37
44
  return live;
38
45
  let token;
39
46
  try {
@@ -51,7 +58,11 @@ export class ResidentSession {
51
58
  return this.current();
52
59
  }
53
60
  async use(fn) {
61
+ if (this.closing !== undefined)
62
+ throw new SessionClosedError("ResidentSession.use");
54
63
  await this.ensureFresh();
64
+ if (this.closing !== undefined)
65
+ throw new SessionClosedError("ResidentSession.use");
55
66
  const session = this.current();
56
67
  this.leases.set(session, (this.leases.get(session) ?? 0) + 1);
57
68
  try {
@@ -73,6 +84,8 @@ export class ResidentSession {
73
84
  }
74
85
  }
75
86
  async refresh() {
87
+ if (this.closing !== undefined)
88
+ throw new SessionClosedError("ResidentSession.refresh");
76
89
  await this.rebuild();
77
90
  return this.current();
78
91
  }
@@ -95,22 +108,30 @@ export class ResidentSession {
95
108
  get retireFailures() {
96
109
  return this.retireErrors;
97
110
  }
98
- async close() {
99
- if (this.inflight !== undefined)
100
- await this.inflight;
101
- for (const [session, release] of [...this.draining]) {
102
- this.draining.delete(session);
103
- release();
104
- }
105
- await Promise.allSettled([...this.retirements]);
106
- const s = this.live;
107
- this.live = undefined;
108
- if (s !== undefined)
109
- await s.close();
111
+ close() {
112
+ if (this.closing !== undefined)
113
+ return this.closing;
114
+ this.closing = (async () => {
115
+ if (this.inflight !== undefined)
116
+ await this.inflight;
117
+ for (const [session, release] of [...this.draining]) {
118
+ this.draining.delete(session);
119
+ release();
120
+ }
121
+ await Promise.allSettled([...this.retirements]);
122
+ const s = this.live;
123
+ this.live = undefined;
124
+ this.closed = true;
125
+ if (s !== undefined)
126
+ await s.close();
127
+ })();
128
+ return this.closing;
110
129
  }
111
130
  rebuild() {
112
131
  if (this.inflight !== undefined)
113
132
  return this.inflight;
133
+ if (this.closing !== undefined)
134
+ return Promise.resolve();
114
135
  this.inflight = (async () => {
115
136
  let token;
116
137
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"resident.js","sourceRoot":"","sources":["../../src/service/resident.ts"],"names":[],"mappings":"AAyBA,MAAM,OAAO,eAAe;IAeG;IAdrB,IAAI,CAA4B;IAChC,UAAU,CAA8B;IACxC,WAAW,CAA8B;IACzC,QAAQ,CAA4B;IACpC,QAAQ,GAAG,CAAC,CAAC;IACb,WAAW,CAAqB;IAChC,SAAS,CAAqB;IAC9B,YAAY,GAAG,CAAC,CAAC;IACR,MAAM,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC1C,QAAQ,GAAG,IAAI,GAAG,EAA6B,CAAC;IAChD,WAAW,GAAG,IAAI,GAAG,EAAiB,CAAC;IACvC,KAAK,CAAe;IACpB,WAAW,CAAS;IAErC,YAA6B,GAAmB;QAAnB,QAAG,GAAH,GAAG,CAAgB;QAC9C,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;YAAE,OAAO;QACpC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACrB,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,IAAI,CAAC,SAAS,IAAI,eAAe,EAAE,CAAC,CAAC;IAClI,CAAC;IAED,OAAO;QACL,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC7E,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC5B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;QAC7B,IAAI,CAAC,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACjC,IAAI,KAAsB,CAAC;QAC3B,IAAI,CAAC;YACH,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,SAAS,GAAG,cAAe,CAAW,CAAC,OAAO,EAAE,CAAC;YACtD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,KAAK,KAAK,IAAI,CAAC,UAAU,IAAI,KAAK,KAAK,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC;QACzE,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QAC7C,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,GAAG,CAAI,EAA0C;QACrD,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC;gBAAS,CAAC;YACT,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACjD,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;gBACb,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACjC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC3C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC1B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC9B,OAAO,EAAE,CAAC;gBACZ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IACxB,CAAC;IAED,MAAM;QACJ,MAAM,GAAG,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QACvD,OAAO;YACL,EAAE,EAAE,IAAI;YACR,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,SAAS;YAClC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC;YAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjF,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,QAAQ,EAAE,IAAI,CAAC,SAAS,KAAK,SAAS;YACtC,GAAG,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,QAAQ,EAAE,IAAI,CAAC,QAAQ,KAAK,SAAS;YACrC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;YAC5B,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACnE,CAAC;IACJ,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;YAAE,MAAM,IAAI,CAAC,QAAQ,CAAC;QACrD,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC9B,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAChD,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;QACpB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,IAAI,CAAC,KAAK,SAAS;YAAE,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;IACvC,CAAC;IAEO,OAAO;QACb,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,QAAQ,CAAC;QACtD,IAAI,CAAC,QAAQ,GAAG,CAAC,KAAK,IAAI,EAAE;YAC1B,IAAI,KAAkC,CAAC;YACvC,IAAI,CAAC;gBACH,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC;YACjC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,KAAK,GAAG,SAAS,CAAC;gBAClB,IAAI,CAAC,SAAS,GAAG,cAAe,CAAW,CAAC,OAAO,EAAE,CAAC;YACxD,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBACnC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;gBACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;gBACjB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;gBACxB,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;gBAC7B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;gBAChC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;gBAC3B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBACtB,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;oBACnB,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;wBACzB,MAAM,UAAU,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;wBAChH,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;wBACjC,KAAK,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;oBACrE,CAAC;yBAAM,CAAC;wBACN,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACzB,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,CAAC,SAAS,GAAI,CAAW,CAAC,OAAO,CAAC;gBACtC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;YAC3B,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC5B,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QACL,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,GAAkB;QACrC,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,CAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACpE,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"resident.js","sourceRoot":"","sources":["../../src/service/resident.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@saihm/shm",
3
- "version": "0.38.1",
3
+ "version": "0.38.2",
4
4
  "description": "Super-Human Memory for AI agents: the right memories at the right moment, ranked and encrypted on your machine. The layer that puts SAIHM memory to work.",
5
5
  "keywords": [
6
6
  "ai",
@@ -153,11 +153,11 @@
153
153
  "prepack": "npm run build"
154
154
  },
155
155
  "dependencies": {
156
- "@xenova/transformers": "^2.17.2"
156
+ "@huggingface/transformers": "^4.3.1"
157
157
  },
158
158
  "devDependencies": {
159
+ "@types/node": "^20.19.0",
159
160
  "tsx": "^4.21.0",
160
- "typescript": "^5.6.0",
161
- "@types/node": "^20.19.0"
161
+ "typescript": "^5.6.0"
162
162
  }
163
163
  }