@vorionsys/atsf-core 0.4.1 → 0.4.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/dist/basis/parser.js +2 -2
- package/dist/basis/parser.js.map +1 -1
- package/dist/paramesphere/gpu-svd.d.ts +102 -0
- package/dist/paramesphere/gpu-svd.d.ts.map +1 -0
- package/dist/paramesphere/gpu-svd.js +668 -0
- package/dist/paramesphere/gpu-svd.js.map +1 -0
- package/dist/paramesphere/index.d.ts +2 -0
- package/dist/paramesphere/index.d.ts.map +1 -1
- package/dist/paramesphere/index.js +1 -0
- package/dist/paramesphere/index.js.map +1 -1
- package/dist/paramesphere/paramesphere-engine.d.ts +40 -3
- package/dist/paramesphere/paramesphere-engine.d.ts.map +1 -1
- package/dist/paramesphere/paramesphere-engine.js +133 -6
- package/dist/paramesphere/paramesphere-engine.js.map +1 -1
- package/dist/paramesphere/types.d.ts +14 -0
- package/dist/paramesphere/types.d.ts.map +1 -1
- package/dist/paramesphere/types.js.map +1 -1
- package/dist/phase6/types.d.ts +18 -18
- package/package.json +1 -1
package/dist/basis/parser.js
CHANGED
|
@@ -125,7 +125,7 @@ export function validateRule(definition) {
|
|
|
125
125
|
if (error instanceof z.ZodError) {
|
|
126
126
|
return {
|
|
127
127
|
valid: false,
|
|
128
|
-
errors: error.
|
|
128
|
+
errors: (error.issues ?? []).map((e) => `${e.path.join('.')}: ${e.message}`),
|
|
129
129
|
};
|
|
130
130
|
}
|
|
131
131
|
return { valid: false, errors: ['Unknown validation error'] };
|
|
@@ -143,7 +143,7 @@ export function validateNamespace(definition) {
|
|
|
143
143
|
if (error instanceof z.ZodError) {
|
|
144
144
|
return {
|
|
145
145
|
valid: false,
|
|
146
|
-
errors: error.
|
|
146
|
+
errors: (error.issues ?? []).map((e) => `${e.path.join('.')}: ${e.message}`),
|
|
147
147
|
};
|
|
148
148
|
}
|
|
149
149
|
return { valid: false, errors: ['Unknown validation error'] };
|
package/dist/basis/parser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/basis/parser.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAEjC;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGnD,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;AAE3D;;GAEG;AACH,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC;QACf,QAAQ;QACR,YAAY;QACZ,cAAc;QACd,WAAW;QACX,uBAAuB;QACvB,oBAAoB;QACpB,IAAI;QACJ,QAAQ;QACR,UAAU;QACV,cAAc;QACd,SAAS;QACT,QAAQ;QACR,YAAY;KACb,CAAC;IACF,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE;CACnB,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1B,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACjE,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACjE,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,oBAAoB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC5C,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAC1C,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC9E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,UAAU,EAAE,gBAAgB,CAAC,QAAQ,EAAE;CACxC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1B,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACnC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;IACjC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClC,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC;IACnC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CAC5C,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IACnC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;IACpC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;CAC3B,CAAC,CAAC;AAKH;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,UAAmB;IAChD,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAE3C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACrC,GAAG,CAAC;QACJ,IAAI,EAAE;YACJ,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU;YAC7B,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU;YAC7B,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACzC,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,KAAK,EAAE,CAAC,CAAC,KAAK;aACf,CAAC,CAAC;SACJ;QACD,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/B,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,UAAU,EAAE,CAAC,CAAC,UAAU;SACzB,CAAC,CAAC;KACJ,CAAC,CAAW,CAAC;IAEd,MAAM,CAAC,IAAI,CACT,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,EACxD,kBAAkB,CACnB,CAAC;IAEF,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE;QACvB,IAAI,EAAE,MAAM,CAAC,SAAS;QACtB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,KAAK;QACL,SAAS,EAAE,SAAS;QACpB,SAAS,EAAE,SAAS;KACrB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,UAAmB;IAI9C,IAAI,CAAC;QACH,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACrC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;YAChC,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/basis/parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Provider interface for SVD computation.
|
|
3
|
+
*
|
|
4
|
+
* All implementations must produce results within 1e-6 tolerance of
|
|
5
|
+
* the CPU power-iteration baseline for the same input.
|
|
6
|
+
*/
|
|
7
|
+
export interface GpuSvdProvider {
|
|
8
|
+
/** Check whether this provider's backend is available at runtime. */
|
|
9
|
+
available(): Promise<boolean>;
|
|
10
|
+
/**
|
|
11
|
+
* Compute the top-K singular values of a row-major matrix.
|
|
12
|
+
*
|
|
13
|
+
* @param data Row-major flat Float64Array of the matrix.
|
|
14
|
+
* @param rows Number of rows.
|
|
15
|
+
* @param cols Number of columns.
|
|
16
|
+
* @param k Number of singular values to extract.
|
|
17
|
+
* @returns Float64Array of length min(k, min(rows, cols)) with
|
|
18
|
+
* the top singular values in descending order.
|
|
19
|
+
*/
|
|
20
|
+
topKSingularValues(data: Float64Array, rows: number, cols: number, k: number): Promise<Float64Array>;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* CPU fallback provider that delegates to the existing power-iteration
|
|
24
|
+
* implementation. This is the baseline — all other providers must match
|
|
25
|
+
* its output within 1e-6 tolerance.
|
|
26
|
+
*/
|
|
27
|
+
export declare class CpuFallbackProvider implements GpuSvdProvider {
|
|
28
|
+
available(): Promise<boolean>;
|
|
29
|
+
topKSingularValues(data: Float64Array, rows: number, cols: number, k: number): Promise<Float64Array>;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* WebGPU-based SVD provider.
|
|
33
|
+
*
|
|
34
|
+
* Uses a compute shader for the expensive A^T*A*v products in the power
|
|
35
|
+
* iteration loop. Falls back to CPU if WebGPU is unavailable.
|
|
36
|
+
*
|
|
37
|
+
* Note: This provider is primarily useful in browser or Deno environments
|
|
38
|
+
* that expose the WebGPU API. In Node.js, prefer `OnnxSvdProvider`.
|
|
39
|
+
*/
|
|
40
|
+
export declare class WebGpuSvdProvider implements GpuSvdProvider {
|
|
41
|
+
private device;
|
|
42
|
+
private pipeline;
|
|
43
|
+
private fallback;
|
|
44
|
+
private initPromise;
|
|
45
|
+
/** Power iteration parameters matching the CPU implementation. */
|
|
46
|
+
private static readonly POWER_ITER_MAX;
|
|
47
|
+
private static readonly POWER_ITER_TOL;
|
|
48
|
+
available(): Promise<boolean>;
|
|
49
|
+
topKSingularValues(data: Float64Array, rows: number, cols: number, k: number): Promise<Float64Array>;
|
|
50
|
+
private initGpu;
|
|
51
|
+
private computeOnGpu;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* ONNX Runtime-based SVD provider for Node.js server environments.
|
|
55
|
+
*
|
|
56
|
+
* Uses ONNX Runtime's CUDA execution provider when available, falling
|
|
57
|
+
* back to the CPU execution provider. This is the recommended GPU path
|
|
58
|
+
* for Node.js where WebGPU is not yet available.
|
|
59
|
+
*
|
|
60
|
+
* Implementation strategy: Since ONNX doesn't have a direct SVD op,
|
|
61
|
+
* we implement the same power-iteration algorithm but offload the
|
|
62
|
+
* matrix-vector multiplications (the expensive inner loop) to ONNX
|
|
63
|
+
* Runtime which can run them on GPU via CUDA/cuDNN.
|
|
64
|
+
*/
|
|
65
|
+
export declare class OnnxSvdProvider implements GpuSvdProvider {
|
|
66
|
+
private session;
|
|
67
|
+
private onnxAvailable;
|
|
68
|
+
private executionProvider;
|
|
69
|
+
private fallback;
|
|
70
|
+
private initPromise;
|
|
71
|
+
/** Power iteration parameters matching the CPU implementation. */
|
|
72
|
+
private static readonly POWER_ITER_MAX;
|
|
73
|
+
private static readonly POWER_ITER_TOL;
|
|
74
|
+
available(): Promise<boolean>;
|
|
75
|
+
topKSingularValues(data: Float64Array, rows: number, cols: number, k: number): Promise<Float64Array>;
|
|
76
|
+
/** Returns the active execution provider name ('cuda' or 'cpu'). */
|
|
77
|
+
getExecutionProvider(): string;
|
|
78
|
+
private initOnnx;
|
|
79
|
+
private computeWithOnnx;
|
|
80
|
+
/**
|
|
81
|
+
* GPU-accelerated matrix-vector multiply via ONNX Runtime.
|
|
82
|
+
* Falls back to CPU implementation if ONNX session is unavailable.
|
|
83
|
+
*/
|
|
84
|
+
private onnxMatVecMul;
|
|
85
|
+
/**
|
|
86
|
+
* GPU-accelerated A^T * u via ONNX Runtime.
|
|
87
|
+
*/
|
|
88
|
+
private onnxMatTransVecMul;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Create the best available SVD provider.
|
|
92
|
+
*
|
|
93
|
+
* Auto-detection order:
|
|
94
|
+
* 1. WebGPU (if `preference` is 'gpu' or unset and WebGPU is available)
|
|
95
|
+
* 2. ONNX Runtime with CUDA (if `preference` is 'onnx' or unset and onnxruntime-node is installed)
|
|
96
|
+
* 3. CPU fallback (always available)
|
|
97
|
+
*
|
|
98
|
+
* @param preference - Force a specific provider. Omit to auto-detect.
|
|
99
|
+
* @returns The best available provider.
|
|
100
|
+
*/
|
|
101
|
+
export declare function createSvdProvider(preference?: 'gpu' | 'onnx' | 'cpu'): Promise<GpuSvdProvider>;
|
|
102
|
+
//# sourceMappingURL=gpu-svd.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gpu-svd.d.ts","sourceRoot":"","sources":["../../src/paramesphere/gpu-svd.ts"],"names":[],"mappings":"AA8BA;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,qEAAqE;IACrE,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE9B;;;;;;;;;OASG;IACH,kBAAkB,CAChB,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,CAAC,EAAE,MAAM,GACR,OAAO,CAAC,YAAY,CAAC,CAAC;CAC1B;AAMD;;;;GAIG;AACH,qBAAa,mBAAoB,YAAW,cAAc;IAClD,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAI7B,kBAAkB,CACtB,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,CAAC,EAAE,MAAM,GACR,OAAO,CAAC,YAAY,CAAC;CAGzB;AAiED;;;;;;;;GAQG;AACH,qBAAa,iBAAkB,YAAW,cAAc;IACtD,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,WAAW,CAAiC;IAEpD,kEAAkE;IAClE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAO;IAC7C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAS;IAEzC,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAM7B,kBAAkB,CACtB,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,CAAC,EAAE,MAAM,GACR,OAAO,CAAC,YAAY,CAAC;YAkBV,OAAO;YAoCP,YAAY;CAkI3B;AAMD;;;;;;;;;;;GAWG;AACH,qBAAa,eAAgB,YAAW,cAAc;IACpD,OAAO,CAAC,OAAO,CAAqC;IACpD,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,iBAAiB,CAAiB;IAC1C,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,WAAW,CAAiC;IAEpD,kEAAkE;IAClE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAO;IAC7C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAS;IAEzC,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAM7B,kBAAkB,CACtB,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,CAAC,EAAE,MAAM,GACR,OAAO,CAAC,YAAY,CAAC;IAcxB,oEAAoE;IACpE,oBAAoB,IAAI,MAAM;YAQhB,QAAQ;YAwCR,eAAe;IAwD7B;;;OAGG;YACW,aAAa;IAkC3B;;OAEG;YACW,kBAAkB;CAmCjC;AAmJD;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CACrC,UAAU,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAClC,OAAO,CAAC,cAAc,CAAC,CA0BzB"}
|