@workglow/test 0.0.58 → 0.0.60
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/binding/IndexedDbModelRepository.d.ts +14 -0
- package/dist/binding/IndexedDbModelRepository.d.ts.map +1 -0
- package/dist/binding/PostgresModelRepository.d.ts +15 -0
- package/dist/binding/PostgresModelRepository.d.ts.map +1 -0
- package/dist/binding/SqliteModelRepository.d.ts +14 -0
- package/dist/binding/SqliteModelRepository.d.ts.map +1 -0
- package/dist/browser.js +176 -148
- package/dist/browser.js.map +4 -4
- package/dist/bun.js +176 -148
- package/dist/bun.js.map +4 -4
- package/dist/node.js +176 -148
- package/dist/node.js.map +4 -4
- package/dist/samples/MediaPipeModelSamples.d.ts.map +1 -1
- package/dist/samples/ONNXModelSamples.d.ts +0 -2
- package/dist/samples/ONNXModelSamples.d.ts.map +1 -1
- package/dist/test/ai-model/IndexedDbModelRepository.test.d.ts.map +1 -1
- package/dist/test/helpers/SupabaseMockClient.d.ts.map +1 -1
- package/dist/test/storage-tabular/genericTabularRepositoryTests.d.ts +38 -1
- package/dist/test/storage-tabular/genericTabularRepositoryTests.d.ts.map +1 -1
- package/package.json +17 -17
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Steven Roussey <sroussey@gmail.com>
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { ModelRepository } from "@workglow/ai";
|
|
7
|
+
/**
|
|
8
|
+
* IndexedDB implementation of a model repository.
|
|
9
|
+
* Provides storage and retrieval for models and task-to-model mappings.
|
|
10
|
+
*/
|
|
11
|
+
export declare class IndexedDbModelRepository extends ModelRepository {
|
|
12
|
+
constructor(tableModels?: string);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=IndexedDbModelRepository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IndexedDbModelRepository.d.ts","sourceRoot":"","sources":["../../src/binding/IndexedDbModelRepository.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAwB,eAAe,EAAe,MAAM,cAAc,CAAC;AAGlF;;;GAGG;AACH,qBAAa,wBAAyB,SAAQ,eAAe;gBAC/C,WAAW,GAAE,MAAiB;CAG3C"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Steven Roussey <sroussey@gmail.com>
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { ModelRepository } from "@workglow/ai";
|
|
7
|
+
import { Pool } from "pg";
|
|
8
|
+
/**
|
|
9
|
+
* PostgreSQL implementation of a model repository.
|
|
10
|
+
* Provides storage and retrieval for models and task-to-model mappings using PostgreSQL.
|
|
11
|
+
*/
|
|
12
|
+
export declare class PostgresModelRepository extends ModelRepository {
|
|
13
|
+
constructor(db: Pool, tableModels?: string);
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=PostgresModelRepository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PostgresModelRepository.d.ts","sourceRoot":"","sources":["../../src/binding/PostgresModelRepository.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAwB,eAAe,EAAe,MAAM,cAAc,CAAC;AAElF,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAE1B;;;GAGG;AACH,qBAAa,uBAAwB,SAAQ,eAAe;gBAC9C,EAAE,EAAE,IAAI,EAAE,WAAW,GAAE,MAAkB;CAGtD"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Steven Roussey <sroussey@gmail.com>
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { ModelRepository } from "@workglow/ai";
|
|
7
|
+
/**
|
|
8
|
+
* SQLite implementation of a model repository.
|
|
9
|
+
* Provides storage and retrieval for models and task-to-model mappings using SQLite.
|
|
10
|
+
*/
|
|
11
|
+
export declare class SqliteModelRepository extends ModelRepository {
|
|
12
|
+
constructor(dbOrPath: string, tableModels?: string);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=SqliteModelRepository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SqliteModelRepository.d.ts","sourceRoot":"","sources":["../../src/binding/SqliteModelRepository.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAwB,eAAe,EAAe,MAAM,cAAc,CAAC;AAGlF;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,QAAQ,EAAE,MAAM,EAAE,WAAW,GAAE,MAAkB;CAG9D"}
|
package/dist/browser.js
CHANGED
|
@@ -42,157 +42,186 @@ import { getTaskQueueRegistry } from "@workglow/task-graph";
|
|
|
42
42
|
// src/samples/MediaPipeModelSamples.ts
|
|
43
43
|
import { getGlobalModelRepository } from "@workglow/ai";
|
|
44
44
|
import { TENSORFLOW_MEDIAPIPE } from "@workglow/ai-provider";
|
|
45
|
-
async function addMediaPipeModel(info, tasks) {
|
|
46
|
-
const name = "mediapipe:" + info.name;
|
|
47
|
-
const model = Object.assign({
|
|
48
|
-
provider: TENSORFLOW_MEDIAPIPE,
|
|
49
|
-
quantization: null,
|
|
50
|
-
normalize: true,
|
|
51
|
-
contextWindow: 4096,
|
|
52
|
-
availableOnBrowser: true,
|
|
53
|
-
availableOnServer: false,
|
|
54
|
-
parameters: null,
|
|
55
|
-
languageStyle: null,
|
|
56
|
-
usingDimensions: info.nativeDimensions ?? null
|
|
57
|
-
}, info, { name });
|
|
58
|
-
await getGlobalModelRepository().addModel(model);
|
|
59
|
-
await Promise.allSettled(tasks.map((task) => getGlobalModelRepository().connectTaskToModel(task, name)));
|
|
60
|
-
}
|
|
61
45
|
async function registerMediaPipeTfJsLocalModels() {
|
|
62
|
-
await
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
46
|
+
await getGlobalModelRepository().addModel({
|
|
47
|
+
model_id: "media-pipe:Universal Sentence Encoder",
|
|
48
|
+
title: "Universal Sentence Encoder",
|
|
49
|
+
description: "Universal Sentence Encoder",
|
|
50
|
+
tasks: ["TextEmbeddingTask"],
|
|
51
|
+
provider: TENSORFLOW_MEDIAPIPE,
|
|
52
|
+
providerConfig: {
|
|
53
|
+
modelPath: "https://storage.googleapis.com/mediapipe-tasks/text_embedder/universal_sentence_encoder.tflite"
|
|
54
|
+
},
|
|
55
|
+
metadata: {}
|
|
56
|
+
});
|
|
57
|
+
await getGlobalModelRepository().addModel({
|
|
58
|
+
model_id: "media-pipe:Text Encoder",
|
|
59
|
+
title: "Text Encoder",
|
|
60
|
+
description: "Text Encoder",
|
|
61
|
+
tasks: ["TextEmbeddingTask"],
|
|
62
|
+
provider: TENSORFLOW_MEDIAPIPE,
|
|
63
|
+
providerConfig: {
|
|
64
|
+
modelPath: "https://huggingface.co/keras-sd/text-encoder-tflite/resolve/main/text_encoder.tflite?download=true"
|
|
65
|
+
},
|
|
66
|
+
metadata: {}
|
|
67
|
+
});
|
|
74
68
|
}
|
|
75
69
|
// src/samples/ONNXModelSamples.ts
|
|
76
70
|
import { getGlobalModelRepository as getGlobalModelRepository2 } from "@workglow/ai";
|
|
77
|
-
import { HF_TRANSFORMERS_ONNX
|
|
78
|
-
async function addONNXModel(info, tasks) {
|
|
79
|
-
const model = Object.assign({
|
|
80
|
-
name: "onnx:" + info.url + ":" + (info.quantization ?? QUANTIZATION_DATA_TYPES.q8),
|
|
81
|
-
provider: HF_TRANSFORMERS_ONNX,
|
|
82
|
-
quantization: QUANTIZATION_DATA_TYPES.q8,
|
|
83
|
-
normalize: true,
|
|
84
|
-
contextWindow: 4096,
|
|
85
|
-
availableOnBrowser: true,
|
|
86
|
-
availableOnServer: true,
|
|
87
|
-
parameters: null,
|
|
88
|
-
languageStyle: null,
|
|
89
|
-
usingDimensions: info.nativeDimensions ?? null
|
|
90
|
-
}, info);
|
|
91
|
-
await getGlobalModelRepository2().addModel(model);
|
|
92
|
-
await Promise.allSettled(tasks.map((task) => getGlobalModelRepository2().connectTaskToModel(task, model.name)));
|
|
93
|
-
}
|
|
71
|
+
import { HF_TRANSFORMERS_ONNX } from "@workglow/ai-provider";
|
|
94
72
|
async function registerHuggingfaceLocalModels() {
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
73
|
+
const onnxModels = [
|
|
74
|
+
{
|
|
75
|
+
model_id: "onnx:Supabase/gte-small",
|
|
76
|
+
title: "gte-small",
|
|
77
|
+
description: "Supabase/gte-small",
|
|
78
|
+
tasks: ["TextEmbeddingTask"],
|
|
79
|
+
provider: HF_TRANSFORMERS_ONNX,
|
|
80
|
+
providerConfig: {
|
|
81
|
+
pipeline: "feature-extraction",
|
|
82
|
+
modelPath: "Supabase/gte-small"
|
|
83
|
+
},
|
|
84
|
+
metadata: {}
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
model_id: "onnx:Xenova/bge-base-en-v1.5",
|
|
88
|
+
title: "bge-base-en-v1.5",
|
|
89
|
+
description: "Xenova/bge-base-en-v1.5",
|
|
90
|
+
tasks: ["TextEmbeddingTask"],
|
|
91
|
+
provider: HF_TRANSFORMERS_ONNX,
|
|
92
|
+
providerConfig: {
|
|
93
|
+
pipeline: "feature-extraction",
|
|
94
|
+
modelPath: "Xenova/bge-base-en-v1.5"
|
|
95
|
+
},
|
|
96
|
+
metadata: {}
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
model_id: "onnx:Xenova/distilbert-base-uncased-distilled-squad",
|
|
100
|
+
title: "distilbert-base-uncased-distilled-squad",
|
|
101
|
+
description: "Xenova/distilbert-base-uncased-distilled-squad",
|
|
102
|
+
tasks: ["TextQuestionAnsweringTask"],
|
|
103
|
+
provider: HF_TRANSFORMERS_ONNX,
|
|
104
|
+
providerConfig: {
|
|
105
|
+
pipeline: "question-answering",
|
|
106
|
+
modelPath: "Xenova/distilbert-base-uncased-distilled-squad"
|
|
107
|
+
},
|
|
108
|
+
metadata: {}
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
model_id: "onnx:answerdotai/ModernBERT-base",
|
|
112
|
+
title: "ModernBERT-base",
|
|
113
|
+
description: "answerdotai/ModernBERT-base",
|
|
114
|
+
tasks: ["TextClassificationTask"],
|
|
115
|
+
provider: HF_TRANSFORMERS_ONNX,
|
|
116
|
+
providerConfig: {
|
|
117
|
+
pipeline: "feature-extraction",
|
|
118
|
+
modelPath: "Xenova/multi-qa-mpnet-base-dot-v1"
|
|
119
|
+
},
|
|
120
|
+
metadata: {}
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
model_id: "onnx:Xenova/gpt2",
|
|
124
|
+
title: "gpt2",
|
|
125
|
+
description: "Xenova/gpt2",
|
|
126
|
+
tasks: ["TextGenerationTask"],
|
|
127
|
+
provider: HF_TRANSFORMERS_ONNX,
|
|
128
|
+
providerConfig: {
|
|
129
|
+
pipeline: "text-generation",
|
|
130
|
+
modelPath: "Xenova/gpt2"
|
|
131
|
+
},
|
|
132
|
+
metadata: {}
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
model_id: "onnx:Xenova/Phi-3-mini-4k-instruct:q4f16",
|
|
136
|
+
title: "Phi-3-mini-4k-instruct:q4f16",
|
|
137
|
+
description: "Xenova/Phi-3-mini-4k-instruct:q4f16",
|
|
138
|
+
tasks: ["TextGenerationTask"],
|
|
139
|
+
provider: HF_TRANSFORMERS_ONNX,
|
|
140
|
+
providerConfig: {
|
|
141
|
+
pipeline: "text-generation",
|
|
142
|
+
modelPath: "onnx-community/DeepSeek-R1-Distill-Qwen-1.5B-ONNX"
|
|
143
|
+
},
|
|
144
|
+
metadata: {}
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
model_id: "onnx:Xenova/distilgpt2",
|
|
148
|
+
title: "distilgpt2",
|
|
149
|
+
description: "Xenova/distilgpt2",
|
|
150
|
+
tasks: ["TextGenerationTask"],
|
|
151
|
+
provider: HF_TRANSFORMERS_ONNX,
|
|
152
|
+
providerConfig: {
|
|
153
|
+
pipeline: "text-generation",
|
|
154
|
+
modelPath: "Xenova/distilgpt2"
|
|
155
|
+
},
|
|
156
|
+
metadata: {}
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
model_id: "onnx:Xenova/LaMini-Flan-T5-783M",
|
|
160
|
+
title: "LaMini-Flan-T5-783M",
|
|
161
|
+
description: "Xenova/LaMini-Flan-T5-783M",
|
|
162
|
+
tasks: ["TextGenerationTask", "TextRewriterTask"],
|
|
163
|
+
provider: HF_TRANSFORMERS_ONNX,
|
|
164
|
+
providerConfig: {
|
|
165
|
+
pipeline: "text2text-generation",
|
|
166
|
+
modelPath: "Xenova/LaMini-Flan-T5-783M"
|
|
167
|
+
},
|
|
168
|
+
metadata: {}
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
model_id: "onnx:Falconsai/text_summarization",
|
|
172
|
+
title: "text_summarization",
|
|
173
|
+
description: "Falconsai/text_summarization",
|
|
174
|
+
tasks: ["TextSummaryTask"],
|
|
175
|
+
provider: HF_TRANSFORMERS_ONNX,
|
|
176
|
+
providerConfig: {
|
|
177
|
+
pipeline: "summarization",
|
|
178
|
+
modelPath: "Falconsai/text_summarization"
|
|
179
|
+
},
|
|
180
|
+
metadata: {}
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
model_id: "onnx:Xenova/nllb-200-distilled-600M",
|
|
184
|
+
title: "nllb-200-distilled-600M",
|
|
185
|
+
description: "Xenova/nllb-200-distilled-600M",
|
|
186
|
+
tasks: ["TextTranslationTask"],
|
|
187
|
+
provider: HF_TRANSFORMERS_ONNX,
|
|
188
|
+
providerConfig: {
|
|
189
|
+
pipeline: "translation",
|
|
190
|
+
modelPath: "Xenova/nllb-200-distilled-600M",
|
|
191
|
+
languageStyle: "FLORES-200"
|
|
192
|
+
},
|
|
193
|
+
metadata: {}
|
|
194
|
+
},
|
|
195
|
+
{
|
|
196
|
+
model_id: "onnx:Xenova/m2m100_418M",
|
|
197
|
+
title: "m2m100_418M",
|
|
198
|
+
description: "Xenova/m2m100_418M",
|
|
199
|
+
tasks: ["TextTranslationTask"],
|
|
200
|
+
provider: HF_TRANSFORMERS_ONNX,
|
|
201
|
+
providerConfig: {
|
|
202
|
+
pipeline: "translation",
|
|
203
|
+
modelPath: "Xenova/m2m100_418M",
|
|
204
|
+
languageStyle: "ISO-639"
|
|
205
|
+
},
|
|
206
|
+
metadata: {}
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
model_id: "onnx:Xenova/mbart-large-50-many-to-many-mmt",
|
|
210
|
+
title: "mbart-large-50-many-to-many-mmt",
|
|
211
|
+
description: "Xenova/mbart-large-50-many-to-many-mmt",
|
|
212
|
+
tasks: ["TextTranslationTask"],
|
|
213
|
+
provider: HF_TRANSFORMERS_ONNX,
|
|
214
|
+
providerConfig: {
|
|
215
|
+
pipeline: "translation",
|
|
216
|
+
modelPath: "Xenova/mbart-large-50-many-to-many-mmt",
|
|
217
|
+
languageStyle: "ISO-639_ISO-3166-1-alpha-2"
|
|
218
|
+
},
|
|
219
|
+
metadata: {}
|
|
220
|
+
}
|
|
221
|
+
];
|
|
222
|
+
for (const model of onnxModels) {
|
|
223
|
+
await getGlobalModelRepository2().addModel(model);
|
|
224
|
+
}
|
|
196
225
|
}
|
|
197
226
|
|
|
198
227
|
// src/samples/index.ts
|
|
@@ -269,7 +298,6 @@ export {
|
|
|
269
298
|
register_HFT_InMemoryQueue,
|
|
270
299
|
registerMediaPipeTfJsLocalModels,
|
|
271
300
|
registerHuggingfaceLocalModels,
|
|
272
|
-
addONNXModel,
|
|
273
301
|
MEMORY_TASK_OUTPUT_REPOSITORY,
|
|
274
302
|
MEMORY_TASK_GRAPH_REPOSITORY,
|
|
275
303
|
IndexedDbTaskOutputRepository,
|
|
@@ -280,4 +308,4 @@ export {
|
|
|
280
308
|
IDB_TASK_GRAPH_REPOSITORY
|
|
281
309
|
};
|
|
282
310
|
|
|
283
|
-
//# debugId=
|
|
311
|
+
//# debugId=391488397AB36BE864756E2164756E21
|
package/dist/browser.js.map
CHANGED
|
@@ -5,12 +5,12 @@
|
|
|
5
5
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { InMemoryTabularRepository } from \"@workglow/storage\";\nimport {\n TaskGraphPrimaryKeyNames,\n TaskGraphSchema,\n TaskGraphTabularRepository,\n} from \"@workglow/task-graph\";\nimport { createServiceToken } from \"@workglow/util\";\n\nexport const MEMORY_TASK_GRAPH_REPOSITORY = createServiceToken<TaskGraphTabularRepository>(\n \"taskgraph.taskGraphRepository.inMemory\"\n);\n\n/**\n * In-memory implementation of a task graph repository.\n * Provides storage and retrieval for task graphs.\n */\nexport class InMemoryTaskGraphRepository extends TaskGraphTabularRepository {\n constructor() {\n super({\n tabularRepository: new InMemoryTabularRepository(TaskGraphSchema, TaskGraphPrimaryKeyNames),\n });\n }\n}\n",
|
|
6
6
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { InMemoryTabularRepository } from \"@workglow/storage\";\nimport {\n TaskOutputPrimaryKeyNames,\n TaskOutputSchema,\n TaskOutputTabularRepository,\n} from \"@workglow/task-graph\";\nimport { createServiceToken } from \"@workglow/util\";\n\nexport const MEMORY_TASK_OUTPUT_REPOSITORY = createServiceToken<InMemoryTaskOutputRepository>(\n \"taskgraph.taskOutputRepository.inMemory\"\n);\n\n/**\n * In-memory implementation of a task output repository.\n * Provides storage and retrieval for task outputs.\n */\nexport class InMemoryTaskOutputRepository extends TaskOutputTabularRepository {\n constructor() {\n super({\n tabularRepository: new InMemoryTabularRepository(\n TaskOutputSchema,\n TaskOutputPrimaryKeyNames,\n [\"createdAt\"]\n ),\n });\n }\n}\n",
|
|
7
7
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { AiJob, AiJobInput } from \"@workglow/ai\";\nimport { TENSORFLOW_MEDIAPIPE } from \"@workglow/ai-provider\";\nimport { ConcurrencyLimiter, JobQueueClient, JobQueueServer } from \"@workglow/job-queue\";\nimport { InMemoryQueueStorage } from \"@workglow/storage\";\nimport { getTaskQueueRegistry, TaskInput, TaskOutput } from \"@workglow/task-graph\";\nexport * from \"./MediaPipeModelSamples\";\nexport * from \"./ONNXModelSamples\";\n\nexport async function register_HFT_InMemoryQueue(): Promise<void> {\n const queueName = \"HF_TRANSFORMERS_ONNX\";\n const storage = new InMemoryQueueStorage<AiJobInput<TaskInput>, TaskOutput>(queueName);\n await storage.setupDatabase();\n\n const server = new JobQueueServer<AiJobInput<TaskInput>, TaskOutput>(\n AiJob<AiJobInput<TaskInput>, TaskOutput>,\n {\n storage,\n queueName,\n limiter: new ConcurrencyLimiter(1, 10),\n }\n );\n\n const client = new JobQueueClient<AiJobInput<TaskInput>, TaskOutput>({\n storage,\n queueName,\n });\n\n client.attach(server);\n\n getTaskQueueRegistry().registerQueue({ server, client, storage });\n await server.start();\n}\n\nexport async function register_TFMP_InMemoryQueue(): Promise<void> {\n const queueName = TENSORFLOW_MEDIAPIPE;\n const storage = new InMemoryQueueStorage<AiJobInput<TaskInput>, TaskOutput>(queueName);\n await storage.setupDatabase();\n\n const server = new JobQueueServer<AiJobInput<TaskInput>, TaskOutput>(\n AiJob<AiJobInput<TaskInput>, TaskOutput>,\n {\n storage,\n queueName,\n limiter: new ConcurrencyLimiter(1, 10),\n }\n );\n\n const client = new JobQueueClient<AiJobInput<TaskInput>, TaskOutput>({\n storage,\n queueName,\n });\n\n client.attach(server);\n\n getTaskQueueRegistry().registerQueue({ server, client, storage });\n await server.start();\n}\n",
|
|
8
|
-
"import { getGlobalModelRepository
|
|
9
|
-
"import { getGlobalModelRepository
|
|
8
|
+
"import { getGlobalModelRepository } from \"@workglow/ai\";\nimport { TENSORFLOW_MEDIAPIPE } from \"@workglow/ai-provider\";\n\nexport async function registerMediaPipeTfJsLocalModels(): Promise<void> {\n await getGlobalModelRepository().addModel({\n model_id: \"media-pipe:Universal Sentence Encoder\",\n title: \"Universal Sentence Encoder\",\n description: \"Universal Sentence Encoder\",\n tasks: [\"TextEmbeddingTask\"],\n provider: TENSORFLOW_MEDIAPIPE,\n providerConfig: {\n modelPath:\n \"https://storage.googleapis.com/mediapipe-tasks/text_embedder/universal_sentence_encoder.tflite\",\n },\n metadata: {},\n });\n\n await getGlobalModelRepository().addModel({\n model_id: \"media-pipe:Text Encoder\",\n title: \"Text Encoder\",\n description: \"Text Encoder\",\n tasks: [\"TextEmbeddingTask\"],\n provider: TENSORFLOW_MEDIAPIPE,\n providerConfig: {\n modelPath:\n \"https://huggingface.co/keras-sd/text-encoder-tflite/resolve/main/text_encoder.tflite?download=true\",\n },\n metadata: {},\n });\n}\n",
|
|
9
|
+
"import { getGlobalModelRepository } from \"@workglow/ai\";\nimport { HF_TRANSFORMERS_ONNX, HfTransformersOnnxModelRecord } from \"@workglow/ai-provider\";\n\nexport async function registerHuggingfaceLocalModels(): Promise<void> {\n const onnxModels: HfTransformersOnnxModelRecord[] = [\n {\n model_id: \"onnx:Supabase/gte-small\",\n title: \"gte-small\",\n description: \"Supabase/gte-small\",\n tasks: [\"TextEmbeddingTask\"],\n provider: HF_TRANSFORMERS_ONNX,\n providerConfig: {\n pipeline: \"feature-extraction\",\n modelPath: \"Supabase/gte-small\",\n },\n metadata: {},\n },\n {\n model_id: \"onnx:Xenova/bge-base-en-v1.5\",\n title: \"bge-base-en-v1.5\",\n description: \"Xenova/bge-base-en-v1.5\",\n tasks: [\"TextEmbeddingTask\"],\n provider: HF_TRANSFORMERS_ONNX,\n providerConfig: {\n pipeline: \"feature-extraction\",\n modelPath: \"Xenova/bge-base-en-v1.5\",\n },\n metadata: {},\n },\n {\n model_id: \"onnx:Xenova/distilbert-base-uncased-distilled-squad\",\n title: \"distilbert-base-uncased-distilled-squad\",\n description: \"Xenova/distilbert-base-uncased-distilled-squad\",\n tasks: [\"TextQuestionAnsweringTask\"],\n provider: HF_TRANSFORMERS_ONNX,\n providerConfig: {\n pipeline: \"question-answering\",\n modelPath: \"Xenova/distilbert-base-uncased-distilled-squad\",\n },\n metadata: {},\n },\n {\n model_id: \"onnx:answerdotai/ModernBERT-base\",\n title: \"ModernBERT-base\",\n description: \"answerdotai/ModernBERT-base\",\n tasks: [\"TextClassificationTask\"],\n provider: HF_TRANSFORMERS_ONNX,\n providerConfig: {\n pipeline: \"feature-extraction\",\n modelPath: \"Xenova/multi-qa-mpnet-base-dot-v1\",\n },\n metadata: {},\n },\n {\n model_id: \"onnx:Xenova/gpt2\",\n title: \"gpt2\",\n description: \"Xenova/gpt2\",\n tasks: [\"TextGenerationTask\"],\n provider: HF_TRANSFORMERS_ONNX,\n providerConfig: {\n pipeline: \"text-generation\",\n modelPath: \"Xenova/gpt2\",\n },\n metadata: {},\n },\n {\n model_id: \"onnx:Xenova/Phi-3-mini-4k-instruct:q4f16\",\n title: \"Phi-3-mini-4k-instruct:q4f16\",\n description: \"Xenova/Phi-3-mini-4k-instruct:q4f16\",\n tasks: [\"TextGenerationTask\"],\n provider: HF_TRANSFORMERS_ONNX,\n providerConfig: {\n pipeline: \"text-generation\",\n modelPath: \"onnx-community/DeepSeek-R1-Distill-Qwen-1.5B-ONNX\",\n },\n metadata: {},\n },\n {\n model_id: \"onnx:Xenova/distilgpt2\",\n title: \"distilgpt2\",\n description: \"Xenova/distilgpt2\",\n tasks: [\"TextGenerationTask\"],\n provider: HF_TRANSFORMERS_ONNX,\n providerConfig: {\n pipeline: \"text-generation\",\n modelPath: \"Xenova/distilgpt2\",\n },\n metadata: {},\n },\n {\n model_id: \"onnx:Xenova/LaMini-Flan-T5-783M\",\n title: \"LaMini-Flan-T5-783M\",\n description: \"Xenova/LaMini-Flan-T5-783M\",\n tasks: [\"TextGenerationTask\", \"TextRewriterTask\"],\n provider: HF_TRANSFORMERS_ONNX,\n providerConfig: {\n pipeline: \"text2text-generation\",\n modelPath: \"Xenova/LaMini-Flan-T5-783M\",\n },\n metadata: {},\n },\n {\n model_id: \"onnx:Falconsai/text_summarization\",\n title: \"text_summarization\",\n description: \"Falconsai/text_summarization\",\n tasks: [\"TextSummaryTask\"],\n provider: HF_TRANSFORMERS_ONNX,\n providerConfig: {\n pipeline: \"summarization\",\n modelPath: \"Falconsai/text_summarization\",\n },\n metadata: {},\n },\n {\n model_id: \"onnx:Xenova/nllb-200-distilled-600M\",\n title: \"nllb-200-distilled-600M\",\n description: \"Xenova/nllb-200-distilled-600M\",\n tasks: [\"TextTranslationTask\"],\n provider: HF_TRANSFORMERS_ONNX,\n providerConfig: {\n pipeline: \"translation\",\n modelPath: \"Xenova/nllb-200-distilled-600M\",\n languageStyle: \"FLORES-200\",\n },\n metadata: {},\n },\n {\n model_id: \"onnx:Xenova/m2m100_418M\",\n title: \"m2m100_418M\",\n description: \"Xenova/m2m100_418M\",\n tasks: [\"TextTranslationTask\"],\n provider: HF_TRANSFORMERS_ONNX,\n providerConfig: {\n pipeline: \"translation\",\n modelPath: \"Xenova/m2m100_418M\",\n languageStyle: \"ISO-639\",\n },\n metadata: {},\n },\n {\n model_id: \"onnx:Xenova/mbart-large-50-many-to-many-mmt\",\n title: \"mbart-large-50-many-to-many-mmt\",\n description: \"Xenova/mbart-large-50-many-to-many-mmt\",\n tasks: [\"TextTranslationTask\"],\n provider: HF_TRANSFORMERS_ONNX,\n providerConfig: {\n pipeline: \"translation\",\n modelPath: \"Xenova/mbart-large-50-many-to-many-mmt\",\n languageStyle: \"ISO-639_ISO-3166-1-alpha-2\",\n },\n metadata: {},\n },\n ];\n\n for (const model of onnxModels) {\n await getGlobalModelRepository().addModel(model);\n }\n}\n",
|
|
10
10
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { IndexedDbTabularRepository } from \"@workglow/storage\";\nimport {\n TaskGraphPrimaryKeyNames,\n TaskGraphSchema,\n TaskGraphTabularRepository,\n} from \"@workglow/task-graph\";\nimport { createServiceToken } from \"@workglow/util\";\n\nexport const IDB_TASK_GRAPH_REPOSITORY = createServiceToken<TaskGraphTabularRepository>(\n \"taskgraph.taskGraphRepository.indexedDb\"\n);\n\n/**\n * IndexedDB implementation of a task graph repository.\n * Provides storage and retrieval for task graphs using IndexedDB.\n */\nexport class IndexedDbTaskGraphRepository extends TaskGraphTabularRepository {\n constructor(table: string = \"task_graphs\") {\n super({\n tabularRepository: new IndexedDbTabularRepository(\n table,\n TaskGraphSchema,\n TaskGraphPrimaryKeyNames\n ),\n });\n }\n}\n",
|
|
11
11
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { IndexedDbTabularRepository } from \"@workglow/storage\";\nimport {\n TaskOutputPrimaryKeyNames,\n TaskOutputSchema,\n TaskOutputTabularRepository,\n} from \"@workglow/task-graph\";\nimport { createServiceToken } from \"@workglow/util\";\n\nexport const IDB_TASK_OUTPUT_REPOSITORY = createServiceToken<IndexedDbTaskOutputRepository>(\n \"taskgraph.taskOutputRepository.indexedDb\"\n);\n\n/**\n * IndexedDB implementation of a task output repository.\n * Provides storage and retrieval for task outputs using IndexedDB.\n */\nexport class IndexedDbTaskOutputRepository extends TaskOutputTabularRepository {\n constructor(table: string = \"task_outputs\") {\n super({\n tabularRepository: new IndexedDbTabularRepository(\n table,\n TaskOutputSchema,\n TaskOutputPrimaryKeyNames,\n [\"createdAt\"]\n ),\n });\n }\n}\n"
|
|
12
12
|
],
|
|
13
|
-
"mappings": ";AAMA;AACA;AAAA;AAAA;AAAA;AAAA;AAKA;AAEO,IAAM,+BAA+B,mBAC1C,wCACF;AAAA;AAMO,MAAM,oCAAoC,2BAA2B;AAAA,EAC1E,WAAW,GAAG;AAAA,IACZ,MAAM;AAAA,MACJ,mBAAmB,IAAI,0BAA0B,iBAAiB,wBAAwB;AAAA,IAC5F,CAAC;AAAA;AAEL;;ACtBA,sCAAS;AACT;AAAA;AAAA;AAAA;AAAA;AAKA,+BAAS;AAEF,IAAM,gCAAgC,oBAC3C,yCACF;AAAA;AAMO,MAAM,qCAAqC,4BAA4B;AAAA,EAC5E,WAAW,GAAG;AAAA,IACZ,MAAM;AAAA,MACJ,mBAAmB,IAAI,2BACrB,kBACA,2BACA,CAAC,WAAW,CACd;AAAA,IACF,CAAC;AAAA;AAEL;;AC1BA;AACA,iCAAS;AACT;AACA;AACA;;;ACVA;AACA;AAEA,
|
|
14
|
-
"debugId": "
|
|
13
|
+
"mappings": "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",
|
|
14
|
+
"debugId": "391488397AB36BE864756E2164756E21",
|
|
15
15
|
"names": []
|
|
16
16
|
}
|