ruvector 0.2.27 → 0.2.29
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 +21 -21
- package/README.md +2270 -2270
- package/bin/cli.js +9570 -9479
- package/bin/mcp-server.js +3854 -3854
- package/dist/core/intelligence-engine.d.ts +13 -0
- package/dist/core/intelligence-engine.d.ts.map +1 -1
- package/dist/core/intelligence-engine.js +38 -0
- package/dist/core/onnx/bundled-parallel.mjs +164 -164
- package/dist/core/onnx/embed-worker.mjs +67 -67
- package/dist/core/onnx/loader.js +434 -434
- package/dist/core/onnx/package.json +3 -3
- package/dist/core/onnx/pkg/LICENSE +21 -21
- package/dist/core/onnx/pkg/loader.js +348 -348
- package/dist/core/onnx/pkg/package.json +3 -3
- package/dist/core/onnx/pkg/ruvector_onnx_embeddings_wasm.d.ts +112 -112
- package/dist/core/onnx/pkg/ruvector_onnx_embeddings_wasm.js +5 -5
- package/dist/core/onnx/pkg/ruvector_onnx_embeddings_wasm_bg.js +638 -638
- package/dist/core/onnx/pkg/ruvector_onnx_embeddings_wasm_bg.wasm.d.ts +29 -29
- package/dist/core/onnx-embedder.d.ts.map +1 -1
- package/dist/core/onnx-embedder.js +24 -30
- package/dist/core/parallel-workers.js +439 -439
- package/dist/workers/benchmark.js +15 -15
- package/package.json +122 -122
- package/src/decompiler/api-prober.js +302 -302
- package/src/decompiler/index.js +463 -463
- package/src/decompiler/metrics.js +86 -86
- package/src/decompiler/model-decompiler.js +423 -423
- package/src/decompiler/module-splitter.js +498 -498
- package/src/decompiler/module-tree.js +142 -142
- package/src/decompiler/name-predictor.js +400 -400
- package/src/decompiler/npm-fetch.js +176 -176
- package/src/decompiler/reconstructor.js +499 -499
- package/src/decompiler/reference-tracker.js +285 -285
- package/src/decompiler/statement-parser.js +285 -285
- package/src/decompiler/style-improver.js +438 -438
- package/src/decompiler/subcategories.js +339 -339
- package/src/decompiler/validator.js +379 -379
- package/src/decompiler/witness.js +140 -140
- package/wasm/package.json +26 -26
- package/wasm/ruvector_decompiler_wasm.d.ts +27 -27
- package/wasm/ruvector_decompiler_wasm.js +220 -220
- package/wasm/ruvector_decompiler_wasm_bg.wasm.d.ts +16 -16
- package/dist/core/onnx/pkg/ruvector.db +0 -0
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
/* tslint:disable */
|
|
2
|
-
/* eslint-disable */
|
|
3
|
-
export const memory: WebAssembly.Memory;
|
|
4
|
-
export const __wbg_wasmembedder_free: (a: number, b: number) => void;
|
|
5
|
-
export const __wbg_wasmembedderconfig_free: (a: number, b: number) => void;
|
|
6
|
-
export const cosineSimilarity: (a: number, b: number, c: number, d: number) => number;
|
|
7
|
-
export const normalizeL2: (a: number, b: number) => [number, number];
|
|
8
|
-
export const wasmembedder_dimension: (a: number) => number;
|
|
9
|
-
export const wasmembedder_embedBatch: (a: number, b: number, c: number) => [number, number, number, number];
|
|
10
|
-
export const wasmembedder_embedOne: (a: number, b: number, c: number) => [number, number, number, number];
|
|
11
|
-
export const wasmembedder_maxLength: (a: number) => number;
|
|
12
|
-
export const wasmembedder_new: (a: number, b: number, c: number, d: number) => [number, number, number];
|
|
13
|
-
export const wasmembedder_similarity: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
|
|
14
|
-
export const wasmembedder_withConfig: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
|
|
15
|
-
export const wasmembedderconfig_new: () => number;
|
|
16
|
-
export const wasmembedderconfig_setMaxLength: (a: number, b: number) => number;
|
|
17
|
-
export const wasmembedderconfig_setNormalize: (a: number, b: number) => number;
|
|
18
|
-
export const wasmembedderconfig_setPooling: (a: number, b: number) => number;
|
|
19
|
-
export const init: () => void;
|
|
20
|
-
export const simd_available: () => number;
|
|
21
|
-
export const version: () => [number, number];
|
|
22
|
-
export const __wbindgen_malloc: (a: number, b: number) => number;
|
|
23
|
-
export const __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
|
|
24
|
-
export const __wbindgen_exn_store: (a: number) => void;
|
|
25
|
-
export const __externref_table_alloc: () => number;
|
|
26
|
-
export const __wbindgen_externrefs: WebAssembly.Table;
|
|
27
|
-
export const __wbindgen_free: (a: number, b: number, c: number) => void;
|
|
28
|
-
export const __externref_table_dealloc: (a: number) => void;
|
|
29
|
-
export const __wbindgen_start: () => void;
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
export const memory: WebAssembly.Memory;
|
|
4
|
+
export const __wbg_wasmembedder_free: (a: number, b: number) => void;
|
|
5
|
+
export const __wbg_wasmembedderconfig_free: (a: number, b: number) => void;
|
|
6
|
+
export const cosineSimilarity: (a: number, b: number, c: number, d: number) => number;
|
|
7
|
+
export const normalizeL2: (a: number, b: number) => [number, number];
|
|
8
|
+
export const wasmembedder_dimension: (a: number) => number;
|
|
9
|
+
export const wasmembedder_embedBatch: (a: number, b: number, c: number) => [number, number, number, number];
|
|
10
|
+
export const wasmembedder_embedOne: (a: number, b: number, c: number) => [number, number, number, number];
|
|
11
|
+
export const wasmembedder_maxLength: (a: number) => number;
|
|
12
|
+
export const wasmembedder_new: (a: number, b: number, c: number, d: number) => [number, number, number];
|
|
13
|
+
export const wasmembedder_similarity: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
|
|
14
|
+
export const wasmembedder_withConfig: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
|
|
15
|
+
export const wasmembedderconfig_new: () => number;
|
|
16
|
+
export const wasmembedderconfig_setMaxLength: (a: number, b: number) => number;
|
|
17
|
+
export const wasmembedderconfig_setNormalize: (a: number, b: number) => number;
|
|
18
|
+
export const wasmembedderconfig_setPooling: (a: number, b: number) => number;
|
|
19
|
+
export const init: () => void;
|
|
20
|
+
export const simd_available: () => number;
|
|
21
|
+
export const version: () => [number, number];
|
|
22
|
+
export const __wbindgen_malloc: (a: number, b: number) => number;
|
|
23
|
+
export const __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
|
|
24
|
+
export const __wbindgen_exn_store: (a: number) => void;
|
|
25
|
+
export const __externref_table_alloc: () => number;
|
|
26
|
+
export const __wbindgen_externrefs: WebAssembly.Table;
|
|
27
|
+
export const __wbindgen_free: (a: number, b: number, c: number) => void;
|
|
28
|
+
export const __externref_table_dealloc: (a: number) => void;
|
|
29
|
+
export const __wbindgen_start: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onnx-embedder.d.ts","sourceRoot":"","sources":["../../src/core/onnx-embedder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAQH,OAAO,CAAC,MAAM,CAAC;IAEb,IAAI,kBAAkB,EAAE,WAAW,GAAG,SAAS,CAAC;CACjD;AAuBD,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAClC,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAMD,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAsBD;;;;;;;;GAQG;AACH,wBAAgB,eAAe,IAAI,OAAO,CAOzC;
|
|
1
|
+
{"version":3,"file":"onnx-embedder.d.ts","sourceRoot":"","sources":["../../src/core/onnx-embedder.ts"],"names":[],"mappings":"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"}
|
|
@@ -127,13 +127,17 @@ function isOnnxAvailable() {
|
|
|
127
127
|
}
|
|
128
128
|
}
|
|
129
129
|
/**
|
|
130
|
-
* Check
|
|
130
|
+
* Check whether the bundled parallel worker pool can be loaded — i.e. the
|
|
131
|
+
* `onnx/bundled-parallel.mjs` file ships in the package. This reflects the
|
|
132
|
+
* *bundled* pool (the only parallel implementation), NOT the unpublished
|
|
133
|
+
* external `ruvector-onnx-embeddings-wasm/parallel` package, which was rejected
|
|
134
|
+
* in ADR-194. See https://github.com/ruvnet/RuVector/issues/531.
|
|
131
135
|
*/
|
|
132
|
-
|
|
136
|
+
function detectParallelAvailable() {
|
|
133
137
|
try {
|
|
134
|
-
|
|
135
|
-
parallelAvailable =
|
|
136
|
-
return
|
|
138
|
+
const poolPath = path.join(__dirname, 'onnx', 'bundled-parallel.mjs');
|
|
139
|
+
parallelAvailable = fs.existsSync(poolPath);
|
|
140
|
+
return parallelAvailable;
|
|
137
141
|
}
|
|
138
142
|
catch {
|
|
139
143
|
parallelAvailable = false;
|
|
@@ -154,37 +158,27 @@ function detectSimd() {
|
|
|
154
158
|
return false;
|
|
155
159
|
}
|
|
156
160
|
/**
|
|
157
|
-
*
|
|
161
|
+
* Initialize the bundled, zero-dependency worker pool for batch throughput.
|
|
162
|
+
*
|
|
163
|
+
* Opt-in only (`enableParallel === true`) so the default/'auto' path does not
|
|
164
|
+
* silently spawn worker threads for existing callers. Output vectors are
|
|
165
|
+
* bit-identical to the single-thread path (issue #523).
|
|
166
|
+
*
|
|
167
|
+
* The previously-referenced external package
|
|
168
|
+
* `ruvector-onnx-embeddings-wasm/parallel` was never published and was rejected
|
|
169
|
+
* in ADR-194; the bundled pool (`onnx/bundled-parallel.mjs`) is the only
|
|
170
|
+
* parallel implementation. See https://github.com/ruvnet/RuVector/issues/531.
|
|
158
171
|
*/
|
|
159
172
|
async function tryInitParallel(config) {
|
|
160
|
-
// Skip
|
|
161
|
-
if (config.enableParallel === false)
|
|
162
|
-
return false;
|
|
163
|
-
// 1) Optional external package (back-compat). Absent by default.
|
|
164
|
-
try {
|
|
165
|
-
const parallelModule = await dynamicImport('ruvector-onnx-embeddings-wasm/parallel');
|
|
166
|
-
const { ParallelEmbedder } = parallelModule;
|
|
167
|
-
parallelEmbedder = new ParallelEmbedder({
|
|
168
|
-
numWorkers: config.numWorkers,
|
|
169
|
-
});
|
|
170
|
-
await parallelEmbedder.init(config.modelId || DEFAULT_MODEL);
|
|
171
|
-
parallelThreshold = config.parallelThreshold || 4;
|
|
172
|
-
parallelEnabled = true;
|
|
173
|
-
parallelAvailable = true;
|
|
174
|
-
console.error(`Parallel embedder ready (external): ${parallelEmbedder.numWorkers} workers, SIMD: ${simdAvailable}`);
|
|
175
|
-
return true;
|
|
176
|
-
}
|
|
177
|
-
catch {
|
|
178
|
-
// External package not installed — fall through to the bundled pool.
|
|
179
|
-
}
|
|
180
|
-
// 2) Bundled, zero-dependency worker pool over the already-loaded model bytes.
|
|
181
|
-
// Opt-in only (enableParallel === true) so the default/'auto' path does not
|
|
182
|
-
// silently spawn worker threads for existing callers. Vectors are identical
|
|
183
|
-
// to the single-thread path (issue #523).
|
|
173
|
+
// Skip unless parallelism is explicitly requested (covers false and 'auto').
|
|
184
174
|
if (config.enableParallel !== true) {
|
|
185
175
|
parallelAvailable = false;
|
|
186
176
|
return false;
|
|
187
177
|
}
|
|
178
|
+
if (!detectParallelAvailable()) {
|
|
179
|
+
console.error('Parallel embedder not available: bundled worker pool (onnx/bundled-parallel.mjs) missing');
|
|
180
|
+
return false;
|
|
181
|
+
}
|
|
188
182
|
try {
|
|
189
183
|
if (!loadedModelBytes || !loadedTokenizerJson) {
|
|
190
184
|
throw new Error('model bytes unavailable for bundled pool');
|