@reftrixmcp/ml 0.3.0 → 0.6.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.
Files changed (42) hide show
  1. package/dist/config/worker-resource-limits.d.ts +89 -0
  2. package/dist/config/worker-resource-limits.d.ts.map +1 -0
  3. package/dist/config/worker-resource-limits.js +156 -0
  4. package/dist/config/worker-resource-limits.js.map +1 -0
  5. package/dist/dinov2/service.d.ts.map +1 -1
  6. package/dist/dinov2/service.js +70 -10
  7. package/dist/dinov2/service.js.map +1 -1
  8. package/dist/dinov2/worker-thread.js +72 -9
  9. package/dist/dinov2/worker-thread.js.map +1 -1
  10. package/dist/embeddings/service.d.ts +19 -0
  11. package/dist/embeddings/service.d.ts.map +1 -1
  12. package/dist/embeddings/service.js +56 -1
  13. package/dist/embeddings/service.js.map +1 -1
  14. package/dist/embeddings/worker-thread-device.d.ts +59 -0
  15. package/dist/embeddings/worker-thread-device.d.ts.map +1 -0
  16. package/dist/embeddings/worker-thread-device.js +63 -0
  17. package/dist/embeddings/worker-thread-device.js.map +1 -0
  18. package/dist/embeddings/worker-thread.d.ts.map +1 -1
  19. package/dist/embeddings/worker-thread.js +22 -85
  20. package/dist/embeddings/worker-thread.js.map +1 -1
  21. package/dist/index.d.ts +5 -0
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +10 -0
  24. package/dist/index.js.map +1 -1
  25. package/dist/onnx-availability.d.ts +29 -0
  26. package/dist/onnx-availability.d.ts.map +1 -0
  27. package/dist/onnx-availability.js +69 -0
  28. package/dist/onnx-availability.js.map +1 -0
  29. package/dist/onnx-provider-detect.d.ts +47 -0
  30. package/dist/onnx-provider-detect.d.ts.map +1 -0
  31. package/dist/onnx-provider-detect.js +111 -0
  32. package/dist/onnx-provider-detect.js.map +1 -0
  33. package/package.json +8 -5
  34. package/src/config/worker-resource-limits.ts +176 -0
  35. package/src/dinov2/service.ts +88 -10
  36. package/src/dinov2/worker-thread.ts +85 -10
  37. package/src/embeddings/service.ts +63 -1
  38. package/src/embeddings/worker-thread-device.ts +68 -0
  39. package/src/embeddings/worker-thread.ts +30 -104
  40. package/src/index.ts +27 -0
  41. package/src/onnx-availability.ts +78 -0
  42. package/src/onnx-provider-detect.ts +134 -0
@@ -17,6 +17,9 @@
17
17
  import { Worker } from "node:worker_threads";
18
18
  import { fileURLToPath } from "node:url";
19
19
  import path from "node:path";
20
+ import { OnnxRuntimeUnavailableError } from "../onnx-availability.js";
21
+ import { getMLWorkerThreadOptions } from "../config/worker-resource-limits.js";
22
+ import { detectExecutionProvider, isLdLibraryPathSetAtOsLevel } from "../onnx-provider-detect.js";
20
23
  /**
21
24
  * Default maximum cache size for LRU cache
22
25
  * Prevents unbounded memory growth
@@ -245,7 +248,13 @@ export class EmbeddingService {
245
248
  // worker_threads Workers, so we must explicitly pass an empty array
246
249
  // to prevent the parent's flags (set by WorkerSupervisor fork())
247
250
  // from propagating.
248
- this.worker = new Worker(scriptPath, { execArgv: [] });
251
+ //
252
+ // PR7e-β1: Add explicit resourceLimits to prevent OOM when ONNX
253
+ // falls back to CPU (onnxruntime-node). Without resourceLimits,
254
+ // V8 old-space defaults to < 4GB and e5-base CPU inference OOMs.
255
+ // See ADR-0012 §3 BLOCKER 4 and config/worker-resource-limits.ts.
256
+ const workerOptions = { execArgv: [], ...getMLWorkerThreadOptions() };
257
+ this.worker = new Worker(scriptPath, workerOptions);
249
258
  // Handle worker messages
250
259
  this.worker.on("message", (response) => {
251
260
  this.handleWorkerResponse(response);
@@ -360,11 +369,53 @@ export class EmbeddingService {
360
369
  * If the configured device is 'cuda' but initialization fails (e.g. because
361
370
  * LD_LIBRARY_PATH was not set at the OS level), automatically falls back to CPU.
362
371
  */
372
+ /**
373
+ * Resolve the safe execution device for the in-process pipeline.
374
+ *
375
+ * PR-1 GPU-COORD H regression fix (FIND-IMPL-PR1-H-NEW-01): the Phase 5 fork
376
+ * child's VRAM probe wires `ONNX_EXECUTION_PROVIDER=cuda` when free VRAM is
377
+ * available, but that does NOT guarantee the CUDA EP shared library
378
+ * (`libonnxruntime_providers_cuda.so`) is installed on the host. Previously
379
+ * the in-process path trusted `this.config.device` (set straight from the env
380
+ * var in the constructor) and passed `device:"cuda"` to transformers, which
381
+ * raw-throws on the native dlopen failure when the EP `.so` is absent.
382
+ *
383
+ * This gate mirrors the DINOv2 in-process path (`dinov2/worker-thread.ts`
384
+ * `initializeSession`): it resolves via `detectExecutionProvider` (which calls
385
+ * `verifyCudaAvailability` for an EP `.so` filesystem check) and also requires
386
+ * `LD_LIBRARY_PATH` at the OS level. If either fails, it returns "cpu" so the
387
+ * pipeline is never asked to create a CUDA session it cannot back. When the
388
+ * configured device is not "cuda", the configured device is returned as-is.
389
+ */
390
+ resolveInProcessDevice() {
391
+ if (this.config.device !== "cuda") {
392
+ return this.config.device === undefined ? "cpu" : this.config.device;
393
+ }
394
+ // CUDA requested — gate on EP `.so` availability and OS-level LD_LIBRARY_PATH.
395
+ const resolved = detectExecutionProvider("EmbeddingService");
396
+ if (resolved === "cuda" && !isLdLibraryPathSetAtOsLevel()) {
397
+ console.warn("[ML] CUDA requested but LD_LIBRARY_PATH not set at OS level. " +
398
+ "dlopen() cannot find CUDA libraries. Falling back to CPU.");
399
+ return "cpu";
400
+ }
401
+ if (resolved !== "cuda") {
402
+ console.warn("[ML] CUDA requested but CUDA EP not available (libonnxruntime_providers_cuda.so absent). " +
403
+ "Falling back to CPU.");
404
+ }
405
+ return resolved;
406
+ }
363
407
  async initializeInProcess() {
364
408
  if (this.pipeline)
365
409
  return;
366
410
  if (this.initPromise)
367
411
  return this.initPromise;
412
+ // Resolve the safe device BEFORE init so we never pass an unbacked CUDA
413
+ // device to the pipeline (FIND-IMPL-PR1-H-NEW-01 — gate parity with DINOv2).
414
+ const effectiveDevice = this.resolveInProcessDevice();
415
+ if (effectiveDevice !== this.config.device) {
416
+ this.config = { ...this.config, device: effectiveDevice };
417
+ this.currentProvider = effectiveDevice;
418
+ }
368
419
  this.initPromise = (async () => {
369
420
  try {
370
421
  if (process.env.NODE_ENV === "development") {
@@ -402,6 +453,10 @@ export class EmbeddingService {
402
453
  }
403
454
  catch (error) {
404
455
  this.initPromise = null;
456
+ const code = error.code;
457
+ if (code === "MODULE_NOT_FOUND" || code === "ERR_MODULE_NOT_FOUND") {
458
+ throw new OnnxRuntimeUnavailableError("text embedding");
459
+ }
405
460
  const message = error instanceof Error ? error.message : "Unknown error";
406
461
  throw new Error(`Failed to load embedding model: ${message}`);
407
462
  }
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/embeddings/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/embeddings/service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Worker-thread ONNX device gate helpers
3
+ *
4
+ * Pure, side-effect-free helpers that decide the effective ONNX execution
5
+ * device for the e5-base embedding worker thread. Extracted from
6
+ * `worker-thread.ts` so the gate logic is directly unit-testable — the worker
7
+ * module itself only runs as a Worker Thread (it requires `parentPort` at
8
+ * import time), so its gate could otherwise not be exercised in-place.
9
+ *
10
+ * The contract mirrors the in-process gate
11
+ * (`service.ts` `resolveInProcessDevice`, FIND-IMPL-PR1-H-NEW-01): the effective
12
+ * device must HONOR the already-resolved provider (the result of
13
+ * `detectExecutionProvider()` + the OS-level `LD_LIBRARY_PATH` check) and must
14
+ * NOT fall back to a raw `config.device` value (which is set straight from the
15
+ * `ONNX_EXECUTION_PROVIDER` env var). Letting `config.device="cuda"` override a
16
+ * gate decision of `"cpu"` passes an unbacked CUDA device to transformers, which
17
+ * raw-throws on the native `dlopen()` failure when the EP `.so` is absent
18
+ * (root-cause decision `019ec56b`).
19
+ *
20
+ * @module embeddings/worker-thread-device
21
+ */
22
+ import type { ExecutionProvider } from "../onnx-provider-detect.js";
23
+ /**
24
+ * Resolve the effective ONNX device for the worker-thread pipeline.
25
+ *
26
+ * `resolvedProvider` is already the result of the init gate
27
+ * (`detectExecutionProvider()` — a CUDA EP `.so` filesystem check — plus the
28
+ * OS-level `LD_LIBRARY_PATH` check in `initializePipeline`). This helper simply
29
+ * honors that decision. It deliberately does NOT consult `config.device`: doing
30
+ * so was the line-97 bug that let a `"cuda"` env override a `"cpu"` gate result.
31
+ *
32
+ * Parity: `service.ts` `resolveInProcessDevice()` likewise returns the gate
33
+ * result (`resolved`), never a raw configured device when CUDA is unbacked.
34
+ *
35
+ * @param resolvedProvider - The provider already resolved by the init gate.
36
+ * @returns The effective device to pass to the transformers pipeline.
37
+ */
38
+ export declare function resolveWorkerEffectiveDevice(resolvedProvider: ExecutionProvider): ExecutionProvider;
39
+ /**
40
+ * Decide whether a `switch-provider` request to CUDA may proceed.
41
+ *
42
+ * Mirrors the init-time AND gate (`initializePipeline`, line ~88): CUDA may be
43
+ * used only if BOTH the CUDA EP shared library is present
44
+ * (`verifyCudaAvailability`) AND `LD_LIBRARY_PATH` was set at the OS level
45
+ * (`isLdLibraryPathSetAtOsLevel`). Pre-fix, `switch-provider` gated on
46
+ * `verifyCudaAvailability` alone — so a host with the EP `.so` but an unset
47
+ * `LD_LIBRARY_PATH` would let `resolvedProvider="cuda"` through, producing an
48
+ * unbacked CUDA device and a `dlopen()` raw throw (UB-6 init parity).
49
+ *
50
+ * The two checks are passed in as functions so this helper stays pure and
51
+ * deterministically testable (the production caller passes the real
52
+ * `verifyCudaAvailability` / `isLdLibraryPathSetAtOsLevel`).
53
+ *
54
+ * @param verifyCuda - CUDA EP `.so` filesystem availability check.
55
+ * @param isLdSet - OS-level `LD_LIBRARY_PATH` presence check.
56
+ * @returns true only if both checks pass (CUDA switch permitted).
57
+ */
58
+ export declare function canSwitchToCuda(verifyCuda: () => boolean, isLdSet: () => boolean): boolean;
59
+ //# sourceMappingURL=worker-thread-device.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-thread-device.d.ts","sourceRoot":"","sources":["../../src/embeddings/worker-thread-device.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpE;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,4BAA4B,CAC1C,gBAAgB,EAAE,iBAAiB,GAClC,iBAAiB,CAEnB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,GAAG,OAAO,CAE1F"}
@@ -0,0 +1,63 @@
1
+ // SPDX-License-Identifier: AGPL-3.0-only
2
+ /**
3
+ * Worker-thread ONNX device gate helpers
4
+ *
5
+ * Pure, side-effect-free helpers that decide the effective ONNX execution
6
+ * device for the e5-base embedding worker thread. Extracted from
7
+ * `worker-thread.ts` so the gate logic is directly unit-testable — the worker
8
+ * module itself only runs as a Worker Thread (it requires `parentPort` at
9
+ * import time), so its gate could otherwise not be exercised in-place.
10
+ *
11
+ * The contract mirrors the in-process gate
12
+ * (`service.ts` `resolveInProcessDevice`, FIND-IMPL-PR1-H-NEW-01): the effective
13
+ * device must HONOR the already-resolved provider (the result of
14
+ * `detectExecutionProvider()` + the OS-level `LD_LIBRARY_PATH` check) and must
15
+ * NOT fall back to a raw `config.device` value (which is set straight from the
16
+ * `ONNX_EXECUTION_PROVIDER` env var). Letting `config.device="cuda"` override a
17
+ * gate decision of `"cpu"` passes an unbacked CUDA device to transformers, which
18
+ * raw-throws on the native `dlopen()` failure when the EP `.so` is absent
19
+ * (root-cause decision `019ec56b`).
20
+ *
21
+ * @module embeddings/worker-thread-device
22
+ */
23
+ /**
24
+ * Resolve the effective ONNX device for the worker-thread pipeline.
25
+ *
26
+ * `resolvedProvider` is already the result of the init gate
27
+ * (`detectExecutionProvider()` — a CUDA EP `.so` filesystem check — plus the
28
+ * OS-level `LD_LIBRARY_PATH` check in `initializePipeline`). This helper simply
29
+ * honors that decision. It deliberately does NOT consult `config.device`: doing
30
+ * so was the line-97 bug that let a `"cuda"` env override a `"cpu"` gate result.
31
+ *
32
+ * Parity: `service.ts` `resolveInProcessDevice()` likewise returns the gate
33
+ * result (`resolved`), never a raw configured device when CUDA is unbacked.
34
+ *
35
+ * @param resolvedProvider - The provider already resolved by the init gate.
36
+ * @returns The effective device to pass to the transformers pipeline.
37
+ */
38
+ export function resolveWorkerEffectiveDevice(resolvedProvider) {
39
+ return resolvedProvider;
40
+ }
41
+ /**
42
+ * Decide whether a `switch-provider` request to CUDA may proceed.
43
+ *
44
+ * Mirrors the init-time AND gate (`initializePipeline`, line ~88): CUDA may be
45
+ * used only if BOTH the CUDA EP shared library is present
46
+ * (`verifyCudaAvailability`) AND `LD_LIBRARY_PATH` was set at the OS level
47
+ * (`isLdLibraryPathSetAtOsLevel`). Pre-fix, `switch-provider` gated on
48
+ * `verifyCudaAvailability` alone — so a host with the EP `.so` but an unset
49
+ * `LD_LIBRARY_PATH` would let `resolvedProvider="cuda"` through, producing an
50
+ * unbacked CUDA device and a `dlopen()` raw throw (UB-6 init parity).
51
+ *
52
+ * The two checks are passed in as functions so this helper stays pure and
53
+ * deterministically testable (the production caller passes the real
54
+ * `verifyCudaAvailability` / `isLdLibraryPathSetAtOsLevel`).
55
+ *
56
+ * @param verifyCuda - CUDA EP `.so` filesystem availability check.
57
+ * @param isLdSet - OS-level `LD_LIBRARY_PATH` presence check.
58
+ * @returns true only if both checks pass (CUDA switch permitted).
59
+ */
60
+ export function canSwitchToCuda(verifyCuda, isLdSet) {
61
+ return verifyCuda() && isLdSet();
62
+ }
63
+ //# sourceMappingURL=worker-thread-device.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-thread-device.js","sourceRoot":"","sources":["../../src/embeddings/worker-thread-device.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,4BAA4B,CAC1C,gBAAmC;IAEnC,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,eAAe,CAAC,UAAyB,EAAE,OAAsB;IAC/E,OAAO,UAAU,EAAE,IAAI,OAAO,EAAE,CAAC;AACnC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"worker-thread.d.ts","sourceRoot":"","sources":["../../src/embeddings/worker-thread.ts"],"names":[],"mappings":"AA2HA,QAAA,IAAI,sBAAsB,QAAI,CAAC;AAC/B,QAAA,IAAI,aAAa,QAAI,CAAC;AAoZtB,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,CAAC"}
1
+ {"version":3,"file":"worker-thread.d.ts","sourceRoot":"","sources":["../../src/embeddings/worker-thread.ts"],"names":[],"mappings":"AAmDA,QAAA,IAAI,sBAAsB,QAAI,CAAC;AAC/B,QAAA,IAAI,aAAa,QAAI,CAAC;AAkZtB,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,CAAC"}
@@ -18,67 +18,9 @@
18
18
  * @module embeddings/worker-thread
19
19
  */
20
20
  import { parentPort } from "node:worker_threads";
21
- import { createRequire } from "node:module";
22
- import fs from "node:fs";
23
- import nodePath from "node:path";
24
- /**
25
- * Detect the ONNX execution provider based on environment configuration.
26
- *
27
- * Checks ONNX_EXECUTION_PROVIDER env var and verifies that the CUDA
28
- * provider shared library is available on disk. Falls back to CPU
29
- * gracefully if the provider is not installed.
30
- */
31
- function detectExecutionProvider() {
32
- const envProvider = process.env.ONNX_EXECUTION_PROVIDER;
33
- if (envProvider === "cuda" || envProvider === "rocm") {
34
- const cudaAvailable = verifyCudaAvailability();
35
- if (cudaAvailable) {
36
- return "cuda";
37
- }
38
- console.warn("[EmbeddingWorker] ONNX_EXECUTION_PROVIDER=%s but CUDA provider not available, falling back to CPU", envProvider);
39
- return "cpu";
40
- }
41
- return "cpu";
42
- }
43
- /**
44
- * Verify that CUDA provider (libonnxruntime_providers_cuda.so) is available.
45
- *
46
- * onnxruntime-node can download the CUDA provider shared library via
47
- * `ONNXRUNTIME_NODE_INSTALL_CUDA=v12 node .../install.js`. This function
48
- * checks for its presence on disk rather than trying to resolve a
49
- * non-existent npm package (onnxruntime-gpu is Python-only).
50
- */
51
- function verifyCudaAvailability() {
52
- try {
53
- const esmRequire = createRequire(import.meta.url);
54
- const ortNodePath = esmRequire.resolve("onnxruntime-node");
55
- // require.resolve returns e.g. .../onnxruntime-node/dist/index.js
56
- // Walk up to package root by finding the directory containing package.json
57
- let packageDir = nodePath.dirname(ortNodePath);
58
- for (let i = 0; i < 5; i++) {
59
- if (fs.existsSync(nodePath.join(packageDir, "package.json")))
60
- break;
61
- packageDir = nodePath.dirname(packageDir);
62
- }
63
- // Search across napi versions (v3, v6, etc.) for CUDA provider
64
- const binDir = nodePath.join(packageDir, "bin");
65
- if (fs.existsSync(binDir)) {
66
- const napiDirs = fs.readdirSync(binDir).filter((d) => d.startsWith("napi-v"));
67
- for (const napiDir of napiDirs) {
68
- const cudaProviderPath = nodePath.join(binDir, napiDir, "linux", "x64", "libonnxruntime_providers_cuda.so");
69
- if (fs.existsSync(cudaProviderPath)) {
70
- return true;
71
- }
72
- }
73
- }
74
- console.warn("[EmbeddingWorker] CUDA provider not found in: %s", binDir);
75
- return false;
76
- }
77
- catch {
78
- console.warn("[EmbeddingWorker] Cannot verify CUDA provider: onnxruntime-node not found");
79
- return false;
80
- }
81
- }
21
+ import { OnnxRuntimeUnavailableError } from "../onnx-availability.js";
22
+ import { detectExecutionProvider, verifyCudaAvailability, isLdLibraryPathSetAtOsLevel, } from "../onnx-provider-detect.js";
23
+ import { resolveWorkerEffectiveDevice, canSwitchToCuda } from "./worker-thread-device.js";
82
24
  // =====================================================
83
25
  // Worker state
84
26
  // =====================================================
@@ -106,26 +48,6 @@ function normalizeVector(vector) {
106
48
  return vector;
107
49
  return vector.map((val) => val / norm);
108
50
  }
109
- /**
110
- * Verify that LD_LIBRARY_PATH is set at the OS level (not just process.env).
111
- *
112
- * dlopen() reads LD_LIBRARY_PATH from the kernel environment (/proc/self/environ),
113
- * NOT from process.env modifications made at runtime. If LD_LIBRARY_PATH was set
114
- * after process startup (e.g. by loadEnvLocal()), dlopen() cannot find CUDA
115
- * libraries and ONNX Runtime CUDA provider initialization will segfault or throw.
116
- *
117
- * Returns true only if LD_LIBRARY_PATH was present in the original process environment.
118
- */
119
- function isLdLibraryPathSetAtOsLevel() {
120
- try {
121
- const procEnv = fs.readFileSync("/proc/self/environ", "utf-8");
122
- return procEnv.includes("LD_LIBRARY_PATH");
123
- }
124
- catch {
125
- // /proc/self/environ not available (non-Linux) — assume set
126
- return true;
127
- }
128
- }
129
51
  async function initializePipeline() {
130
52
  if (pipeline)
131
53
  return;
@@ -136,7 +58,7 @@ async function initializePipeline() {
136
58
  // Only auto-detect from env on first init. If provider was explicitly
137
59
  // set by a switch-provider message, respect that setting.
138
60
  if (!providerExplicitlySet) {
139
- resolvedProvider = detectExecutionProvider();
61
+ resolvedProvider = detectExecutionProvider("EmbeddingWorker");
140
62
  }
141
63
  // Safety check: if CUDA is requested but LD_LIBRARY_PATH was not set at
142
64
  // the OS level (only set via loadEnvLocal at runtime), CUDA init will crash
@@ -147,7 +69,13 @@ async function initializePipeline() {
147
69
  "To use CUDA, set LD_LIBRARY_PATH before starting the Node.js process.");
148
70
  resolvedProvider = "cpu";
149
71
  }
150
- const effectiveDevice = resolvedProvider === "cuda" ? "cuda" : config.device;
72
+ // Honor the gate decision. resolvedProvider is already the result of
73
+ // detectExecutionProvider() (CUDA EP .so check) + the LD_LIBRARY_PATH OS-level
74
+ // check above (line 88-95). config.device (set straight from the env var) must
75
+ // NOT override the gate — otherwise a "cuda" env on a host without the EP .so
76
+ // passes device:"cuda" to transformers, which raw-throws on dlopen. Parity with
77
+ // the in-process resolveInProcessDevice() gate (service.ts:472, FIND-IMPL-PR1-H-NEW-01).
78
+ const effectiveDevice = resolveWorkerEffectiveDevice(resolvedProvider);
151
79
  // eslint-disable-next-line no-console
152
80
  console.log("[EmbeddingWorker] Initializing ONNX pipeline", {
153
81
  model: config.modelId,
@@ -186,6 +114,10 @@ async function initializePipeline() {
186
114
  }
187
115
  catch (error) {
188
116
  initPromise = null;
117
+ const code = error.code;
118
+ if (code === "MODULE_NOT_FOUND" || code === "ERR_MODULE_NOT_FOUND") {
119
+ throw new OnnxRuntimeUnavailableError("text embedding");
120
+ }
189
121
  const message = error instanceof Error ? error.message : "Unknown error";
190
122
  throw new Error(`Failed to load embedding model in worker thread: ${message}`);
191
123
  }
@@ -371,9 +303,14 @@ async function handleMessage(message) {
371
303
  }
372
304
  case "switch-provider": {
373
305
  const targetProvider = message.provider;
374
- // If switching to CUDA, verify availability first
306
+ // If switching to CUDA, verify availability first. Mirror the init-time
307
+ // AND gate (line ~88): CUDA may proceed only if BOTH the EP .so is present
308
+ // AND LD_LIBRARY_PATH was set at the OS level. Gating on
309
+ // verifyCudaAvailability ALONE (the pre-fix gap, UB-6) would let a host
310
+ // with the EP .so but unset LD_LIBRARY_PATH pass device:"cuda" through →
311
+ // dlopen raw throw. canSwitchToCuda ANDs both checks (init parity).
375
312
  if (targetProvider === "cuda") {
376
- const canUseCuda = verifyCudaAvailability();
313
+ const canUseCuda = canSwitchToCuda(() => verifyCudaAvailability("EmbeddingWorker"), isLdLibraryPathSetAtOsLevel);
377
314
  if (!canUseCuda) {
378
315
  // Cannot switch to CUDA — respond with current (cpu) provider
379
316
  sendResponse({
@@ -1 +1 @@
1
- {"version":3,"file":"worker-thread.js","sourceRoot":"","sources":["../../src/embeddings/worker-thread.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker-thread.js","sourceRoot":"","sources":["../../src/embeddings/worker-thread.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,yCAAyC;AAEzC;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAe1F,wDAAwD;AACxD,eAAe;AACf,wDAAwD;AAExD,IAAI,QAAQ,GAA8B,IAAI,CAAC;AAC/C,IAAI,WAAW,GAAyB,IAAI,CAAC;AAC7C,IAAI,sBAAsB,GAAG,CAAC,CAAC;AAC/B,IAAI,aAAa,GAAG,CAAC,CAAC;AACtB,IAAI,gBAAgB,GAAsB,KAAK,CAAC;AAChD,gFAAgF;AAChF,IAAI,qBAAqB,GAAG,KAAK,CAAC;AAClC,IAAI,MAAM,GAAG;IACX,OAAO,EAAE,6BAA6B;IACtC,QAAQ,EAAE,iBAAiB;IAC3B,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,MAAM;IACb,wBAAwB,EAAE,EAAE;CAC7B,CAAC;AAEF,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEhC,wDAAwD;AACxD,sBAAsB;AACtB,wDAAwD;AAExD,SAAS,eAAe,CAAC,MAAgB;IACvC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IACxE,IAAI,IAAI,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC;IAC9B,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,KAAK,UAAU,kBAAkB;IAC/B,IAAI,QAAQ;QAAE,OAAO;IACrB,IAAI,WAAW;QAAE,OAAO,WAAW,CAAC;IAEpC,WAAW,GAAG,CAAC,KAAK,IAAmB,EAAE;QACvC,IAAI,CAAC;YACH,sEAAsE;YACtE,0DAA0D;YAC1D,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC3B,gBAAgB,GAAG,uBAAuB,CAAC,iBAAiB,CAAC,CAAC;YAChE,CAAC;YAED,wEAAwE;YACxE,4EAA4E;YAC5E,uEAAuE;YACvE,IAAI,gBAAgB,KAAK,MAAM,IAAI,CAAC,2BAA2B,EAAE,EAAE,CAAC;gBAClE,OAAO,CAAC,IAAI,CACV,4EAA4E;oBAC1E,4DAA4D;oBAC5D,uEAAuE,CAC1E,CAAC;gBACF,gBAAgB,GAAG,KAAK,CAAC;YAC3B,CAAC;YAED,qEAAqE;YACrE,+EAA+E;YAC/E,+EAA+E;YAC/E,8EAA8E;YAC9E,gFAAgF;YAChF,yFAAyF;YACzF,MAAM,eAAe,GAAsB,4BAA4B,CAAC,gBAAgB,CAAC,CAAC;YAE1F,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,8CAA8C,EAAE;gBAC1D,KAAK,EAAE,MAAM,CAAC,OAAO;gBACrB,eAAe,EAAE,MAAM,CAAC,MAAM;gBAC9B,gBAAgB;gBAChB,eAAe;gBACf,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,gBAAgB,EAAE,MAAM,CAAC,wBAAwB;aAClD,CAAC,CAAC;YAEH,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;YAE/E,uDAAuD;YACvD,yEAAyE;YACzE,IAAI,CAAC;gBACH,QAAQ,GAAG,CAAC,MAAM,cAAc,CAAC,oBAAoB,EAAE,MAAM,CAAC,OAAO,EAAE;oBACrE,KAAK,EAAE,MAAM,CAAC,KAAe;oBAC7B,MAAM,EAAE,eAAwB;iBACjC,CAAC,CAAkC,CAAC;YACvC,CAAC;YAAC,OAAO,WAAW,EAAE,CAAC;gBACrB,IAAI,eAAe,KAAK,KAAK,EAAE,CAAC;oBAC9B,yCAAyC;oBACzC,MAAM,cAAc,GAClB,WAAW,YAAY,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;oBAC3E,OAAO,CAAC,IAAI,CACV,wEAAwE,EACxE,eAAe,EACf,cAAc,CACf,CAAC;oBACF,gBAAgB,GAAG,KAAK,CAAC;oBAEzB,QAAQ,GAAG,CAAC,MAAM,cAAc,CAAC,oBAAoB,EAAE,MAAM,CAAC,OAAO,EAAE;wBACrE,KAAK,EAAE,MAAM,CAAC,KAAe;wBAC7B,MAAM,EAAE,KAAK;qBACd,CAAC,CAAkC,CAAC;gBACvC,CAAC;qBAAM,CAAC;oBACN,MAAM,WAAW,CAAC;gBACpB,CAAC;YACH,CAAC;YAED,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,sDAAsD,EAAE,gBAAgB,CAAC,CAAC;QACxF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,WAAW,GAAG,IAAI,CAAC;YACnB,MAAM,IAAI,GAAI,KAA2B,CAAC,IAAI,CAAC;YAC/C,IAAI,IAAI,KAAK,kBAAkB,IAAI,IAAI,KAAK,sBAAsB,EAAE,CAAC;gBACnE,MAAM,IAAI,2BAA2B,CAAC,gBAAgB,CAAC,CAAC;YAC1D,CAAC;YACD,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YACzE,MAAM,IAAI,KAAK,CAAC,oDAAoD,OAAO,EAAE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,KAAK,UAAU,eAAe;IAC5B,IAAI,QAAQ,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;QACvD,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,iDAAiD;QACnD,CAAC;IACH,CAAC;IACD,QAAQ,GAAG,IAAI,CAAC;IAChB,WAAW,GAAG,IAAI,CAAC;IACnB,sBAAsB,GAAG,CAAC,CAAC;AAC7B,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,cAAsB;IAC3D,sBAAsB,IAAI,cAAc,CAAC;IAEzC,MAAM,SAAS,GAAG,MAAM,CAAC,wBAAwB,CAAC;IAClD,IAAI,SAAS,IAAI,CAAC;QAAE,OAAO;IAE3B,IAAI,sBAAsB,IAAI,SAAS,EAAE,CAAC;QACxC,MAAM,eAAe,EAAE,CAAC;QACxB,aAAa,EAAE,CAAC;QAEhB,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,UAAU,EAAE,CAAC;YACpC,MAAM,CAAC,EAAE,EAAE,CAAC;QACd,CAAC;IACH,CAAC;AACH,CAAC;AAED,wDAAwD;AACxD,sBAAsB;AACtB,wDAAwD;AAExD;;GAEG;AACH,8DAA8D;AAC9D,SAAS,sBAAsB,CAAC,MAAW;IACzC,IAAI,SAAmB,CAAC;IACxB,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QAC/B,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAC1D,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;YACzC,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACjC,SAAS,GAAG,MAAM,CAAC;IACrB,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;QAC7C,+BAA+B;IACjC,CAAC;IAED,OAAO,eAAe,CAAC,SAAS,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,8DAA8D;AAC9D,SAAS,sBAAsB,CAAC,MAAW;IACzC,IAAI,eAA2B,CAAC;IAChC,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAClD,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;YACzC,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACjC,eAAe,GAAG,MAAM,CAAC;IAC3B,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,eAAe,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AAC9C,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,IAAY;IACxC,MAAM,kBAAkB,EAAE,CAAC;IAC3B,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAE3D,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1E,MAAM,SAAS,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAEjD,MAAM,uBAAuB,CAAC,CAAC,CAAC,CAAC;IACjC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,KAAe;IAC1C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAElC,MAAM,UAAU,GAAG,EAAE,CAAC;IACtB,MAAM,aAAa,GAAe,EAAE,CAAC;IAErC,KAAK,IAAI,UAAU,GAAG,CAAC,EAAE,UAAU,GAAG,KAAK,CAAC,MAAM,EAAE,UAAU,IAAI,UAAU,EAAE,CAAC;QAC7E,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACjE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAEhD,kDAAkD;QAClD,MAAM,kBAAkB,EAAE,CAAC;QAC3B,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAEzE,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3E,MAAM,eAAe,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;QACvD,aAAa,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC;QAEvC,MAAM,uBAAuB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,wDAAwD;AACxD,kBAAkB;AAClB,wDAAwD;AAExD,SAAS,YAAY,CAAC,QAAwB;IAC5C,UAAU,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,SAAS,CAAC,SAAiB,EAAE,YAAmC,EAAE,KAAc;IACvF,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5E,MAAM,QAAQ,GAAwB;QACpC,IAAI,EAAE,OAAO;QACb,SAAS;QACT,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,YAAY;QACnB,YAAY;KACb,CAAC;IACF,UAAU,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;AACpC,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,OAAsB;IACjD,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,kBAAkB,EAAE,CAAC;YAC3B,YAAY,CAAC;gBACX,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;gBAClC,iBAAiB,EAAE,gBAAgB;aACpC,CAAC,CAAC;YACH,MAAM;QACR,CAAC;QAED,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACrD,YAAY,CAAC;gBACX,IAAI,EAAE,UAAU;gBAChB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,IAAI;gBACb,SAAS;gBACT,eAAe,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;aACxC,CAAC,CAAC;YACH,MAAM;QACR,CAAC;QAED,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACtD,YAAY,CAAC;gBACX,IAAI,EAAE,eAAe;gBACrB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,IAAI;gBACb,UAAU;gBACV,eAAe,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;aACxC,CAAC,CAAC;YACH,MAAM;QACR,CAAC;QAED,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,eAAe,EAAE,CAAC;YACxB,YAAY,CAAC;gBACX,IAAI,EAAE,SAAS;gBACf,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;YACH,MAAM;QACR,CAAC;QAED,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,eAAe,EAAE,CAAC;YACxB,YAAY,CAAC;gBACX,IAAI,EAAE,WAAW;gBACjB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;YACH,uDAAuD;YACvD,wDAAwD;YACxD,MAAM;QACR,CAAC;QAED,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;YAExC,wEAAwE;YACxE,2EAA2E;YAC3E,yDAAyD;YACzD,wEAAwE;YACxE,yEAAyE;YACzE,oEAAoE;YACpE,IAAI,cAAc,KAAK,MAAM,EAAE,CAAC;gBAC9B,MAAM,UAAU,GAAG,eAAe,CAChC,GAAG,EAAE,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,EAC/C,2BAA2B,CAC5B,CAAC;gBACF,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,8DAA8D;oBAC9D,YAAY,CAAC;wBACX,IAAI,EAAE,iBAAiB;wBACvB,SAAS,EAAE,OAAO,CAAC,SAAS;wBAC5B,OAAO,EAAE,IAAI;wBACb,QAAQ,EAAE,KAAK;qBAChB,CAAC,CAAC;oBACH,MAAM;gBACR,CAAC;YACH,CAAC;YAED,4CAA4C;YAC5C,MAAM,eAAe,EAAE,CAAC;YAExB,yDAAyD;YACzD,oEAAoE;YACpE,gBAAgB,GAAG,cAAc,CAAC;YAClC,qBAAqB,GAAG,IAAI,CAAC;YAC7B,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;YAE/C,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,yCAAyC,EAAE,gBAAgB,CAAC,CAAC;YAEzE,YAAY,CAAC;gBACX,IAAI,EAAE,iBAAiB;gBACvB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,gBAAgB;aAC3B,CAAC,CAAC;YACH,MAAM;QACR,CAAC;QAED,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,qCAAqC;YACrC,MAAM,eAAe,EAAE,CAAC;YACxB,gBAAgB,GAAG,KAAK,CAAC;YACzB,qBAAqB,GAAG,IAAI,CAAC;YAC7B,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;YAEtC,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;YAE/D,YAAY,CAAC;gBACX,IAAI,EAAE,aAAa;gBACnB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;YACH,MAAM;QACR,CAAC;QAED,OAAO,CAAC,CAAC,CAAC;YACR,4DAA4D;YAC5D,MAAM,WAAW,GAAI,OAAmC,CAAC,IAAI,IAAI,SAAS,CAAC;YAC3E,SAAS,CACL,OAAmC,CAAC,SAAoB,IAAI,SAAS,EACvE,WAAoC,EACpC,IAAI,KAAK,CAAC,gCAAgC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CACjE,CAAC;YACF,MAAM;QACR,CAAC;IACH,CAAC;AACH,CAAC;AAED,wDAAwD;AACxD,4BAA4B;AAC5B,wDAAwD;AAExD,IAAI,CAAC,UAAU,EAAE,CAAC;IAChB,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;AACrF,CAAC;AAED,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAsB,EAAE,EAAE;IAClD,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACrC,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,4EAA4E;AAC5E,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,CAAC"}
package/dist/index.d.ts CHANGED
@@ -11,6 +11,11 @@ export type { VisionFeatures, VisionRhythm, VisionDensity, VisionGravity, Vision
11
11
  export { DINOv2Service, DINOV2_EMBEDDING_DIMENSION, DINOV2_INPUT_SIZE } from "./dinov2/index.js";
12
12
  export type { DINOv2ServiceConfig } from "./dinov2/index.js";
13
13
  export type { DINOv2WorkerMessage, DINOv2WorkerResponse } from "./dinov2/index.js";
14
+ export { isOnnxRuntimeAvailable, OnnxRuntimeUnavailableError, safeImportOnnx, } from "./onnx-availability.js";
15
+ export { detectExecutionProvider, verifyCudaAvailability, isLdLibraryPathSetAtOsLevel, } from "./onnx-provider-detect.js";
16
+ export type { ExecutionProvider } from "./onnx-provider-detect.js";
17
+ export { loadMLWorkerResourceLimits, getMLWorkerThreadOptions, MLWorkerResourceLimitsSchema, } from "./config/worker-resource-limits.js";
18
+ export type { MLWorkerResourceLimits } from "./config/worker-resource-limits.js";
14
19
  export { calculateRRF, mergeWithRRF, normalizeRRFScore, toRankedItems } from "./search/index.js";
15
20
  export { executeHybridSearch } from "./search/index.js";
16
21
  export { buildFulltextConditions, buildFulltextRankExpression } from "./search/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA;;;GAGG;AAGH,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC7F,YAAY,EACV,iBAAiB,EACjB,sBAAsB,EACtB,UAAU,EACV,eAAe,EACf,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,2BAA2B,EAC3B,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,cAAc,EACd,YAAY,EACZ,aAAa,EACb,aAAa,EACb,WAAW,EACX,4BAA4B,EAC5B,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,aAAa,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACjG,YAAY,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,YAAY,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAGnF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACjG,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AACzF,YAAY,EACV,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,uBAAuB,EACvB,qBAAqB,EACrB,uBAAuB,EACvB,UAAU,EACV,aAAa,EACb,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA;;;GAGG;AAGH,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC7F,YAAY,EACV,iBAAiB,EACjB,sBAAsB,EACtB,UAAU,EACV,eAAe,EACf,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,2BAA2B,EAC3B,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,cAAc,EACd,YAAY,EACZ,aAAa,EACb,aAAa,EACb,WAAW,EACX,4BAA4B,EAC5B,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,aAAa,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACjG,YAAY,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,YAAY,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAGnF,OAAO,EACL,sBAAsB,EACtB,2BAA2B,EAC3B,cAAc,GACf,MAAM,wBAAwB,CAAC;AAOhC,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,2BAA2B,CAAC;AACnC,YAAY,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAGnE,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,oCAAoC,CAAC;AAC5C,YAAY,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAGjF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACjG,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AACzF,YAAY,EACV,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,uBAAuB,EACvB,qBAAqB,EACrB,uBAAuB,EACvB,UAAU,EACV,aAAa,EACb,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -12,6 +12,16 @@ export { StyleEmbeddingService, styleEmbeddingService, createStyleEmbedding, cre
12
12
  export { VisionEmbeddingService, visionEmbeddingService, createVisionEmbedding, createBatchVisionEmbeddings, visionFeaturesToText, } from "./embeddings/index.js";
13
13
  // DINOv2 visual embedding exports
14
14
  export { DINOv2Service, DINOV2_EMBEDDING_DIMENSION, DINOV2_INPUT_SIZE } from "./dinov2/index.js";
15
+ // ONNX Runtime availability checker
16
+ export { isOnnxRuntimeAvailable, OnnxRuntimeUnavailableError, safeImportOnnx, } from "./onnx-availability.js";
17
+ // ONNX execution provider detection (CUDA EP `.so` availability gate)
18
+ // Exported so the Phase 5 fork-child VRAM probe can gate CUDA selection on the
19
+ // CUDA EP shared-library availability (FIND-IMPL-PR1-H-NEW-01), not just on
20
+ // free VRAM. `verifyCudaAvailability` is a pure filesystem check (no GPU/native
21
+ // init), safe to call from the fork-child leaf path.
22
+ export { detectExecutionProvider, verifyCudaAvailability, isLdLibraryPathSetAtOsLevel, } from "./onnx-provider-detect.js";
23
+ // ML Worker Thread resource limits (PR7e-β1)
24
+ export { loadMLWorkerResourceLimits, getMLWorkerThreadOptions, MLWorkerResourceLimitsSchema, } from "./config/worker-resource-limits.js";
15
25
  // Search utilities exports (SearchService removed in v0.1.0)
16
26
  export { calculateRRF, mergeWithRRF, normalizeRRFScore, toRankedItems } from "./search/index.js";
17
27
  export { executeHybridSearch } from "./search/index.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,yCAAyC;AAEzC;;;GAGG;AAEH,4BAA4B;AAC5B,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAS7F,kCAAkC;AAClC,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAG/B,mCAAmC;AACnC,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,2BAA2B,EAC3B,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAW/B,kCAAkC;AAClC,OAAO,EAAE,aAAa,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAIjG,6DAA6D;AAC7D,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACjG,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,yCAAyC;AAEzC;;;GAGG;AAEH,4BAA4B;AAC5B,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAS7F,kCAAkC;AAClC,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAG/B,mCAAmC;AACnC,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,2BAA2B,EAC3B,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAW/B,kCAAkC;AAClC,OAAO,EAAE,aAAa,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAIjG,oCAAoC;AACpC,OAAO,EACL,sBAAsB,EACtB,2BAA2B,EAC3B,cAAc,GACf,MAAM,wBAAwB,CAAC;AAEhC,sEAAsE;AACtE,+EAA+E;AAC/E,4EAA4E;AAC5E,gFAAgF;AAChF,qDAAqD;AACrD,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,2BAA2B,CAAC;AAGnC,6CAA6C;AAC7C,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,oCAAoC,CAAC;AAG5C,6DAA6D;AAC7D,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACjG,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC"}