webml-kit 0.3.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 (54) hide show
  1. package/README.md +39 -0
  2. package/package.json +17 -5
  3. package/dist/cache.d.ts +0 -46
  4. package/dist/cache.d.ts.map +0 -1
  5. package/dist/cache.js +0 -160
  6. package/dist/cache.js.map +0 -1
  7. package/dist/device.d.ts +0 -86
  8. package/dist/device.d.ts.map +0 -1
  9. package/dist/device.js +0 -195
  10. package/dist/device.js.map +0 -1
  11. package/dist/gpu-recovery.d.ts +0 -61
  12. package/dist/gpu-recovery.d.ts.map +0 -1
  13. package/dist/gpu-recovery.js +0 -105
  14. package/dist/gpu-recovery.js.map +0 -1
  15. package/dist/hub.d.ts +0 -97
  16. package/dist/hub.d.ts.map +0 -1
  17. package/dist/hub.js +0 -142
  18. package/dist/hub.js.map +0 -1
  19. package/dist/index.d.ts +0 -61
  20. package/dist/index.d.ts.map +0 -1
  21. package/dist/index.js +0 -63
  22. package/dist/index.js.map +0 -1
  23. package/dist/inputs.d.ts +0 -27
  24. package/dist/inputs.d.ts.map +0 -1
  25. package/dist/inputs.js +0 -123
  26. package/dist/inputs.js.map +0 -1
  27. package/dist/loader.d.ts +0 -87
  28. package/dist/loader.d.ts.map +0 -1
  29. package/dist/loader.js +0 -156
  30. package/dist/loader.js.map +0 -1
  31. package/dist/model-client.d.ts +0 -149
  32. package/dist/model-client.d.ts.map +0 -1
  33. package/dist/model-client.js +0 -318
  34. package/dist/model-client.js.map +0 -1
  35. package/dist/model-worker.d.ts +0 -16
  36. package/dist/model-worker.d.ts.map +0 -1
  37. package/dist/model-worker.js +0 -340
  38. package/dist/model-worker.js.map +0 -1
  39. package/dist/onnx-pipeline.d.ts +0 -20
  40. package/dist/onnx-pipeline.d.ts.map +0 -1
  41. package/dist/onnx-pipeline.js +0 -385
  42. package/dist/onnx-pipeline.js.map +0 -1
  43. package/dist/pipelines/index.d.ts +0 -28
  44. package/dist/pipelines/index.d.ts.map +0 -1
  45. package/dist/pipelines/index.js +0 -134
  46. package/dist/pipelines/index.js.map +0 -1
  47. package/dist/streaming.d.ts +0 -55
  48. package/dist/streaming.d.ts.map +0 -1
  49. package/dist/streaming.js +0 -142
  50. package/dist/streaming.js.map +0 -1
  51. package/dist/types.d.ts +0 -196
  52. package/dist/types.d.ts.map +0 -1
  53. package/dist/types.js +0 -3
  54. package/dist/types.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"model-worker.js","sourceRoot":"","sources":["../src/model-worker.ts"],"names":[],"mappings":"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"}
@@ -1,20 +0,0 @@
1
- /**
2
- * Direct ONNX Runtime Web pipeline runner.
3
- *
4
- * Supports standalone and custom ONNX models that do not use Hugging Face
5
- * Transformers architecture (such as NeMo Conformer-CTC ASR models,
6
- * standalone vision models, or raw ONNX models).
7
- */
8
- import * as ort from 'onnxruntime-web';
9
- import type { ModelConfig, ProgressCallback } from './types.js';
10
- export interface OnnxPipelineInstance {
11
- (input: unknown, options?: Record<string, unknown>): Promise<unknown>;
12
- sessions: ort.InferenceSession[];
13
- backend: 'webgpu' | 'wasm';
14
- dispose: () => void;
15
- }
16
- export declare function decodeWavToFloat32(buffer: ArrayBuffer): Float32Array;
17
- export declare function toFloat32Array(input: unknown): Float32Array;
18
- export declare function decodeCTC(logprobs: Float32Array, timeSteps: number, numClasses: number, vocab: Record<number | string, string> | string[]): string;
19
- export declare function createOnnxPipeline(config: ModelConfig, onProgress?: ProgressCallback): Promise<OnnxPipelineInstance>;
20
- //# sourceMappingURL=onnx-pipeline.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"onnx-pipeline.d.ts","sourceRoot":"","sources":["../src/onnx-pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,GAAG,MAAM,iBAAiB,CAAC;AACvC,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAQhE,MAAM,WAAW,oBAAoB;IACnC,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACtE,QAAQ,EAAE,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACjC,OAAO,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAoID,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,GAAG,YAAY,CA0EpE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,YAAY,CAS3D;AAID,wBAAgB,SAAS,CACvB,QAAQ,EAAE,YAAY,EACtB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,GAChD,MAAM,CA+BR;AAID,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,WAAW,EACnB,UAAU,CAAC,EAAE,gBAAgB,GAC5B,OAAO,CAAC,oBAAoB,CAAC,CA2K/B"}
@@ -1,385 +0,0 @@
1
- /**
2
- * Direct ONNX Runtime Web pipeline runner.
3
- *
4
- * Supports standalone and custom ONNX models that do not use Hugging Face
5
- * Transformers architecture (such as NeMo Conformer-CTC ASR models,
6
- * standalone vision models, or raw ONNX models).
7
- */
8
- import * as ort from 'onnxruntime-web';
9
- // Configure ONNX Runtime WebAssembly environment
10
- ort.env.wasm.simd = true;
11
- if (typeof navigator !== 'undefined' && navigator.hardwareConcurrency) {
12
- ort.env.wasm.numThreads = Math.min(navigator.hardwareConcurrency, 4);
13
- }
14
- // ─── Asset Resolution Helpers ───
15
- const HF_BASE = 'https://huggingface.co';
16
- async function fetchRepoFiles(modelId) {
17
- try {
18
- const res = await fetch(`https://huggingface.co/api/models/${modelId}`);
19
- if (!res.ok)
20
- return [];
21
- const data = await res.json();
22
- return (data.siblings ?? []).map(s => s.rfilename);
23
- }
24
- catch {
25
- return [];
26
- }
27
- }
28
- function resolveAssetUrl(modelId, filename, revision = 'main') {
29
- if (filename.startsWith('http://') || filename.startsWith('https://') || filename.startsWith('/') || filename.startsWith('./')) {
30
- return filename;
31
- }
32
- return `${HF_BASE}/${modelId}/resolve/${revision}/${filename}`;
33
- }
34
- async function downloadAsset(url, fileName, onProgress) {
35
- if (typeof process !== 'undefined' &&
36
- process.versions?.node &&
37
- !url.startsWith('http://') &&
38
- !url.startsWith('https://')) {
39
- const fs = await import('node:fs/promises');
40
- const path = url.startsWith('file://') ? new URL(url) : url;
41
- const buf = await fs.readFile(path);
42
- onProgress?.({
43
- status: 'downloading',
44
- file: fileName,
45
- loaded: buf.byteLength,
46
- total: buf.byteLength,
47
- percent: 100,
48
- });
49
- return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
50
- }
51
- const response = await fetch(url);
52
- if (!response.ok) {
53
- throw new Error(`Failed to fetch ${fileName} from ${url}: ${response.status} ${response.statusText}`);
54
- }
55
- const contentLength = response.headers.get('content-length');
56
- const total = contentLength ? parseInt(contentLength, 10) : 0;
57
- if (!response.body || total === 0) {
58
- const buffer = await response.arrayBuffer();
59
- onProgress?.({
60
- status: 'downloading',
61
- file: fileName,
62
- loaded: buffer.byteLength,
63
- total: buffer.byteLength,
64
- percent: 100,
65
- });
66
- return buffer;
67
- }
68
- const reader = response.body.getReader();
69
- const chunks = [];
70
- let loaded = 0;
71
- while (true) {
72
- const { done, value } = await reader.read();
73
- if (done)
74
- break;
75
- if (value) {
76
- chunks.push(value);
77
- loaded += value.length;
78
- const percent = total > 0 ? Math.round((loaded / total) * 100) : 0;
79
- onProgress?.({
80
- status: 'downloading',
81
- file: fileName,
82
- loaded,
83
- total,
84
- percent,
85
- });
86
- }
87
- }
88
- const merged = new Uint8Array(loaded);
89
- let offset = 0;
90
- for (const chunk of chunks) {
91
- merged.set(chunk, offset);
92
- offset += chunk.length;
93
- }
94
- return merged.buffer;
95
- }
96
- // ─── Session Management with Fallback ───
97
- async function createSession(modelBufferOrPath, preferredBackend = 'webgpu') {
98
- const model = modelBufferOrPath instanceof ArrayBuffer
99
- ? new Uint8Array(modelBufferOrPath)
100
- : modelBufferOrPath;
101
- if (preferredBackend === 'webgpu') {
102
- try {
103
- const session = await ort.InferenceSession.create(model, {
104
- executionProviders: ['webgpu'],
105
- });
106
- return { session, backend: 'webgpu' };
107
- }
108
- catch (err) {
109
- console.warn('WebGPU session creation failed, falling back to wasm:', err);
110
- }
111
- }
112
- const session = await ort.InferenceSession.create(model, {
113
- executionProviders: ['wasm'],
114
- });
115
- return { session, backend: 'wasm' };
116
- }
117
- // ─── Audio Helpers ───
118
- export function decodeWavToFloat32(buffer) {
119
- const view = new DataView(buffer);
120
- // Check 'RIFF' and 'WAVE'
121
- const riff = String.fromCharCode(view.getUint8(0), view.getUint8(1), view.getUint8(2), view.getUint8(3));
122
- const wave = String.fromCharCode(view.getUint8(8), view.getUint8(9), view.getUint8(10), view.getUint8(11));
123
- if (riff !== 'RIFF' || wave !== 'WAVE') {
124
- // If not a valid WAV header, treat as raw Float32Array
125
- return new Float32Array(buffer);
126
- }
127
- let offset = 12;
128
- let audioFormat = 1;
129
- let numChannels = 1;
130
- let bitsPerSample = 16;
131
- let dataOffset = 0;
132
- let dataLength = 0;
133
- while (offset < view.byteLength - 8) {
134
- const chunkId = String.fromCharCode(view.getUint8(offset), view.getUint8(offset + 1), view.getUint8(offset + 2), view.getUint8(offset + 3));
135
- const chunkSize = view.getUint32(offset + 4, true);
136
- if (chunkId === 'fmt ') {
137
- audioFormat = view.getUint16(offset + 8, true);
138
- numChannels = view.getUint16(offset + 10, true);
139
- bitsPerSample = view.getUint16(offset + 22, true);
140
- }
141
- else if (chunkId === 'data') {
142
- dataOffset = offset + 8;
143
- dataLength = chunkSize;
144
- break;
145
- }
146
- offset += 8 + chunkSize;
147
- }
148
- if (dataOffset === 0) {
149
- return new Float32Array(buffer);
150
- }
151
- if (audioFormat === 1 && bitsPerSample === 16) {
152
- // 16-bit PCM
153
- const numSamples = Math.floor(dataLength / (2 * numChannels));
154
- const pcm = new Float32Array(numSamples);
155
- for (let i = 0; i < numSamples; i++) {
156
- let sum = 0;
157
- for (let c = 0; c < numChannels; c++) {
158
- const idx = dataOffset + (i * numChannels + c) * 2;
159
- if (idx + 1 < view.byteLength) {
160
- sum += view.getInt16(idx, true) / 32768.0;
161
- }
162
- }
163
- pcm[i] = sum / numChannels;
164
- }
165
- return pcm;
166
- }
167
- if (audioFormat === 3 && bitsPerSample === 32) {
168
- // 32-bit Float
169
- const numSamples = Math.floor(dataLength / (4 * numChannels));
170
- const pcm = new Float32Array(numSamples);
171
- for (let i = 0; i < numSamples; i++) {
172
- let sum = 0;
173
- for (let c = 0; c < numChannels; c++) {
174
- const idx = dataOffset + (i * numChannels + c) * 4;
175
- if (idx + 3 < view.byteLength) {
176
- sum += view.getFloat32(idx, true);
177
- }
178
- }
179
- pcm[i] = sum / numChannels;
180
- }
181
- return pcm;
182
- }
183
- return new Float32Array(buffer.slice(dataOffset, dataOffset + dataLength));
184
- }
185
- export function toFloat32Array(input) {
186
- if (input instanceof Float32Array)
187
- return input;
188
- if (Array.isArray(input))
189
- return new Float32Array(input);
190
- if (input instanceof ArrayBuffer)
191
- return decodeWavToFloat32(input);
192
- if (ArrayBuffer.isView(input))
193
- return new Float32Array(input.buffer, input.byteOffset, input.byteLength / 4);
194
- if (typeof input === 'object' && input !== null && 'audio' in input) {
195
- return toFloat32Array(input.audio);
196
- }
197
- throw new Error(`Unsupported audio input format: ${typeof input}`);
198
- }
199
- // ─── CTC Greedy Decoding ───
200
- export function decodeCTC(logprobs, timeSteps, numClasses, vocab) {
201
- let prevClass = 0;
202
- let text = '';
203
- for (let t = 0; t < timeSteps; t++) {
204
- const offset = t * numClasses;
205
- let maxVal = -Infinity;
206
- let argmax = 0;
207
- for (let c = 0; c < numClasses; c++) {
208
- const val = logprobs[offset + c];
209
- if (val > maxVal) {
210
- maxVal = val;
211
- argmax = c;
212
- }
213
- }
214
- if (argmax === 0) {
215
- prevClass = 0;
216
- continue;
217
- }
218
- if (argmax !== prevClass) {
219
- const token = vocab[argmax] ?? '';
220
- text += token;
221
- prevClass = argmax;
222
- }
223
- }
224
- // Replace SentencePiece whitespace marker ' ' (U+2581) with normal space
225
- return text.replace(/\u2581/g, ' ').replace(/\s+/g, ' ').trim();
226
- }
227
- // ─── Main Pipeline Factory ───
228
- export async function createOnnxPipeline(config, onProgress) {
229
- const preferredDevice = config.device ?? 'webgpu';
230
- const revision = config.revision ?? 'main';
231
- // 1. Discover model files
232
- let modelFile = config.modelFile;
233
- let preprocessorFile = config.preprocessorFile;
234
- let vocabFile = config.vocabFile;
235
- if (!modelFile && !config.modelId.endsWith('.onnx')) {
236
- const repoFiles = await fetchRepoFiles(config.modelId);
237
- if (repoFiles.length > 0) {
238
- if (!modelFile) {
239
- // Look for acoustic / CTC / model ONNX
240
- modelFile = repoFiles.find(f => f.endsWith('.onnx') && !f.includes('preprocess'))
241
- ?? repoFiles.find(f => f.endsWith('.onnx'));
242
- }
243
- if (!preprocessorFile) {
244
- preprocessorFile = repoFiles.find(f => f.endsWith('.onnx') && f.includes('preprocess'));
245
- }
246
- if (!vocabFile) {
247
- vocabFile = repoFiles.find(f => f.endsWith('.json') && (f.includes('vocab') || f.includes('tokens')));
248
- }
249
- }
250
- }
251
- if (!modelFile) {
252
- modelFile = config.modelId.endsWith('.onnx') ? config.modelId : 'model.onnx';
253
- }
254
- const modelUrl = resolveAssetUrl(config.modelId, modelFile, revision);
255
- const modelBuffer = await downloadAsset(modelUrl, modelFile, onProgress);
256
- // Preprocessor (optional companion model for ASR/audio)
257
- let prepSession = null;
258
- if (preprocessorFile) {
259
- const prepUrl = resolveAssetUrl(config.modelId, preprocessorFile, revision);
260
- const prepBuffer = await downloadAsset(prepUrl, preprocessorFile, onProgress);
261
- const { session } = await createSession(prepBuffer, preferredDevice);
262
- prepSession = session;
263
- }
264
- // Vocab (optional mapping for CTC decoding)
265
- let vocab = {};
266
- if (vocabFile) {
267
- const vocabUrl = resolveAssetUrl(config.modelId, vocabFile, revision);
268
- try {
269
- if (typeof process !== 'undefined' &&
270
- process.versions?.node &&
271
- !vocabUrl.startsWith('http://') &&
272
- !vocabUrl.startsWith('https://')) {
273
- const fs = await import('node:fs/promises');
274
- const path = vocabUrl.startsWith('file://') ? new URL(vocabUrl) : vocabUrl;
275
- const text = await fs.readFile(path, 'utf-8');
276
- vocab = JSON.parse(text);
277
- }
278
- else {
279
- const res = await fetch(vocabUrl);
280
- if (res.ok) {
281
- vocab = await res.json();
282
- }
283
- }
284
- }
285
- catch {
286
- // Non-fatal if vocab fails to load
287
- }
288
- }
289
- // Create primary session with WebGPU -> WASM fallback
290
- let { session: modelSession, backend } = await createSession(modelBuffer, preferredDevice);
291
- // ─── ASR Pipeline Function ───
292
- if (config.task === 'automatic-speech-recognition') {
293
- const runner = async (input) => {
294
- const pcm = toFloat32Array(input);
295
- const executeInference = async (sess) => {
296
- let acousticSignal;
297
- let acousticLength;
298
- if (prepSession) {
299
- // Mel filterbank extraction
300
- const audioTensor = new ort.Tensor('float32', pcm, [1, pcm.length]);
301
- const lengthTensor = new ort.Tensor('int64', BigInt64Array.from([BigInt(pcm.length)]), [1]);
302
- const prepOutputs = await prepSession.run({
303
- audio_signal: audioTensor,
304
- length: lengthTensor,
305
- });
306
- acousticSignal = (prepOutputs.processed_signal ?? Object.values(prepOutputs)[0]);
307
- acousticLength = (prepOutputs.processed_length ?? Object.values(prepOutputs)[1]);
308
- }
309
- else {
310
- // Pass raw audio directly
311
- acousticSignal = new ort.Tensor('float32', pcm, [1, pcm.length]);
312
- acousticLength = new ort.Tensor('int64', BigInt64Array.from([BigInt(pcm.length)]), [1]);
313
- }
314
- // Acoustic model inference
315
- const feeds = {};
316
- const inputNames = sess.inputNames;
317
- if (inputNames.length >= 2) {
318
- feeds[inputNames[0]] = acousticSignal;
319
- feeds[inputNames[1]] = acousticLength;
320
- }
321
- else if (inputNames.length === 1) {
322
- feeds[inputNames[0]] = acousticSignal;
323
- }
324
- const outputs = await sess.run(feeds);
325
- const logprobsTensor = (outputs.logprobs ?? Object.values(outputs)[0]);
326
- const dims = logprobsTensor.dims;
327
- const timeSteps = dims.length === 3 ? dims[1] : (dims.length === 2 ? dims[0] : 1);
328
- const numClasses = dims[dims.length - 1];
329
- const data = logprobsTensor.data;
330
- const text = decodeCTC(data, timeSteps, numClasses, vocab);
331
- return { text };
332
- };
333
- try {
334
- return await executeInference(modelSession);
335
- }
336
- catch (err) {
337
- // If WebGPU failed (e.g. 1D conv kernel failure), fallback to WASM transparently
338
- if (backend === 'webgpu') {
339
- console.warn('WebGPU inference failed, retrying on WASM provider:', err);
340
- const wasmResult = await createSession(modelBuffer, 'wasm');
341
- modelSession = wasmResult.session;
342
- backend = 'wasm';
343
- return await executeInference(modelSession);
344
- }
345
- throw err;
346
- }
347
- };
348
- const instance = runner;
349
- instance.sessions = prepSession ? [prepSession, modelSession] : [modelSession];
350
- instance.backend = backend;
351
- instance.dispose = () => {
352
- prepSession?.release();
353
- modelSession.release();
354
- };
355
- return instance;
356
- }
357
- // ─── Generic / Raw ONNX Pipeline Function ───
358
- const genericRunner = async (input) => {
359
- const feeds = {};
360
- if (typeof input === 'object' && input !== null) {
361
- for (const [k, v] of Object.entries(input)) {
362
- if (v instanceof ort.Tensor) {
363
- feeds[k] = v;
364
- }
365
- else if (v instanceof Float32Array) {
366
- feeds[k] = new ort.Tensor('float32', v, [1, v.length]);
367
- }
368
- }
369
- }
370
- const outputs = await modelSession.run(feeds);
371
- const result = {};
372
- for (const [k, v] of Object.entries(outputs)) {
373
- result[k] = v.data;
374
- }
375
- return result;
376
- };
377
- const instance = genericRunner;
378
- instance.sessions = [modelSession];
379
- instance.backend = backend;
380
- instance.dispose = () => {
381
- modelSession.release();
382
- };
383
- return instance;
384
- }
385
- //# sourceMappingURL=onnx-pipeline.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"onnx-pipeline.js","sourceRoot":"","sources":["../src/onnx-pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,GAAG,MAAM,iBAAiB,CAAC;AAGvC,iDAAiD;AACjD,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;AACzB,IAAI,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS,CAAC,mBAAmB,EAAE,CAAC;IACtE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;AACvE,CAAC;AAaD,mCAAmC;AAEnC,MAAM,OAAO,GAAG,wBAAwB,CAAC;AAEzC,KAAK,UAAU,cAAc,CAAC,OAAe;IAC3C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,qCAAqC,OAAO,EAAE,CAAC,CAAC;QACxE,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,OAAO,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,OAAQ,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACrE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,OAAe,EAAE,QAAgB,EAAE,QAAQ,GAAG,MAAM;IAC3E,IAAI,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/H,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,GAAG,OAAO,IAAI,OAAO,YAAY,QAAQ,IAAI,QAAQ,EAAE,CAAC;AACjE,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,GAAW,EACX,QAAgB,EAChB,UAA6B;IAE7B,IACE,OAAO,OAAO,KAAK,WAAW;QAC9B,OAAO,CAAC,QAAQ,EAAE,IAAI;QACtB,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC;QAC1B,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,EAC3B,CAAC;QACD,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAC5C,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC5D,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpC,UAAU,EAAE,CAAC;YACX,MAAM,EAAE,aAAa;YACrB,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,GAAG,CAAC,UAAU;YACtB,KAAK,EAAE,GAAG,CAAC,UAAU;YACrB,OAAO,EAAE,GAAG;SACb,CAAC,CAAC;QACH,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,SAAS,GAAG,KAAK,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IACxG,CAAC;IAED,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC7D,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE9D,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC5C,UAAU,EAAE,CAAC;YACX,MAAM,EAAE,aAAa;YACrB,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,MAAM,CAAC,UAAU;YACzB,KAAK,EAAE,MAAM,CAAC,UAAU;YACxB,OAAO,EAAE,GAAG;SACb,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;IACzC,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,IAAI;YAAE,MAAM;QAChB,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;YACvB,MAAM,OAAO,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACnE,UAAU,EAAE,CAAC;gBACX,MAAM,EAAE,aAAa;gBACrB,IAAI,EAAE,QAAQ;gBACd,MAAM;gBACN,KAAK;gBACL,OAAO;aACR,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;IACzB,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC;AACvB,CAAC;AAED,2CAA2C;AAE3C,KAAK,UAAU,aAAa,CAC1B,iBAAoD,EACpD,mBAA8C,QAAQ;IAEtD,MAAM,KAAK,GAAG,iBAAiB,YAAY,WAAW;QACpD,CAAC,CAAC,IAAI,UAAU,CAAC,iBAAiB,CAAC;QACnC,CAAC,CAAC,iBAAiB,CAAC;IAEtB,IAAI,gBAAgB,KAAK,QAAQ,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAY,EAAE;gBAC9D,kBAAkB,EAAE,CAAC,QAAQ,CAAC;aAC/B,CAAC,CAAC;YACH,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;QACxC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,uDAAuD,EAAE,GAAG,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAY,EAAE;QAC9D,kBAAkB,EAAE,CAAC,MAAM,CAAC;KAC7B,CAAC,CAAC;IACH,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AACtC,CAAC;AAED,wBAAwB;AAExB,MAAM,UAAU,kBAAkB,CAAC,MAAmB;IACpD,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,0BAA0B;IAC1B,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACzG,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3G,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACvC,uDAAuD;QACvD,OAAO,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,aAAa,GAAG,EAAE,CAAC;IACvB,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,UAAU,GAAG,CAAC,CAAC;IAEnB,OAAO,MAAM,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,CACjC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CACvG,CAAC;QACF,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;QAEnD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;YACvB,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;YAC/C,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;YAChD,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;QACpD,CAAC;aAAM,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;YAC9B,UAAU,GAAG,MAAM,GAAG,CAAC,CAAC;YACxB,UAAU,GAAG,SAAS,CAAC;YACvB,MAAM;QACR,CAAC;QACD,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IAC1B,CAAC;IAED,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,WAAW,KAAK,CAAC,IAAI,aAAa,KAAK,EAAE,EAAE,CAAC;QAC9C,aAAa;QACb,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC;QAC9D,MAAM,GAAG,GAAG,IAAI,YAAY,CAAC,UAAU,CAAC,CAAC;QACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;YACpC,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;gBACrC,MAAM,GAAG,GAAG,UAAU,GAAG,CAAC,CAAC,GAAG,WAAW,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;gBACnD,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;oBAC9B,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC;gBAC5C,CAAC;YACH,CAAC;YACD,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,WAAW,CAAC;QAC7B,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,WAAW,KAAK,CAAC,IAAI,aAAa,KAAK,EAAE,EAAE,CAAC;QAC9C,eAAe;QACf,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC;QAC9D,MAAM,GAAG,GAAG,IAAI,YAAY,CAAC,UAAU,CAAC,CAAC;QACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;YACpC,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;gBACrC,MAAM,GAAG,GAAG,UAAU,GAAG,CAAC,CAAC,GAAG,WAAW,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;gBACnD,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;oBAC9B,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBACpC,CAAC;YACH,CAAC;YACD,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,WAAW,CAAC;QAC7B,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,OAAO,IAAI,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,IAAI,KAAK,YAAY,YAAY;QAAE,OAAO,KAAK,CAAC;IAChD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC;IACzD,IAAI,KAAK,YAAY,WAAW;QAAE,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACnE,IAAI,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;IAC7G,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;QACpE,OAAO,cAAc,CAAE,KAA4B,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,mCAAmC,OAAO,KAAK,EAAE,CAAC,CAAC;AACrE,CAAC;AAED,8BAA8B;AAE9B,MAAM,UAAU,SAAS,CACvB,QAAsB,EACtB,SAAiB,EACjB,UAAkB,EAClB,KAAiD;IAEjD,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,IAAI,GAAG,EAAE,CAAC;IAEd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,CAAC,GAAG,UAAU,CAAC;QAC9B,IAAI,MAAM,GAAG,CAAC,QAAQ,CAAC;QACvB,IAAI,MAAM,GAAG,CAAC,CAAC;QAEf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;YACpC,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACjC,IAAI,GAAG,GAAG,MAAM,EAAE,CAAC;gBACjB,MAAM,GAAG,GAAG,CAAC;gBACb,MAAM,GAAG,CAAC,CAAC;YACb,CAAC;QACH,CAAC;QAED,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;YACjB,SAAS,GAAG,CAAC,CAAC;YACd,SAAS;QACX,CAAC;QAED,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,KAAK,GAAI,KAAgC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAC9D,IAAI,IAAI,KAAK,CAAC;YACd,SAAS,GAAG,MAAM,CAAC;QACrB,CAAC;IACH,CAAC;IAED,yEAAyE;IACzE,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AAClE,CAAC;AAED,gCAAgC;AAEhC,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAmB,EACnB,UAA6B;IAE7B,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,IAAI,QAAQ,CAAC;IAClD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC;IAE3C,0BAA0B;IAC1B,IAAI,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IACjC,IAAI,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;IAC/C,IAAI,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;IAEjC,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACpD,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,uCAAuC;gBACvC,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;uBAC5E,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YAChD,CAAC;YACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,gBAAgB,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;YAC1F,CAAC;YACD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACxG,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC;IAC/E,CAAC;IAED,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACtE,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAEzE,wDAAwD;IACxD,IAAI,WAAW,GAAgC,IAAI,CAAC;IACpD,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QAC5E,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,OAAO,EAAE,gBAAgB,EAAE,UAAU,CAAC,CAAC;QAC9E,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QACrE,WAAW,GAAG,OAAO,CAAC;IACxB,CAAC;IAED,4CAA4C;IAC5C,IAAI,KAAK,GAAsC,EAAE,CAAC;IAClD,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QACtE,IAAI,CAAC;YACH,IACE,OAAO,OAAO,KAAK,WAAW;gBAC9B,OAAO,CAAC,QAAQ,EAAE,IAAI;gBACtB,CAAC,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC;gBAC/B,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,EAChC,CAAC;gBACD,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;gBAC5C,MAAM,IAAI,GAAG,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;gBAC3E,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC9C,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;gBAClC,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;oBACX,KAAK,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;gBAC3B,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,mCAAmC;QACrC,CAAC;IACH,CAAC;IAED,sDAAsD;IACtD,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,MAAM,aAAa,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IAE3F,gCAAgC;IAChC,IAAI,MAAM,CAAC,IAAI,KAAK,8BAA8B,EAAE,CAAC;QACnD,MAAM,MAAM,GAAG,KAAK,EAAE,KAAc,EAA6B,EAAE;YACjE,MAAM,GAAG,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YAElC,MAAM,gBAAgB,GAAG,KAAK,EAAE,IAA0B,EAA6B,EAAE;gBACvF,IAAI,cAA0B,CAAC;gBAC/B,IAAI,cAA0B,CAAC;gBAE/B,IAAI,WAAW,EAAE,CAAC;oBAChB,4BAA4B;oBAC5B,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;oBACpE,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC5F,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC;wBACxC,YAAY,EAAE,WAAW;wBACzB,MAAM,EAAE,YAAY;qBACrB,CAAC,CAAC;oBAEH,cAAc,GAAG,CAAC,WAAW,CAAC,gBAAgB,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAe,CAAC;oBAC/F,cAAc,GAAG,CAAC,WAAW,CAAC,gBAAgB,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAe,CAAC;gBACjG,CAAC;qBAAM,CAAC;oBACN,0BAA0B;oBAC1B,cAAc,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;oBACjE,cAAc,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC1F,CAAC;gBAED,2BAA2B;gBAC3B,MAAM,KAAK,GAA+B,EAAE,CAAC;gBAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;gBACnC,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;oBAC3B,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC;oBACtC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC;gBACxC,CAAC;qBAAM,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACnC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC;gBACxC,CAAC;gBAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACtC,MAAM,cAAc,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAe,CAAC;gBAErF,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC;gBACjC,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAClF,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACzC,MAAM,IAAI,GAAG,cAAc,CAAC,IAAoB,CAAC;gBAEjD,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;gBAC3D,OAAO,EAAE,IAAI,EAAE,CAAC;YAClB,CAAC,CAAC;YAEF,IAAI,CAAC;gBACH,OAAO,MAAM,gBAAgB,CAAC,YAAY,CAAC,CAAC;YAC9C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,iFAAiF;gBACjF,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;oBACzB,OAAO,CAAC,IAAI,CAAC,qDAAqD,EAAE,GAAG,CAAC,CAAC;oBACzE,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;oBAC5D,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC;oBAClC,OAAO,GAAG,MAAM,CAAC;oBACjB,OAAO,MAAM,gBAAgB,CAAC,YAAY,CAAC,CAAC;gBAC9C,CAAC;gBACD,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAyC,CAAC;QAC3D,QAAQ,CAAC,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QAC/E,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAC;QAC3B,QAAQ,CAAC,OAAO,GAAG,GAAG,EAAE;YACtB,WAAW,EAAE,OAAO,EAAE,CAAC;YACvB,YAAY,CAAC,OAAO,EAAE,CAAC;QACzB,CAAC,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,+CAA+C;IAC/C,MAAM,aAAa,GAAG,KAAK,EAAE,KAAc,EAAoC,EAAE;QAC/E,MAAM,KAAK,GAA+B,EAAE,CAAC;QAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAChD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,EAAE,CAAC;gBACtE,IAAI,CAAC,YAAY,GAAG,CAAC,MAAM,EAAE,CAAC;oBAC5B,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBACf,CAAC;qBAAM,IAAI,CAAC,YAAY,YAAY,EAAE,CAAC;oBACrC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;gBACzD,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;QACrB,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,aAAgD,CAAC;IAClE,QAAQ,CAAC,QAAQ,GAAG,CAAC,YAAY,CAAC,CAAC;IACnC,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,QAAQ,CAAC,OAAO,GAAG,GAAG,EAAE;QACtB,YAAY,CAAC,OAAO,EAAE,CAAC;IACzB,CAAC,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -1,28 +0,0 @@
1
- /**
2
- * Pipeline registry — maps task names to their default configurations.
3
- */
4
- import type { PipelineTask } from '../types.js';
5
- export interface PipelineDefaults {
6
- /** Default model for this task */
7
- defaultModel: string;
8
- /** Default quantization */
9
- defaultDtype: string;
10
- /** Whether this task supports token streaming */
11
- supportsStreaming: boolean;
12
- /** Whether this task uses KV cache */
13
- usesKVCache: boolean;
14
- }
15
- /**
16
- * Registry of pipeline tasks with sensible defaults.
17
- * Users can override any of these when calling `client.load()`.
18
- */
19
- export declare const PIPELINE_REGISTRY: Record<PipelineTask, PipelineDefaults>;
20
- /**
21
- * Get the pipeline defaults for a task.
22
- */
23
- export declare function getPipelineDefaults(task: PipelineTask): PipelineDefaults;
24
- /**
25
- * Check if a task supports real-time token streaming.
26
- */
27
- export declare function supportsStreaming(task: PipelineTask): boolean;
28
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/pipelines/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,MAAM,WAAW,gBAAgB;IAC/B,kCAAkC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,2BAA2B;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,iDAAiD;IACjD,iBAAiB,EAAE,OAAO,CAAC;IAC3B,sCAAsC;IACtC,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,YAAY,EAAE,gBAAgB,CA6GpE,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,gBAAgB,CAMxE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAE7D"}
@@ -1,134 +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: 'Xenova/speecht5_tts',
41
- defaultDtype: 'fp32',
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
- 'custom': {
112
- defaultModel: '',
113
- defaultDtype: 'fp32',
114
- supportsStreaming: false,
115
- usesKVCache: false,
116
- },
117
- };
118
- /**
119
- * Get the pipeline defaults for a task.
120
- */
121
- export function getPipelineDefaults(task) {
122
- const defaults = PIPELINE_REGISTRY[task];
123
- if (!defaults) {
124
- throw new Error(`Unknown pipeline task: ${task}`);
125
- }
126
- return defaults;
127
- }
128
- /**
129
- * Check if a task supports real-time token streaming.
130
- */
131
- export function supportsStreaming(task) {
132
- return PIPELINE_REGISTRY[task]?.supportsStreaming ?? false;
133
- }
134
- //# 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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"}