webml-kit 0.4.0 → 0.4.1

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 (62) hide show
  1. package/package.json +3 -3
  2. package/dist/cache.d.ts +0 -46
  3. package/dist/cache.d.ts.map +0 -1
  4. package/dist/cache.js +0 -161
  5. package/dist/cache.js.map +0 -1
  6. package/dist/decision.d.ts +0 -182
  7. package/dist/decision.d.ts.map +0 -1
  8. package/dist/decision.js +0 -789
  9. package/dist/decision.js.map +0 -1
  10. package/dist/device.d.ts +0 -86
  11. package/dist/device.d.ts.map +0 -1
  12. package/dist/device.js +0 -195
  13. package/dist/device.js.map +0 -1
  14. package/dist/gpu-recovery.d.ts +0 -61
  15. package/dist/gpu-recovery.d.ts.map +0 -1
  16. package/dist/gpu-recovery.js +0 -105
  17. package/dist/gpu-recovery.js.map +0 -1
  18. package/dist/hub.d.ts +0 -97
  19. package/dist/hub.d.ts.map +0 -1
  20. package/dist/hub.js +0 -142
  21. package/dist/hub.js.map +0 -1
  22. package/dist/index.d.ts +0 -63
  23. package/dist/index.d.ts.map +0 -1
  24. package/dist/index.js +0 -65
  25. package/dist/index.js.map +0 -1
  26. package/dist/inputs.d.ts +0 -27
  27. package/dist/inputs.d.ts.map +0 -1
  28. package/dist/inputs.js +0 -155
  29. package/dist/inputs.js.map +0 -1
  30. package/dist/loader.d.ts +0 -100
  31. package/dist/loader.d.ts.map +0 -1
  32. package/dist/loader.js +0 -246
  33. package/dist/loader.js.map +0 -1
  34. package/dist/model-client.d.ts +0 -149
  35. package/dist/model-client.d.ts.map +0 -1
  36. package/dist/model-client.js +0 -318
  37. package/dist/model-client.js.map +0 -1
  38. package/dist/model-worker.d.ts +0 -16
  39. package/dist/model-worker.d.ts.map +0 -1
  40. package/dist/model-worker.js +0 -340
  41. package/dist/model-worker.js.map +0 -1
  42. package/dist/onnx-pipeline.d.ts +0 -20
  43. package/dist/onnx-pipeline.d.ts.map +0 -1
  44. package/dist/onnx-pipeline.js +0 -462
  45. package/dist/onnx-pipeline.js.map +0 -1
  46. package/dist/pipelines/index.d.ts +0 -28
  47. package/dist/pipelines/index.d.ts.map +0 -1
  48. package/dist/pipelines/index.js +0 -140
  49. package/dist/pipelines/index.js.map +0 -1
  50. package/dist/shim-ort.d.ts +0 -6
  51. package/dist/shim-ort.d.ts.map +0 -1
  52. package/dist/shim-ort.js +0 -38
  53. package/dist/shim-ort.js.map +0 -1
  54. package/dist/streaming.d.ts +0 -55
  55. package/dist/streaming.d.ts.map +0 -1
  56. package/dist/streaming.js +0 -142
  57. package/dist/streaming.js.map +0 -1
  58. package/dist/types.d.ts +0 -200
  59. package/dist/types.d.ts.map +0 -1
  60. package/dist/types.js +0 -3
  61. package/dist/types.js.map +0 -1
  62. package/dist/webml-kit.browser.js +0 -2568
@@ -1,140 +0,0 @@
1
- /**
2
- * Pipeline registry — maps task names to their default configurations.
3
- */
4
- /**
5
- * Registry of pipeline tasks with sensible defaults.
6
- * Users can override any of these when calling `client.load()`.
7
- */
8
- export const PIPELINE_REGISTRY = {
9
- 'text-generation': {
10
- defaultModel: 'onnx-community/Llama-3.2-1B-Instruct-ONNX',
11
- defaultDtype: 'q4',
12
- supportsStreaming: true,
13
- usesKVCache: true,
14
- },
15
- 'text-classification': {
16
- defaultModel: 'Xenova/distilbert-base-uncased-finetuned-sst-2-english',
17
- defaultDtype: 'q8',
18
- supportsStreaming: false,
19
- usesKVCache: false,
20
- },
21
- 'image-classification': {
22
- defaultModel: 'Xenova/vit-base-patch16-224',
23
- defaultDtype: 'fp32',
24
- supportsStreaming: false,
25
- usesKVCache: false,
26
- },
27
- 'object-detection': {
28
- defaultModel: 'Xenova/detr-resnet-50',
29
- defaultDtype: 'fp32',
30
- supportsStreaming: false,
31
- usesKVCache: false,
32
- },
33
- 'automatic-speech-recognition': {
34
- defaultModel: 'onnx-community/whisper-tiny.en',
35
- defaultDtype: 'q8',
36
- supportsStreaming: false,
37
- usesKVCache: false,
38
- },
39
- 'text-to-speech': {
40
- defaultModel: 'onnx-community/Kokoro-82M-v1.0-ONNX',
41
- defaultDtype: 'q8',
42
- supportsStreaming: false,
43
- usesKVCache: false,
44
- },
45
- 'translation': {
46
- defaultModel: 'Xenova/nllb-200-distilled-600M',
47
- defaultDtype: 'q8',
48
- supportsStreaming: false,
49
- usesKVCache: false,
50
- },
51
- 'summarization': {
52
- defaultModel: 'Xenova/distilbart-cnn-6-6',
53
- defaultDtype: 'q8',
54
- supportsStreaming: false,
55
- usesKVCache: false,
56
- },
57
- 'feature-extraction': {
58
- defaultModel: 'Xenova/all-MiniLM-L6-v2',
59
- defaultDtype: 'fp32',
60
- supportsStreaming: false,
61
- usesKVCache: false,
62
- },
63
- 'image-to-text': {
64
- defaultModel: 'Xenova/vit-gpt2-image-captioning',
65
- defaultDtype: 'q8',
66
- supportsStreaming: false,
67
- usesKVCache: false,
68
- },
69
- 'zero-shot-classification': {
70
- defaultModel: 'Xenova/mobilebert-uncased-mnli',
71
- defaultDtype: 'q8',
72
- supportsStreaming: false,
73
- usesKVCache: false,
74
- },
75
- 'fill-mask': {
76
- defaultModel: 'Xenova/bert-base-uncased',
77
- defaultDtype: 'q8',
78
- supportsStreaming: false,
79
- usesKVCache: false,
80
- },
81
- 'question-answering': {
82
- defaultModel: 'Xenova/distilbert-base-uncased-distilled-squad',
83
- defaultDtype: 'q8',
84
- supportsStreaming: false,
85
- usesKVCache: false,
86
- },
87
- 'token-classification': {
88
- defaultModel: 'Xenova/bert-base-NER',
89
- defaultDtype: 'q8',
90
- supportsStreaming: false,
91
- usesKVCache: false,
92
- },
93
- 'depth-estimation': {
94
- defaultModel: 'Xenova/depth-anything-small-hf',
95
- defaultDtype: 'fp32',
96
- supportsStreaming: false,
97
- usesKVCache: false,
98
- },
99
- 'image-segmentation': {
100
- defaultModel: 'Xenova/detr-resnet-50-panoptic',
101
- defaultDtype: 'fp32',
102
- supportsStreaming: false,
103
- usesKVCache: false,
104
- },
105
- 'raw-onnx': {
106
- defaultModel: '',
107
- defaultDtype: 'fp32',
108
- supportsStreaming: false,
109
- usesKVCache: false,
110
- },
111
- 'decision': {
112
- defaultModel: 'qwen3-0.6b',
113
- defaultDtype: 'q4',
114
- supportsStreaming: false,
115
- usesKVCache: false,
116
- },
117
- 'custom': {
118
- defaultModel: '',
119
- defaultDtype: 'fp32',
120
- supportsStreaming: false,
121
- usesKVCache: false,
122
- },
123
- };
124
- /**
125
- * Get the pipeline defaults for a task.
126
- */
127
- export function getPipelineDefaults(task) {
128
- const defaults = PIPELINE_REGISTRY[task];
129
- if (!defaults) {
130
- throw new Error(`Unknown pipeline task: ${task}`);
131
- }
132
- return defaults;
133
- }
134
- /**
135
- * Check if a task supports real-time token streaming.
136
- */
137
- export function supportsStreaming(task) {
138
- return PIPELINE_REGISTRY[task]?.supportsStreaming ?? false;
139
- }
140
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/pipelines/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- declare const ortProxy: any;
2
- export default ortProxy;
3
- export declare const InferenceSession: {};
4
- export declare const Tensor: any;
5
- export declare const env: any;
6
- //# sourceMappingURL=shim-ort.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"shim-ort.d.ts","sourceRoot":"","sources":["../src/shim-ort.ts"],"names":[],"mappings":"AAUA,QAAA,MAAM,QAAQ,EAAE,GAQf,CAAC;AAEF,eAAe,QAAQ,CAAC;AACxB,eAAO,MAAM,gBAAgB,IAO5B,CAAC;AACF,eAAO,MAAM,MAAM,EAAE,GAGpB,CAAC;AACF,eAAO,MAAM,GAAG,EAAE,GAcjB,CAAC"}
package/dist/shim-ort.js DELETED
@@ -1,38 +0,0 @@
1
- /**
2
- * Browser shim for onnxruntime-web when loaded via CDN <script> tag (window.ort).
3
- */
4
- const getOrt = () => {
5
- if (typeof globalThis !== 'undefined' && globalThis.ort) {
6
- return globalThis.ort;
7
- }
8
- return {};
9
- };
10
- const ortProxy = new Proxy({}, {
11
- get(_target, prop) {
12
- const ort = getOrt();
13
- return ort[prop];
14
- },
15
- });
16
- export default ortProxy;
17
- export const InferenceSession = new Proxy({}, {
18
- get(_target, prop) {
19
- return getOrt().InferenceSession?.[prop];
20
- },
21
- });
22
- export const Tensor = function (...args) {
23
- const OrtTensor = getOrt().Tensor;
24
- return new OrtTensor(...args);
25
- };
26
- export const env = new Proxy({}, {
27
- get(_target, prop) {
28
- return getOrt().env?.[prop];
29
- },
30
- set(_target, prop, value) {
31
- const ort = getOrt();
32
- if (ort.env) {
33
- ort.env[prop] = value;
34
- }
35
- return true;
36
- },
37
- });
38
- //# sourceMappingURL=shim-ort.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"shim-ort.js","sourceRoot":"","sources":["../src/shim-ort.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,GAAG,GAAQ,EAAE;IACvB,IAAI,OAAO,UAAU,KAAK,WAAW,IAAK,UAAkB,CAAC,GAAG,EAAE,CAAC;QACjE,OAAQ,UAAkB,CAAC,GAAG,CAAC;IACjC,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAQ,IAAI,KAAK,CAC7B,EAAE,EACF;IACE,GAAG,CAAC,OAAO,EAAE,IAAI;QACf,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;QACrB,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;CACF,CACF,CAAC;AAEF,eAAe,QAAQ,CAAC;AACxB,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,KAAK,CACvC,EAAE,EACF;IACE,GAAG,CAAC,OAAO,EAAE,IAAI;QACf,OAAO,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;CACF,CACF,CAAC;AACF,MAAM,CAAC,MAAM,MAAM,GAAQ,UAAqB,GAAG,IAAW;IAC5D,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC;IAClC,OAAO,IAAI,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;AAChC,CAAC,CAAC;AACF,MAAM,CAAC,MAAM,GAAG,GAAQ,IAAI,KAAK,CAC/B,EAAE,EACF;IACE,GAAG,CAAC,OAAO,EAAE,IAAI;QACf,OAAO,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IACD,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK;QACtB,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;QACrB,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;YACZ,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACxB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CACF,CAAC"}
@@ -1,55 +0,0 @@
1
- /**
2
- * Token streaming utilities for text generation.
3
- *
4
- * Converts the Web Worker's `postMessage`-based token stream into a proper
5
- * `AsyncIterable` with TPS measurement, time-to-first-token tracking,
6
- * and AbortSignal support.
7
- */
8
- import type { TokenEvent } from './types.js';
9
- /**
10
- * A readable token stream that implements `AsyncIterable`.
11
- *
12
- * ```ts
13
- * const stream = new TokenStream();
14
- *
15
- * // In your worker message handler:
16
- * stream.push({ token: 'Hello', tps: 42, numTokens: 1, timeToFirstToken: 120 });
17
- *
18
- * // In your app:
19
- * for await (const event of stream) {
20
- * process.stdout.write(event.token);
21
- * }
22
- * ```
23
- */
24
- export declare class TokenStream implements AsyncIterable<TokenEvent> {
25
- private queue;
26
- private resolve;
27
- private done;
28
- private error;
29
- private abortHandler;
30
- constructor(signal?: AbortSignal);
31
- /** Push a new token event into the stream. */
32
- push(event: TokenEvent): void;
33
- /** Signal that generation is complete. */
34
- end(): void;
35
- /** Signal an error. */
36
- abort(error: Error): void;
37
- /** Get the accumulated error, if any. */
38
- getError(): Error | null;
39
- private cleanup;
40
- [Symbol.asyncIterator](): AsyncIterator<TokenEvent>;
41
- }
42
- /**
43
- * Collect a token stream into a single string result.
44
- *
45
- * ```ts
46
- * const { text, tps, numTokens } = await collectStream(stream);
47
- * ```
48
- */
49
- export declare function collectStream(stream: TokenStream): Promise<{
50
- text: string;
51
- tps: number;
52
- numTokens: number;
53
- timeToFirstToken: number;
54
- }>;
55
- //# sourceMappingURL=streaming.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"streaming.d.ts","sourceRoot":"","sources":["../src/streaming.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C;;;;;;;;;;;;;;GAcG;AACH,qBAAa,WAAY,YAAW,aAAa,CAAC,UAAU,CAAC;IAC3D,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,OAAO,CAA8D;IAC7E,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,KAAK,CAAsB;IACnC,OAAO,CAAC,YAAY,CAA6B;gBAErC,MAAM,CAAC,EAAE,WAAW;IAShC,8CAA8C;IAC9C,IAAI,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAc7B,0CAA0C;IAC1C,GAAG,IAAI,IAAI;IAUX,uBAAuB;IACvB,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAWzB,yCAAyC;IACzC,QAAQ,IAAI,KAAK,GAAG,IAAI;IAIxB,OAAO,CAAC,OAAO;IASf,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,UAAU,CAAC;CAmCpD;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC,CAmBD"}
package/dist/streaming.js DELETED
@@ -1,142 +0,0 @@
1
- /**
2
- * Token streaming utilities for text generation.
3
- *
4
- * Converts the Web Worker's `postMessage`-based token stream into a proper
5
- * `AsyncIterable` with TPS measurement, time-to-first-token tracking,
6
- * and AbortSignal support.
7
- */
8
- /**
9
- * A readable token stream that implements `AsyncIterable`.
10
- *
11
- * ```ts
12
- * const stream = new TokenStream();
13
- *
14
- * // In your worker message handler:
15
- * stream.push({ token: 'Hello', tps: 42, numTokens: 1, timeToFirstToken: 120 });
16
- *
17
- * // In your app:
18
- * for await (const event of stream) {
19
- * process.stdout.write(event.token);
20
- * }
21
- * ```
22
- */
23
- export class TokenStream {
24
- queue = [];
25
- resolve = null;
26
- done = false;
27
- error = null;
28
- abortHandler = null;
29
- constructor(signal) {
30
- if (signal) {
31
- this.abortHandler = () => {
32
- this.abort(new Error('Stream aborted'));
33
- };
34
- signal.addEventListener('abort', this.abortHandler, { once: true });
35
- }
36
- }
37
- /** Push a new token event into the stream. */
38
- push(event) {
39
- if (this.done)
40
- return;
41
- if (this.resolve) {
42
- // A consumer is waiting — deliver immediately
43
- const r = this.resolve;
44
- this.resolve = null;
45
- r({ value: event, done: false });
46
- }
47
- else {
48
- // Buffer until consumed
49
- this.queue.push(event);
50
- }
51
- }
52
- /** Signal that generation is complete. */
53
- end() {
54
- this.done = true;
55
- this.cleanup();
56
- if (this.resolve) {
57
- const r = this.resolve;
58
- this.resolve = null;
59
- r({ value: undefined, done: true });
60
- }
61
- }
62
- /** Signal an error. */
63
- abort(error) {
64
- this.error = error;
65
- this.done = true;
66
- this.cleanup();
67
- if (this.resolve) {
68
- const r = this.resolve;
69
- this.resolve = null;
70
- r({ value: undefined, done: true });
71
- }
72
- }
73
- /** Get the accumulated error, if any. */
74
- getError() {
75
- return this.error;
76
- }
77
- cleanup() {
78
- // Remove abort listener to prevent leaks
79
- if (this.abortHandler) {
80
- this.abortHandler = null;
81
- }
82
- }
83
- // ─── AsyncIterable implementation ───
84
- [Symbol.asyncIterator]() {
85
- return {
86
- next: () => {
87
- // If there's a buffered event, return it immediately
88
- if (this.queue.length > 0) {
89
- return Promise.resolve({
90
- value: this.queue.shift(),
91
- done: false,
92
- });
93
- }
94
- // If the stream is done, signal completion
95
- if (this.done) {
96
- return Promise.resolve({
97
- value: undefined,
98
- done: true,
99
- });
100
- }
101
- // Otherwise, wait for the next push
102
- return new Promise((resolve) => {
103
- this.resolve = resolve;
104
- });
105
- },
106
- return: () => {
107
- this.done = true;
108
- this.cleanup();
109
- return Promise.resolve({
110
- value: undefined,
111
- done: true,
112
- });
113
- },
114
- };
115
- }
116
- }
117
- /**
118
- * Collect a token stream into a single string result.
119
- *
120
- * ```ts
121
- * const { text, tps, numTokens } = await collectStream(stream);
122
- * ```
123
- */
124
- export async function collectStream(stream) {
125
- let text = '';
126
- let tps = 0;
127
- let numTokens = 0;
128
- let timeToFirstToken = 0;
129
- for await (const event of stream) {
130
- text += event.token;
131
- tps = event.tps;
132
- numTokens = event.numTokens;
133
- if (timeToFirstToken === 0) {
134
- timeToFirstToken = event.timeToFirstToken;
135
- }
136
- }
137
- const error = stream.getError();
138
- if (error)
139
- throw error;
140
- return { text, tps, numTokens, timeToFirstToken };
141
- }
142
- //# sourceMappingURL=streaming.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"streaming.js","sourceRoot":"","sources":["../src/streaming.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts DELETED
@@ -1,200 +0,0 @@
1
- export type DeviceBackend = 'webgpu' | 'wasm' | 'cpu';
2
- export interface GPUInfo {
3
- vendor: string;
4
- architecture: string;
5
- description: string;
6
- /** Estimated VRAM in bytes (0 if unknown) */
7
- vram: number;
8
- /** Human-readable VRAM (e.g. '8.0 GB') */
9
- vramFormatted: string;
10
- }
11
- export interface DeviceInfo {
12
- backend: DeviceBackend;
13
- gpu: GPUInfo | null;
14
- /** Recommended dtype based on available VRAM */
15
- recommendedDtype: QuantizationType;
16
- }
17
- export type QuantizationType = 'fp32' | 'fp16' | 'q8' | 'q4' | 'q4f16' | 'q1' | 'int8' | 'uint8';
18
- export type PipelineTask = 'text-generation' | 'text-classification' | 'image-classification' | 'object-detection' | 'automatic-speech-recognition' | 'text-to-speech' | 'translation' | 'summarization' | 'feature-extraction' | 'image-to-text' | 'zero-shot-classification' | 'fill-mask' | 'question-answering' | 'token-classification' | 'depth-estimation' | 'image-segmentation' | 'raw-onnx' | 'decision' | 'custom';
19
- export interface ModelConfig {
20
- task: PipelineTask;
21
- modelId: string;
22
- /** Quantization level. Auto-selected if omitted. */
23
- dtype?: QuantizationType;
24
- /** Device preference. Falls back automatically. */
25
- device?: DeviceBackend;
26
- /** Revision / branch on HuggingFace Hub */
27
- revision?: string;
28
- /** Pipeline runner type: 'transformers' (HF pipeline), 'onnx' (raw/custom ONNX), or 'auto' (smart fallback) */
29
- modelType?: 'transformers' | 'onnx' | 'auto';
30
- /** Custom model filename or URL (e.g. 'sushrota_sanskrit_ctc_int8.onnx' or './model.onnx') */
31
- modelFile?: string;
32
- /** Companion audio preprocessor model filename or URL (e.g. 'preprocessor.onnx') */
33
- preprocessorFile?: string;
34
- /** Vocabulary mapping JSON filename or URL (e.g. 'sanskrit_vocab.json') */
35
- vocabFile?: string;
36
- /** Custom execution providers override, e.g. ['wasm'] or ['webgpu', 'wasm'] */
37
- executionProviders?: string[];
38
- /** Enable persistent browser Cache API storage for downloaded ONNX models (defaults to true) */
39
- cache?: boolean;
40
- /** Custom cache name (defaults to 'webml-kit-onnx-cache') */
41
- cacheName?: string;
42
- }
43
- export interface ProgressEvent {
44
- status: 'downloading' | 'loading' | 'compiling' | 'warming' | 'ready';
45
- /** File being downloaded */
46
- file?: string;
47
- /** Bytes loaded so far */
48
- loaded: number;
49
- /** Total bytes */
50
- total: number;
51
- /** 0-100 */
52
- percent: number;
53
- }
54
- export type ProgressCallback = (event: ProgressEvent) => void;
55
- export interface TokenEvent {
56
- /** The decoded text token */
57
- token: string;
58
- /** Tokens per second (0 until second token) */
59
- tps: number;
60
- /** Total tokens generated so far */
61
- numTokens: number;
62
- /** Milliseconds from request to first token */
63
- timeToFirstToken: number;
64
- }
65
- export interface ChatMessage {
66
- role: 'system' | 'user' | 'assistant';
67
- content: string;
68
- }
69
- export interface TextGenerationOptions {
70
- maxNewTokens?: number;
71
- temperature?: number;
72
- topP?: number;
73
- topK?: number;
74
- doSample?: boolean;
75
- repetitionPenalty?: number;
76
- /** Abort signal for cancellation */
77
- signal?: AbortSignal;
78
- }
79
- export interface TextGenerationResult {
80
- text: string;
81
- numTokens: number;
82
- tps: number;
83
- timeToFirstToken: number;
84
- totalTime: number;
85
- }
86
- export interface ClassificationResult {
87
- label: string;
88
- score: number;
89
- }
90
- export interface DetectionResult {
91
- label: string;
92
- score: number;
93
- box: {
94
- xmin: number;
95
- ymin: number;
96
- xmax: number;
97
- ymax: number;
98
- };
99
- }
100
- export interface TranscriptionResult {
101
- text: string;
102
- chunks?: Array<{
103
- text: string;
104
- timestamp: [number, number];
105
- }>;
106
- language?: string;
107
- }
108
- export interface EmbeddingResult {
109
- embedding: Float32Array;
110
- dimensions: number;
111
- }
112
- export interface CaptionResult {
113
- text: string;
114
- }
115
- export interface TextResult {
116
- text: string;
117
- }
118
- export type CacheBackend = 'cache-api' | 'opfs' | 'indexeddb';
119
- export interface CachedModel {
120
- modelId: string;
121
- /** Raw byte count */
122
- sizeBytes: number;
123
- /** Human-readable size (e.g. '412.0 MB') */
124
- size: string;
125
- lastAccessed: Date;
126
- }
127
- export type WorkerCommand = {
128
- type: 'check';
129
- } | {
130
- type: 'load';
131
- config: ModelConfig;
132
- } | {
133
- type: 'run';
134
- id: string;
135
- task: PipelineTask;
136
- input: unknown;
137
- options?: unknown;
138
- } | {
139
- type: 'interrupt';
140
- } | {
141
- type: 'reset';
142
- } | {
143
- type: 'dispose';
144
- modelKey?: string;
145
- } | {
146
- type: 'cache-status';
147
- modelId: string;
148
- } | {
149
- type: 'cache-clear';
150
- modelId?: string;
151
- };
152
- export type WorkerResponse = {
153
- type: 'device-info';
154
- data: DeviceInfo;
155
- } | {
156
- type: 'progress';
157
- data: ProgressEvent;
158
- } | {
159
- type: 'ready';
160
- modelKey: string;
161
- } | {
162
- type: 'token';
163
- id: string;
164
- data: TokenEvent;
165
- } | {
166
- type: 'result';
167
- id: string;
168
- data: unknown;
169
- } | {
170
- type: 'error';
171
- id: string;
172
- data: string;
173
- } | {
174
- type: 'device-lost';
175
- reason: string;
176
- } | {
177
- type: 'device-recovered';
178
- } | {
179
- type: 'cache-info';
180
- data: {
181
- cached: boolean;
182
- size?: number;
183
- };
184
- };
185
- export interface ModelClientEvents {
186
- progress: ProgressEvent;
187
- ready: {
188
- modelKey: string;
189
- };
190
- token: TokenEvent;
191
- error: {
192
- message: string;
193
- id?: string;
194
- };
195
- 'device-lost': {
196
- reason: string;
197
- };
198
- 'device-recovered': void;
199
- }
200
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js DELETED
@@ -1,3 +0,0 @@
1
- // ─── Device ───
2
- export {};
3
- //# sourceMappingURL=types.js.map
package/dist/types.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,iBAAiB"}