@workglow/tf-mediapipe 0.2.30 → 0.2.32
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/README.md +44 -0
- package/dist/ai/TensorFlowMediaPipeProvider.d.ts.map +1 -0
- package/dist/ai/TensorFlowMediaPipeQueuedProvider.d.ts.map +1 -0
- package/dist/ai/common/TFMP_Client.d.ts.map +1 -0
- package/dist/ai/common/TFMP_Constants.d.ts.map +1 -0
- package/dist/ai/common/TFMP_Download.d.ts.map +1 -0
- package/dist/ai/common/TFMP_FaceDetector.d.ts.map +1 -0
- package/dist/ai/common/TFMP_FaceLandmarker.d.ts.map +1 -0
- package/dist/ai/common/TFMP_GestureRecognizer.d.ts.map +1 -0
- package/dist/ai/common/TFMP_HandLandmarker.d.ts.map +1 -0
- package/dist/ai/common/TFMP_ImageClassification.d.ts.map +1 -0
- package/dist/ai/common/TFMP_ImageEmbedding.d.ts.map +1 -0
- package/dist/ai/common/TFMP_ImageSegmentation.d.ts.map +1 -0
- package/dist/ai/common/TFMP_JobRunFns.d.ts.map +1 -0
- package/dist/ai/common/TFMP_ModelInfo.d.ts.map +1 -0
- package/dist/ai/common/TFMP_ModelSchema.d.ts.map +1 -0
- package/dist/ai/common/TFMP_ModelSearch.d.ts.map +1 -0
- package/dist/ai/common/TFMP_ObjectDetection.d.ts.map +1 -0
- package/dist/ai/common/TFMP_PoseLandmarker.d.ts.map +1 -0
- package/dist/ai/common/TFMP_Runtime.d.ts.map +1 -0
- package/dist/ai/common/TFMP_TextClassification.d.ts.map +1 -0
- package/dist/ai/common/TFMP_TextEmbedding.d.ts.map +1 -0
- package/dist/ai/common/TFMP_TextLanguageDetection.d.ts.map +1 -0
- package/dist/ai/common/TFMP_Unload.d.ts.map +1 -0
- package/dist/ai/index.d.ts.map +1 -0
- package/dist/ai/registerTensorFlowMediaPipe.d.ts.map +1 -0
- package/dist/ai/registerTensorFlowMediaPipeInline.d.ts.map +1 -0
- package/dist/ai/registerTensorFlowMediaPipeWorker.d.ts.map +1 -0
- package/dist/ai/runtime.d.ts.map +1 -0
- package/dist/{ai-provider.d.ts → ai-runtime.d.ts} +2 -2
- package/dist/ai-runtime.d.ts.map +1 -0
- package/dist/{ai-provider-runtime.js → ai-runtime.js} +32 -32
- package/dist/{ai-provider-runtime.js.map → ai-runtime.js.map} +5 -5
- package/dist/{ai-provider-runtime.d.ts → ai.d.ts} +2 -2
- package/dist/ai.d.ts.map +1 -0
- package/dist/{ai-provider.js → ai.js} +9 -9
- package/dist/{ai-provider.js.map → ai.js.map} +4 -4
- package/package.json +24 -29
- package/dist/ai-provider/TensorFlowMediaPipeProvider.d.ts.map +0 -1
- package/dist/ai-provider/TensorFlowMediaPipeQueuedProvider.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_Client.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_Constants.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_Download.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_FaceDetector.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_FaceLandmarker.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_GestureRecognizer.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_HandLandmarker.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_ImageClassification.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_ImageEmbedding.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_ImageSegmentation.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_JobRunFns.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_ModelInfo.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_ModelSchema.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_ModelSearch.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_ObjectDetection.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_PoseLandmarker.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_Runtime.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_TextClassification.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_TextEmbedding.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_TextLanguageDetection.d.ts.map +0 -1
- package/dist/ai-provider/common/TFMP_Unload.d.ts.map +0 -1
- package/dist/ai-provider/index.d.ts.map +0 -1
- package/dist/ai-provider/registerTensorFlowMediaPipe.d.ts.map +0 -1
- package/dist/ai-provider/registerTensorFlowMediaPipeInline.d.ts.map +0 -1
- package/dist/ai-provider/registerTensorFlowMediaPipeWorker.d.ts.map +0 -1
- package/dist/ai-provider/runtime.d.ts.map +0 -1
- package/dist/ai-provider-runtime.d.ts.map +0 -1
- package/dist/ai-provider.d.ts.map +0 -1
- /package/dist/{ai-provider → ai}/TensorFlowMediaPipeProvider.d.ts +0 -0
- /package/dist/{ai-provider → ai}/TensorFlowMediaPipeQueuedProvider.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_Client.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_Constants.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_Download.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_FaceDetector.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_FaceLandmarker.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_GestureRecognizer.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_HandLandmarker.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_ImageClassification.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_ImageEmbedding.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_ImageSegmentation.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_JobRunFns.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_ModelInfo.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_ModelSchema.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_ModelSearch.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_ObjectDetection.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_PoseLandmarker.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_Runtime.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_TextClassification.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_TextEmbedding.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_TextLanguageDetection.d.ts +0 -0
- /package/dist/{ai-provider → ai}/common/TFMP_Unload.d.ts +0 -0
- /package/dist/{ai-provider → ai}/index.d.ts +0 -0
- /package/dist/{ai-provider → ai}/registerTensorFlowMediaPipe.d.ts +0 -0
- /package/dist/{ai-provider → ai}/registerTensorFlowMediaPipeInline.d.ts +0 -0
- /package/dist/{ai-provider → ai}/registerTensorFlowMediaPipeWorker.d.ts +0 -0
- /package/dist/{ai-provider → ai}/runtime.d.ts +0 -0
package/README.md
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# @workglow/tf-mediapipe
|
|
2
|
+
|
|
3
|
+
TensorFlow MediaPipe provider for @workglow/ai (browser only).
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- Integration with tf-mediapipe for Workglow AI tasks
|
|
8
|
+
- Supports standard Workglow AI task interfaces
|
|
9
|
+
- Works seamlessly with `@workglow/task-graph` and `@workglow/ai`
|
|
10
|
+
- Built-in job queue support for rate limiting and concurrency
|
|
11
|
+
|
|
12
|
+
## Installation
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
npm install @workglow/tf-mediapipe
|
|
16
|
+
# or
|
|
17
|
+
bun add @workglow/tf-mediapipe
|
|
18
|
+
# or
|
|
19
|
+
yarn add @workglow/tf-mediapipe
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Usage
|
|
23
|
+
|
|
24
|
+
```typescript
|
|
25
|
+
import { registerTfMediapipe } from "@workglow/tf-mediapipe/ai-runtime";
|
|
26
|
+
import { TextGenerationTask } from "@workglow/ai";
|
|
27
|
+
import { Workflow } from "@workglow/task-graph";
|
|
28
|
+
|
|
29
|
+
// 1. Register the provider
|
|
30
|
+
await registerTfMediapipe();
|
|
31
|
+
|
|
32
|
+
// 2. Use it in a workflow
|
|
33
|
+
const workflow = new Workflow();
|
|
34
|
+
workflow.add(new TextGenerationTask({
|
|
35
|
+
model: "default-model",
|
|
36
|
+
prompt: "Hello world!"
|
|
37
|
+
}));
|
|
38
|
+
|
|
39
|
+
const result = await workflow.run();
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## License
|
|
43
|
+
|
|
44
|
+
Apache 2.0 - See [LICENSE](../../LICENSE) for details.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TensorFlowMediaPipeProvider.d.ts","sourceRoot":"","sources":["../../src/ai/TensorFlowMediaPipeProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEnF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE;;;;;;;;GAQG;AACH,qBAAa,2BAA4B,SAAQ,UAAU,CAAC,eAAe,CAAC;IAC1E,QAAQ,CAAC,IAAI,0BAAwB;IACrC,QAAQ,CAAC,WAAW,0BAA0B;IAC9C,QAAQ,CAAC,OAAO,QAAQ;IACxB,QAAQ,CAAC,eAAe,QAAQ;IAEhC,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAA2B;IAEhE,YACE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC,EAClE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC,EAGjF;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TensorFlowMediaPipeQueuedProvider.d.ts","sourceRoot":"","sources":["../../src/ai/TensorFlowMediaPipeQueuedProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,6FAA6F;AAC7F,qBAAa,iCAAkC,SAAQ,UAAU,CAAC,eAAe,CAAC;IAChF,QAAQ,CAAC,IAAI,0BAAwB;IACrC,QAAQ,CAAC,WAAW,0BAA0B;IAC9C,QAAQ,CAAC,OAAO,QAAQ;IACxB,QAAQ,CAAC,eAAe,QAAQ;IAEhC,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAA2B;IAEhE,YACE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC,EAClE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC,EAGjF;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_Client.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_Client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,wBAAsB,oBAAoB,oDAWzC;AAED,wBAAsB,sBAAsB,sDAW3C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_Constants.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_Constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAO,MAAM,oBAAoB,yBAAyB,CAAC;AAE3D,eAAO,MAAM,uBAAuB,YAClC,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,2BAA2B,EAC3B,wBAAwB,EACxB,uBAAuB,EACvB,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,CACT,CAAC;AAEX,MAAM,MAAM,gBAAgB,GACxB,eAAe,GACf,iBAAiB,GACjB,wBAAwB,GACxB,YAAY,GACZ,kBAAkB,GAClB,gBAAgB,GAChB,sBAAsB,GACtB,wBAAwB,GACxB,sBAAsB,GACtB,2BAA2B,GAC3B,wBAAwB,GACxB,4BAA4B,GAC5B,yBAAyB,GACzB,uBAAuB,GACvB,wBAAwB,GACxB,oCAAoC,GACpC,wBAAwB,GACxB,wBAAwB,CAAC;AAE7B,eAAO,MAAM,gBAAgB;8BACV,eAAe;gCACb,iBAAiB;uCACV,wBAAwB;2BACpC,YAAY;iCACN,kBAAkB;+BACpB,gBAAgB;qCACV,sBAAsB;uCACpB,wBAAwB;qCAC1B,sBAAsB;0CACjB,2BAA2B;uCAC9B,wBAAwB;2CACpB,4BAA4B;wCAC/B,yBAAyB;sCAC3B,uBAAuB;uCACtB,wBAAwB;mDACZ,oCAAoC;uCAChD,wBAAwB;uCACxB,wBAAwB;CACW,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_Download.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_Download.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,yBAAyB,EACzB,0BAA0B,EAC3B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAIrD,eAAO,MAAM,aAAa,EAAE,eAAe,CACzC,yBAAyB,EACzB,0BAA0B,EAC1B,eAAe,CA6EhB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_FaceDetector.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_FaceDetector.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAGnG,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,iBAAiB,EAAE,eAAe,CAC7C,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,CAsChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_FaceLandmarker.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_FaceLandmarker.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,mBAAmB,EAAE,eAAe,CAC/C,uBAAuB,EACvB,wBAAwB,EACxB,eAAe,CAiDhB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_GestureRecognizer.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_GestureRecognizer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,sBAAsB,EAAE,eAAe,CAClD,0BAA0B,EAC1B,2BAA2B,EAC3B,eAAe,CA6ChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_HandLandmarker.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_HandLandmarker.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,mBAAmB,EAAE,eAAe,CAC/C,uBAAuB,EACvB,wBAAwB,EACxB,eAAe,CAyChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_ImageClassification.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_ImageClassification.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,4BAA4B,EAC5B,6BAA6B,EAC9B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,wBAAwB,EAAE,eAAe,CACpD,4BAA4B,EAC5B,6BAA6B,EAC7B,eAAe,CA4BhB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_ImageEmbedding.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_ImageEmbedding.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,mBAAmB,EAAE,eAAe,CAC/C,uBAAuB,EACvB,wBAAwB,EACxB,eAAe,CA4BhB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_ImageSegmentation.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_ImageSegmentation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,sBAAsB,EAAE,eAAe,CAClD,0BAA0B,EAC1B,2BAA2B,EAC3B,eAAe,CAyBhB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_JobRunFns.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_JobRunFns.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAmB1D,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAE7E,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAiBjF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_ModelInfo.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_ModelInfo.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAC7F,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAQrD,eAAO,MAAM,cAAc,EAAE,eAAe,CAC1C,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,CAyChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_ModelSchema.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_ModelSchema.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAwB,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGzE,eAAO,MAAM,eAAe;mBACpB,QAAQ;;iBAEZ,QAAQ;qBACN,KAAK;qBACL,WAAW,EAAE,8CAA8C;;iBAE7D,eAAe;qBACb,IAAI,EAAE,QAAQ;qBACd,WAAW,EAAE,wCAAwC;qBACrD,UAAU;yBACR,UAAU;6BACR,IAAI,EAAE,QAAQ;6BACd,WAAW,EAAE,4CAA4C;;yBAE3D,WAAW;6BACT,IAAI,EAAE,QAAQ;6BACd,IAAI;6BACJ,WAAW,EAAE,sCAAsC;;yBAErD,QAAQ;6BACN,IAAI,EAAE,QAAQ;6BACd,IAAI;6BACJ,WAAW,EAAE,6CAA6C;;;qBAG9D,QAAQ;qBACR,oBAAoB;;;;;CAKe,CAAC;AAE1C,eAAO,MAAM,qBAAqB;mBAC1B,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;qBA/BV,KAAK;qBACL,WAAW,EAAE,8CAA8C;;;qBAG3D,IAAI,EAAE,QAAQ;qBACd,WAAW,EAAE,wCAAwC;qBACrD,UAAU;yBACR,UAAU;6BACR,IAAI,EAAE,QAAQ;6BACd,WAAW,EAAE,4CAA4C;;yBAE3D,WAAW;6BACT,IAAI,EAAE,QAAQ;6BACd,IAAI;6BACJ,WAAW,EAAE,sCAAsC;;yBAErD,QAAQ;6BACN,IAAI,EAAE,QAAQ;6BACd,IAAI;6BACJ,WAAW,EAAE,6CAA6C;;;qBAG9D,QAAQ;qBACR,oBAAoB;;;;;CAee,CAAC;AAE1C,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEvE,eAAO,MAAM,qBAAqB;mBAC1B,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;qBA3CV,KAAK;qBACL,WAAW,EAAE,8CAA8C;;;qBAG3D,IAAI,EAAE,QAAQ;qBACd,WAAW,EAAE,wCAAwC;qBACrD,UAAU;yBACR,UAAU;6BACR,IAAI,EAAE,QAAQ;6BACd,WAAW,EAAE,4CAA4C;;yBAE3D,WAAW;6BACT,IAAI,EAAE,QAAQ;6BACd,IAAI;6BACJ,WAAW,EAAE,sCAAsC;;yBAErD,QAAQ;6BACN,IAAI,EAAE,QAAQ;6BACd,IAAI;6BACJ,WAAW,EAAE,6CAA6C;;;qBAG9D,QAAQ;qBACR,oBAAoB;;;;;CA2Be,CAAC;AAE1C,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_ModelSearch.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_ModelSearch.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EAEf,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,cAAc,CAAC;AAwNtB,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,GACjB,eAAe,CAAC,oBAAoB,EAAE,qBAAqB,CAAC,CAW9D;AAED,eAAO,MAAM,gBAAgB,EAAE,eAAe,CAAC,oBAAoB,EAAE,qBAAqB,CAC7C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_ObjectDetection.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_ObjectDetection.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACxB,yBAAyB,EAC1B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,oBAAoB,EAAE,eAAe,CAChD,wBAAwB,EACxB,yBAAyB,EACzB,eAAe,CAgChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_PoseLandmarker.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_PoseLandmarker.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,mBAAmB,EAAE,eAAe,CAC/C,uBAAuB,EACvB,wBAAwB,EACxB,eAAe,CAuDhB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_Runtime.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_Runtime.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,eAAO,MAAM,UAAU,8BAAqC,CAAC;AAC7D,eAAO,MAAM,qBAAqB,qBAA4B,CAAC;AAE/D,KAAK,eAAe,GAAG;IACrB,iBAAiB,CACf,WAAW,EAAE,eAAe,EAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC,YAAY,CAAC,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,IAAI,IAAI,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB,CAAC;AAEF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,eAAO,MAAM,cAAc,gCAAuC,CAAC;AA4EnE,eAAO,MAAM,YAAY,UAChB,eAAe,WACb,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,cACpB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,UAC/D,WAAW,YACT,eAAe,KACxB,OAAO,CAAC,GAAG,CAgCb,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_TextClassification.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_TextClassification.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,2BAA2B,EAC3B,4BAA4B,EAC7B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,uBAAuB,EAAE,eAAe,CACnD,2BAA2B,EAC3B,4BAA4B,EAC5B,eAAe,CA0BhB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_TextEmbedding.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_TextEmbedding.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,kBAAkB,EAAE,eAAe,CAC9C,sBAAsB,EACtB,uBAAuB,EACvB,eAAe,CAgChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_TextLanguageDetection.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_TextLanguageDetection.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,8BAA8B,EAC9B,+BAA+B,EAChC,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,0BAA0B,EAAE,eAAe,CACtD,8BAA8B,EAC9B,+BAA+B,EAC/B,eAAe,CA4BhB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TFMP_Unload.d.ts","sourceRoot":"","sources":["../../../src/ai/common/TFMP_Unload.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,WAAW,EAAE,eAAe,CACvC,uBAAuB,EACvB,wBAAwB,EACxB,eAAe,CA6BhB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ai/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registerTensorFlowMediaPipe.d.ts","sourceRoot":"","sources":["../../src/ai/registerTensorFlowMediaPipe.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAI9D,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,yBAAyB,GAAG;IACnC,MAAM,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,CAAC;CACjC,GACA,OAAO,CAAC,IAAI,CAAC,CAMf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registerTensorFlowMediaPipeInline.d.ts","sourceRoot":"","sources":["../../src/ai/registerTensorFlowMediaPipeInline.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAK9D,wBAAsB,iCAAiC,CACrD,OAAO,CAAC,EAAE,yBAAyB,GAClC,OAAO,CAAC,IAAI,CAAC,CAMf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registerTensorFlowMediaPipeWorker.d.ts","sourceRoot":"","sources":["../../src/ai/registerTensorFlowMediaPipeWorker.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,wBAAsB,iCAAiC,IAAI,OAAO,CAAC,IAAI,CAAC,CAKvE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/ai/runtime.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;GAMG;AACH,cAAc,sBAAsB,CAAC;AACrC,cAAc,qCAAqC,CAAC;AACpD,cAAc,qCAAqC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-runtime.d.ts","sourceRoot":"","sources":["../src/ai-runtime.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,cAAc,CAAC"}
|
|
@@ -6,7 +6,7 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
|
|
|
6
6
|
throw Error('Dynamic require of "' + x + '" is not supported');
|
|
7
7
|
});
|
|
8
8
|
|
|
9
|
-
// src/ai
|
|
9
|
+
// src/ai/common/TFMP_Client.ts
|
|
10
10
|
var _tasksText;
|
|
11
11
|
var _tasksVision;
|
|
12
12
|
async function loadTfmpTasksTextSDK() {
|
|
@@ -30,13 +30,13 @@ async function loadTfmpTasksVisionSDK() {
|
|
|
30
30
|
return _tasksVision;
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
// src/ai
|
|
34
|
-
import { registerProviderInline } from "@workglow/ai-
|
|
33
|
+
// src/ai/registerTensorFlowMediaPipeInline.ts
|
|
34
|
+
import { registerProviderInline } from "@workglow/ai/provider-utils";
|
|
35
35
|
|
|
36
|
-
// src/ai
|
|
37
|
-
import { filterModelSearchResultsByQuery } from "@workglow/ai-
|
|
36
|
+
// src/ai/common/TFMP_ModelSearch.ts
|
|
37
|
+
import { filterModelSearchResultsByQuery } from "@workglow/ai/provider-utils";
|
|
38
38
|
|
|
39
|
-
// src/ai
|
|
39
|
+
// src/ai/common/TFMP_Constants.ts
|
|
40
40
|
var TENSORFLOW_MEDIAPIPE = "TENSORFLOW_MEDIAPIPE";
|
|
41
41
|
var TFMP_DEFAULT_TASK_TYPES = [
|
|
42
42
|
"DownloadModelTask",
|
|
@@ -77,7 +77,7 @@ var TextPipelineTask = {
|
|
|
77
77
|
"vision-pose-landmarker": "vision-pose-landmarker"
|
|
78
78
|
};
|
|
79
79
|
|
|
80
|
-
// src/ai
|
|
80
|
+
// src/ai/common/TFMP_ModelSearch.ts
|
|
81
81
|
var TFMP_MODEL_RESULTS = [
|
|
82
82
|
{
|
|
83
83
|
id: "universal-sentence-encoder",
|
|
@@ -289,10 +289,10 @@ function createTFMPModelSearch(providerId) {
|
|
|
289
289
|
}
|
|
290
290
|
var TFMP_ModelSearch = createTFMPModelSearch(TENSORFLOW_MEDIAPIPE);
|
|
291
291
|
|
|
292
|
-
// src/ai
|
|
292
|
+
// src/ai/common/TFMP_Download.ts
|
|
293
293
|
import { PermanentJobError as PermanentJobError2 } from "@workglow/job-queue";
|
|
294
294
|
|
|
295
|
-
// src/ai
|
|
295
|
+
// src/ai/common/TFMP_Runtime.ts
|
|
296
296
|
import { PermanentJobError } from "@workglow/job-queue";
|
|
297
297
|
var wasm_tasks = new Map;
|
|
298
298
|
var wasm_reference_counts = new Map;
|
|
@@ -375,7 +375,7 @@ var getModelTask = async (model, options, onProgress, signal, TaskType) => {
|
|
|
375
375
|
return task;
|
|
376
376
|
};
|
|
377
377
|
|
|
378
|
-
// src/ai
|
|
378
|
+
// src/ai/common/TFMP_Download.ts
|
|
379
379
|
var TFMP_Download = async (input, model, onProgress, signal) => {
|
|
380
380
|
let task;
|
|
381
381
|
switch (model?.provider_config.pipeline) {
|
|
@@ -451,7 +451,7 @@ var TFMP_Download = async (input, model, onProgress, signal) => {
|
|
|
451
451
|
};
|
|
452
452
|
};
|
|
453
453
|
|
|
454
|
-
// src/ai
|
|
454
|
+
// src/ai/common/TFMP_FaceDetector.ts
|
|
455
455
|
import { PermanentJobError as PermanentJobError3 } from "@workglow/job-queue";
|
|
456
456
|
var TFMP_FaceDetector = async (input, model, onProgress, signal) => {
|
|
457
457
|
const { FaceDetector } = await loadTfmpTasksVisionSDK();
|
|
@@ -482,7 +482,7 @@ var TFMP_FaceDetector = async (input, model, onProgress, signal) => {
|
|
|
482
482
|
};
|
|
483
483
|
};
|
|
484
484
|
|
|
485
|
-
// src/ai
|
|
485
|
+
// src/ai/common/TFMP_FaceLandmarker.ts
|
|
486
486
|
import { PermanentJobError as PermanentJobError4 } from "@workglow/job-queue";
|
|
487
487
|
var TFMP_FaceLandmarker = async (input, model, onProgress, signal) => {
|
|
488
488
|
const { FaceLandmarker } = await loadTfmpTasksVisionSDK();
|
|
@@ -522,7 +522,7 @@ var TFMP_FaceLandmarker = async (input, model, onProgress, signal) => {
|
|
|
522
522
|
};
|
|
523
523
|
};
|
|
524
524
|
|
|
525
|
-
// src/ai
|
|
525
|
+
// src/ai/common/TFMP_GestureRecognizer.ts
|
|
526
526
|
import { PermanentJobError as PermanentJobError5 } from "@workglow/job-queue";
|
|
527
527
|
var TFMP_GestureRecognizer = async (input, model, onProgress, signal) => {
|
|
528
528
|
const { GestureRecognizer } = await loadTfmpTasksVisionSDK();
|
|
@@ -561,7 +561,7 @@ var TFMP_GestureRecognizer = async (input, model, onProgress, signal) => {
|
|
|
561
561
|
};
|
|
562
562
|
};
|
|
563
563
|
|
|
564
|
-
// src/ai
|
|
564
|
+
// src/ai/common/TFMP_HandLandmarker.ts
|
|
565
565
|
import { PermanentJobError as PermanentJobError6 } from "@workglow/job-queue";
|
|
566
566
|
var TFMP_HandLandmarker = async (input, model, onProgress, signal) => {
|
|
567
567
|
const { HandLandmarker } = await loadTfmpTasksVisionSDK();
|
|
@@ -596,7 +596,7 @@ var TFMP_HandLandmarker = async (input, model, onProgress, signal) => {
|
|
|
596
596
|
};
|
|
597
597
|
};
|
|
598
598
|
|
|
599
|
-
// src/ai
|
|
599
|
+
// src/ai/common/TFMP_ImageClassification.ts
|
|
600
600
|
import { PermanentJobError as PermanentJobError7 } from "@workglow/job-queue";
|
|
601
601
|
var TFMP_ImageClassification = async (input, model, onProgress, signal) => {
|
|
602
602
|
const { ImageClassifier } = await loadTfmpTasksVisionSDK();
|
|
@@ -616,7 +616,7 @@ var TFMP_ImageClassification = async (input, model, onProgress, signal) => {
|
|
|
616
616
|
};
|
|
617
617
|
};
|
|
618
618
|
|
|
619
|
-
// src/ai
|
|
619
|
+
// src/ai/common/TFMP_ImageEmbedding.ts
|
|
620
620
|
import { PermanentJobError as PermanentJobError8 } from "@workglow/job-queue";
|
|
621
621
|
var TFMP_ImageEmbedding = async (input, model, onProgress, signal) => {
|
|
622
622
|
const { ImageEmbedder } = await loadTfmpTasksVisionSDK();
|
|
@@ -642,7 +642,7 @@ var TFMP_ImageEmbedding = async (input, model, onProgress, signal) => {
|
|
|
642
642
|
};
|
|
643
643
|
};
|
|
644
644
|
|
|
645
|
-
// src/ai
|
|
645
|
+
// src/ai/common/TFMP_ImageSegmentation.ts
|
|
646
646
|
import { PermanentJobError as PermanentJobError9 } from "@workglow/job-queue";
|
|
647
647
|
var TFMP_ImageSegmentation = async (input, model, onProgress, signal) => {
|
|
648
648
|
const { ImageSegmenter } = await loadTfmpTasksVisionSDK();
|
|
@@ -667,7 +667,7 @@ var TFMP_ImageSegmentation = async (input, model, onProgress, signal) => {
|
|
|
667
667
|
};
|
|
668
668
|
};
|
|
669
669
|
|
|
670
|
-
// src/ai
|
|
670
|
+
// src/ai/common/TFMP_ModelInfo.ts
|
|
671
671
|
var TFMP_EMBEDDING_DIMENSIONS = {
|
|
672
672
|
"universal-sentence-encoder": { native_dimensions: 512, mrl: false }
|
|
673
673
|
};
|
|
@@ -710,7 +710,7 @@ var TFMP_ModelInfo = async (input, model) => {
|
|
|
710
710
|
};
|
|
711
711
|
};
|
|
712
712
|
|
|
713
|
-
// src/ai
|
|
713
|
+
// src/ai/common/TFMP_ObjectDetection.ts
|
|
714
714
|
import { PermanentJobError as PermanentJobError10 } from "@workglow/job-queue";
|
|
715
715
|
var TFMP_ObjectDetection = async (input, model, onProgress, signal) => {
|
|
716
716
|
const { ObjectDetector } = await loadTfmpTasksVisionSDK();
|
|
@@ -736,7 +736,7 @@ var TFMP_ObjectDetection = async (input, model, onProgress, signal) => {
|
|
|
736
736
|
};
|
|
737
737
|
};
|
|
738
738
|
|
|
739
|
-
// src/ai
|
|
739
|
+
// src/ai/common/TFMP_PoseLandmarker.ts
|
|
740
740
|
import { PermanentJobError as PermanentJobError11 } from "@workglow/job-queue";
|
|
741
741
|
var TFMP_PoseLandmarker = async (input, model, onProgress, signal) => {
|
|
742
742
|
const { PoseLandmarker } = await loadTfmpTasksVisionSDK();
|
|
@@ -783,7 +783,7 @@ var TFMP_PoseLandmarker = async (input, model, onProgress, signal) => {
|
|
|
783
783
|
};
|
|
784
784
|
};
|
|
785
785
|
|
|
786
|
-
// src/ai
|
|
786
|
+
// src/ai/common/TFMP_TextClassification.ts
|
|
787
787
|
import { PermanentJobError as PermanentJobError12 } from "@workglow/job-queue";
|
|
788
788
|
var TFMP_TextClassification = async (input, model, onProgress, signal) => {
|
|
789
789
|
const { TextClassifier } = await loadTfmpTasksTextSDK();
|
|
@@ -803,7 +803,7 @@ var TFMP_TextClassification = async (input, model, onProgress, signal) => {
|
|
|
803
803
|
};
|
|
804
804
|
};
|
|
805
805
|
|
|
806
|
-
// src/ai
|
|
806
|
+
// src/ai/common/TFMP_TextEmbedding.ts
|
|
807
807
|
import { PermanentJobError as PermanentJobError13 } from "@workglow/job-queue";
|
|
808
808
|
var TFMP_TextEmbedding = async (input, model, onProgress, signal) => {
|
|
809
809
|
const { TextEmbedder } = await loadTfmpTasksTextSDK();
|
|
@@ -830,7 +830,7 @@ var TFMP_TextEmbedding = async (input, model, onProgress, signal) => {
|
|
|
830
830
|
};
|
|
831
831
|
};
|
|
832
832
|
|
|
833
|
-
// src/ai
|
|
833
|
+
// src/ai/common/TFMP_TextLanguageDetection.ts
|
|
834
834
|
import { PermanentJobError as PermanentJobError14 } from "@workglow/job-queue";
|
|
835
835
|
var TFMP_TextLanguageDetection = async (input, model, onProgress, signal) => {
|
|
836
836
|
const maxLanguages = input.maxLanguages === 0 ? -1 : input.maxLanguages;
|
|
@@ -851,7 +851,7 @@ var TFMP_TextLanguageDetection = async (input, model, onProgress, signal) => {
|
|
|
851
851
|
};
|
|
852
852
|
};
|
|
853
853
|
|
|
854
|
-
// src/ai
|
|
854
|
+
// src/ai/common/TFMP_Unload.ts
|
|
855
855
|
var TFMP_Unload = async (input, model, onProgress, _signal) => {
|
|
856
856
|
const model_path = model.provider_config.model_path;
|
|
857
857
|
onProgress(10, "Unloading model");
|
|
@@ -878,7 +878,7 @@ var TFMP_Unload = async (input, model, onProgress, _signal) => {
|
|
|
878
878
|
};
|
|
879
879
|
};
|
|
880
880
|
|
|
881
|
-
// src/ai
|
|
881
|
+
// src/ai/common/TFMP_JobRunFns.ts
|
|
882
882
|
var TFMP_TASKS = {
|
|
883
883
|
DownloadModelTask: TFMP_Download,
|
|
884
884
|
UnloadModelTask: TFMP_Unload,
|
|
@@ -898,7 +898,7 @@ var TFMP_TASKS = {
|
|
|
898
898
|
ModelSearchTask: TFMP_ModelSearch
|
|
899
899
|
};
|
|
900
900
|
|
|
901
|
-
// src/ai
|
|
901
|
+
// src/ai/TensorFlowMediaPipeQueuedProvider.ts
|
|
902
902
|
import { AiProvider } from "@workglow/ai";
|
|
903
903
|
class TensorFlowMediaPipeQueuedProvider extends AiProvider {
|
|
904
904
|
name = TENSORFLOW_MEDIAPIPE;
|
|
@@ -911,15 +911,15 @@ class TensorFlowMediaPipeQueuedProvider extends AiProvider {
|
|
|
911
911
|
}
|
|
912
912
|
}
|
|
913
913
|
|
|
914
|
-
// src/ai
|
|
914
|
+
// src/ai/registerTensorFlowMediaPipeInline.ts
|
|
915
915
|
async function registerTensorFlowMediaPipeInline(options) {
|
|
916
916
|
await registerProviderInline(new TensorFlowMediaPipeQueuedProvider(TFMP_TASKS), "TensorFlow MediaPipe", options);
|
|
917
917
|
}
|
|
918
918
|
|
|
919
|
-
// src/ai
|
|
920
|
-
import { registerProviderWorker } from "@workglow/ai-
|
|
919
|
+
// src/ai/registerTensorFlowMediaPipeWorker.ts
|
|
920
|
+
import { registerProviderWorker } from "@workglow/ai/provider-utils";
|
|
921
921
|
|
|
922
|
-
// src/ai
|
|
922
|
+
// src/ai/TensorFlowMediaPipeProvider.ts
|
|
923
923
|
import { AiProvider as AiProvider2 } from "@workglow/ai/worker";
|
|
924
924
|
class TensorFlowMediaPipeProvider extends AiProvider2 {
|
|
925
925
|
name = TENSORFLOW_MEDIAPIPE;
|
|
@@ -932,7 +932,7 @@ class TensorFlowMediaPipeProvider extends AiProvider2 {
|
|
|
932
932
|
}
|
|
933
933
|
}
|
|
934
934
|
|
|
935
|
-
// src/ai
|
|
935
|
+
// src/ai/registerTensorFlowMediaPipeWorker.ts
|
|
936
936
|
async function registerTensorFlowMediaPipeWorker() {
|
|
937
937
|
await registerProviderWorker((ws) => new TensorFlowMediaPipeProvider(TFMP_TASKS).registerOnWorkerServer(ws), "TensorFlow MediaPipe");
|
|
938
938
|
}
|
|
@@ -943,4 +943,4 @@ export {
|
|
|
943
943
|
loadTfmpTasksTextSDK
|
|
944
944
|
};
|
|
945
945
|
|
|
946
|
-
//# debugId=
|
|
946
|
+
//# debugId=038D388702B3B6A264756E2164756E21
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../src/ai
|
|
3
|
+
"sources": ["../src/ai/common/TFMP_Client.ts", "../src/ai/registerTensorFlowMediaPipeInline.ts", "../src/ai/common/TFMP_ModelSearch.ts", "../src/ai/common/TFMP_Constants.ts", "../src/ai/common/TFMP_Download.ts", "../src/ai/common/TFMP_Runtime.ts", "../src/ai/common/TFMP_FaceDetector.ts", "../src/ai/common/TFMP_FaceLandmarker.ts", "../src/ai/common/TFMP_GestureRecognizer.ts", "../src/ai/common/TFMP_HandLandmarker.ts", "../src/ai/common/TFMP_ImageClassification.ts", "../src/ai/common/TFMP_ImageEmbedding.ts", "../src/ai/common/TFMP_ImageSegmentation.ts", "../src/ai/common/TFMP_ModelInfo.ts", "../src/ai/common/TFMP_ObjectDetection.ts", "../src/ai/common/TFMP_PoseLandmarker.ts", "../src/ai/common/TFMP_TextClassification.ts", "../src/ai/common/TFMP_TextEmbedding.ts", "../src/ai/common/TFMP_TextLanguageDetection.ts", "../src/ai/common/TFMP_Unload.ts", "../src/ai/common/TFMP_JobRunFns.ts", "../src/ai/TensorFlowMediaPipeQueuedProvider.ts", "../src/ai/registerTensorFlowMediaPipeWorker.ts", "../src/ai/TensorFlowMediaPipeProvider.ts"],
|
|
4
4
|
"sourcesContent": [
|
|
5
5
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nlet _tasksText: typeof import(\"@mediapipe/tasks-text\") | undefined;\nlet _tasksVision: typeof import(\"@mediapipe/tasks-vision\") | undefined;\n\nexport async function loadTfmpTasksTextSDK() {\n if (!_tasksText) {\n try {\n _tasksText = await import(\"@mediapipe/tasks-text\");\n } catch {\n throw new Error(\n \"@mediapipe/tasks-text is required for TensorFlow MediaPipe text (and related) tasks. Install with: bun add @mediapipe/tasks-text\"\n );\n }\n }\n return _tasksText;\n}\n\nexport async function loadTfmpTasksVisionSDK() {\n if (!_tasksVision) {\n try {\n _tasksVision = await import(\"@mediapipe/tasks-vision\");\n } catch {\n throw new Error(\n \"@mediapipe/tasks-vision is required for TensorFlow MediaPipe vision tasks. Install with: bun add @mediapipe/tasks-vision\"\n );\n }\n }\n return _tasksVision;\n}\n",
|
|
6
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRegisterOptions } from \"@workglow/ai\";\nimport { registerProviderInline } from \"@workglow/ai-
|
|
7
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ModelSearchResultItem,\n ModelSearchTaskInput,\n ModelSearchTaskOutput,\n} from \"@workglow/ai\";\nimport { filterModelSearchResultsByQuery } from \"@workglow/ai-
|
|
6
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRegisterOptions } from \"@workglow/ai\";\nimport { registerProviderInline } from \"@workglow/ai/provider-utils\";\nimport { TFMP_TASKS } from \"./common/TFMP_JobRunFns\";\nimport { TensorFlowMediaPipeQueuedProvider } from \"./TensorFlowMediaPipeQueuedProvider\";\n\nexport async function registerTensorFlowMediaPipeInline(\n options?: AiProviderRegisterOptions\n): Promise<void> {\n await registerProviderInline(\n new TensorFlowMediaPipeQueuedProvider(TFMP_TASKS),\n \"TensorFlow MediaPipe\",\n options\n );\n}\n",
|
|
7
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ModelSearchResultItem,\n ModelSearchTaskInput,\n ModelSearchTaskOutput,\n} from \"@workglow/ai\";\nimport { filterModelSearchResultsByQuery } from \"@workglow/ai/provider-utils\";\nimport { TENSORFLOW_MEDIAPIPE } from \"./TFMP_Constants\";\n\nconst TFMP_MODEL_RESULTS: ModelSearchResultItem[] = [\n {\n id: \"universal-sentence-encoder\",\n label: \"Universal Sentence Encoder\",\n description: \"Text embedding model\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"Universal Sentence Encoder\",\n description: \"Universal Sentence Encoder\",\n tasks: [\"TextEmbeddingTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-tasks/text_embedder/universal_sentence_encoder.tflite\",\n task_engine: \"text\",\n pipeline: \"text-embedder\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"language-detector\",\n label: \"MediaPipe Language Detector\",\n description: \"Language detection model\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"MediaPipe Language Detector\",\n description: \"MediaPipe Language Detector\",\n tasks: [\"TextLanguageDetectionTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-models/language_detector/language_detector/float32/latest/language_detector.tflite\",\n task_engine: \"text\",\n pipeline: \"text-language-detector\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"bert-text-classifier\",\n label: \"MediaPipe BERT Text Classifier\",\n description: \"Text classification model\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"MediaPipe BERT Text Classifier\",\n description: \"MediaPipe BERT Text Classifier\",\n tasks: [\"TextClassificationTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-tasks/text_classifier/bert_text_classifier.tflite\",\n task_engine: \"text\",\n pipeline: \"text-classifier\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"image-embedder\",\n label: \"MediaPipe Image Embedder\",\n description: \"Image embedding model\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"MediaPipe Image Embedder\",\n description: \"MediaPipe Image Embedder\",\n tasks: [\"ImageEmbeddingTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-models/image_embedder/mobilenet_v3_small/float32/1/mobilenet_v3_small.tflite\",\n task_engine: \"vision\",\n pipeline: \"vision-image-embedder\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"efficientnet-lite0\",\n label: \"EfficientNet Lite0\",\n description: \"Image classification model\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"EfficientNet Lite0\",\n description: \"Image classification model\",\n tasks: [\"ImageClassificationTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-models/image_classifier/efficientnet_lite0/float32/1/efficientnet_lite0.tflite\",\n task_engine: \"vision\",\n pipeline: \"vision-image-classifier\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"efficientdet-lite0\",\n label: \"Efficient Object Detector Lite0\",\n description: \"Object detection model\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"Efficient Object Detector Lite0\",\n description: \"Object detection model\",\n tasks: [\"ObjectDetectionTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-models/object_detector/efficientdet_lite0/float32/1/efficientdet_lite0.tflite\",\n task_engine: \"vision\",\n pipeline: \"vision-object-detector\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"deeplabv3\",\n label: \"Efficient Image Segmenter Lite0\",\n description: \"Image segmentation model\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"Efficient Image Segmenter Lite0\",\n description: \"Image segmentation model\",\n tasks: [\"ImageSegmentationTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-assets/deeplabv3.tflite?generation=1661875711618421\",\n task_engine: \"vision\",\n pipeline: \"vision-image-segmenter\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"face-landmarker\",\n label: \"Face Landmarker\",\n description: \"Detects 478 facial landmarks with blendshapes\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"Face Landmarker\",\n description: \"Detects 478 facial landmarks with blendshapes\",\n tasks: [\"FaceLandmarkerTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-models/face_landmarker/face_landmarker/float16/1/face_landmarker.task\",\n task_engine: \"vision\",\n pipeline: \"vision-face-landmarker\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"gesture-recognizer\",\n label: \"Gesture Recognizer\",\n description: \"Recognizes hand gestures such as thumbs up and victory\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"Gesture Recognizer\",\n description: \"Recognizes hand gestures such as thumbs up and victory\",\n tasks: [\"GestureRecognizerTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-models/gesture_recognizer/gesture_recognizer/float16/1/gesture_recognizer.task\",\n task_engine: \"vision\",\n pipeline: \"vision-gesture-recognizer\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"hand-landmarker\",\n label: \"Hand Landmarker\",\n description: \"Detects 21 hand landmarks\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"Hand Landmarker\",\n description: \"Detects 21 hand landmarks\",\n tasks: [\"HandLandmarkerTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-models/hand_landmarker/hand_landmarker/float16/1/hand_landmarker.task\",\n task_engine: \"vision\",\n pipeline: \"vision-hand-landmarker\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"pose-landmarker\",\n label: \"Pose Landmarker\",\n description: \"Detects 33 body pose landmarks\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"Pose Landmarker\",\n description: \"Detects 33 body pose landmarks\",\n tasks: [\"PoseLandmarkerTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-models/pose_landmarker/pose_landmarker_lite/float16/1/pose_landmarker_lite.task\",\n task_engine: \"vision\",\n pipeline: \"vision-pose-landmarker\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n];\n\nexport function createTFMPModelSearch(\n providerId: string\n): AiProviderRunFn<ModelSearchTaskInput, ModelSearchTaskOutput> {\n return async (input) => {\n const results = filterModelSearchResultsByQuery(\n TFMP_MODEL_RESULTS.map((result) => ({\n ...result,\n record: { ...result.record, provider: providerId },\n })),\n input.query\n );\n return { results };\n };\n}\n\nexport const TFMP_ModelSearch: AiProviderRunFn<ModelSearchTaskInput, ModelSearchTaskOutput> =\n createTFMPModelSearch(TENSORFLOW_MEDIAPIPE);\n",
|
|
8
8
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport const TENSORFLOW_MEDIAPIPE = \"TENSORFLOW_MEDIAPIPE\";\n\nexport const TFMP_DEFAULT_TASK_TYPES = [\n \"DownloadModelTask\",\n \"UnloadModelTask\",\n \"ModelInfoTask\",\n \"TextEmbeddingTask\",\n \"TextLanguageDetectionTask\",\n \"TextClassificationTask\",\n \"ImageSegmentationTask\",\n \"ImageEmbeddingTask\",\n \"ImageClassificationTask\",\n \"ObjectDetectionTask\",\n \"GestureRecognizerTask\",\n \"HandLandmarkerTask\",\n \"FaceDetectorTask\",\n \"FaceLandmarkerTask\",\n \"PoseLandmarkerTask\",\n \"ModelSearchTask\",\n] as const;\n\nexport type TextPipelineTask =\n | \"text-embedder\"\n | \"text-classifier\"\n | \"text-language-detector\"\n | \"genai-text\"\n | \"audio-classifier\"\n | \"audio-embedder\"\n | \"vision-face-detector\"\n | \"vision-face-landmarker\"\n | \"vision-face-stylizer\"\n | \"vision-gesture-recognizer\"\n | \"vision-hand-landmarker\"\n | \"vision-holistic-landmarker\"\n | \"vision-image-classifier\"\n | \"vision-image-embedder\"\n | \"vision-image-segmenter\"\n | \"vision-image-interactive-segmenter\"\n | \"vision-object-detector\"\n | \"vision-pose-landmarker\";\n\nexport const TextPipelineTask = {\n \"text-embedder\": \"text-embedder\",\n \"text-classifier\": \"text-classifier\",\n \"text-language-detector\": \"text-language-detector\",\n \"genai-text\": \"genai-text\",\n \"audio-classifier\": \"audio-classifier\",\n \"audio-embedder\": \"audio-embedder\",\n \"vision-face-detector\": \"vision-face-detector\",\n \"vision-face-landmarker\": \"vision-face-landmarker\",\n \"vision-face-stylizer\": \"vision-face-stylizer\",\n \"vision-gesture-recognizer\": \"vision-gesture-recognizer\",\n \"vision-hand-landmarker\": \"vision-hand-landmarker\",\n \"vision-holistic-landmarker\": \"vision-holistic-landmarker\",\n \"vision-image-classifier\": \"vision-image-classifier\",\n \"vision-image-embedder\": \"vision-image-embedder\",\n \"vision-image-segmenter\": \"vision-image-segmenter\",\n \"vision-image-interactive-segmenter\": \"vision-image-interactive-segmenter\",\n \"vision-object-detector\": \"vision-object-detector\",\n \"vision-pose-landmarker\": \"vision-pose-landmarker\",\n} as const satisfies Record<TextPipelineTask, TextPipelineTask>;\n",
|
|
9
9
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n DownloadModelTaskRunInput,\n DownloadModelTaskRunOutput,\n} from \"@workglow/ai\";\nimport { PermanentJobError } from \"@workglow/job-queue\";\nimport { loadTfmpTasksTextSDK, loadTfmpTasksVisionSDK } from \"./TFMP_Client\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { getModelTask, wasm_reference_counts } from \"./TFMP_Runtime\";\nimport type { TaskInstance } from \"./TFMP_Runtime\";\n\nexport const TFMP_Download: AiProviderRunFn<\n DownloadModelTaskRunInput,\n DownloadModelTaskRunOutput,\n TFMPModelConfig\n> = async (input, model, onProgress, signal) => {\n let task: TaskInstance;\n switch (model?.provider_config.pipeline) {\n case \"text-embedder\": {\n const { TextEmbedder } = await loadTfmpTasksTextSDK();\n task = await getModelTask(model, {}, onProgress, signal, TextEmbedder);\n break;\n }\n case \"text-classifier\": {\n const { TextClassifier } = await loadTfmpTasksTextSDK();\n task = await getModelTask(model, {}, onProgress, signal, TextClassifier);\n break;\n }\n case \"text-language-detector\": {\n const { LanguageDetector } = await loadTfmpTasksTextSDK();\n task = await getModelTask(model, {}, onProgress, signal, LanguageDetector);\n break;\n }\n case \"vision-image-classifier\": {\n const { ImageClassifier } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model, {}, onProgress, signal, ImageClassifier);\n break;\n }\n case \"vision-image-embedder\": {\n const { ImageEmbedder } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model, {}, onProgress, signal, ImageEmbedder);\n break;\n }\n case \"vision-image-segmenter\": {\n const { ImageSegmenter } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model, {}, onProgress, signal, ImageSegmenter);\n break;\n }\n case \"vision-object-detector\": {\n const { ObjectDetector } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model, {}, onProgress, signal, ObjectDetector);\n break;\n }\n case \"vision-face-detector\": {\n const { FaceDetector } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model, {}, onProgress, signal, FaceDetector);\n break;\n }\n case \"vision-face-landmarker\": {\n const { FaceLandmarker } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model, {}, onProgress, signal, FaceLandmarker);\n break;\n }\n case \"vision-gesture-recognizer\": {\n const { GestureRecognizer } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model, {}, onProgress, signal, GestureRecognizer);\n break;\n }\n case \"vision-hand-landmarker\": {\n const { HandLandmarker } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model, {}, onProgress, signal, HandLandmarker);\n break;\n }\n case \"vision-pose-landmarker\": {\n const { PoseLandmarker } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model, {}, onProgress, signal, PoseLandmarker);\n break;\n }\n default:\n throw new PermanentJobError(\n `Invalid pipeline: ${model?.provider_config.pipeline}. Supported pipelines: text-embedder, text-classifier, text-language-detector, vision-image-classifier, vision-image-embedder, vision-image-segmenter, vision-object-detector, vision-face-detector, vision-face-landmarker, vision-gesture-recognizer, vision-hand-landmarker, vision-pose-landmarker`\n );\n }\n onProgress(0.9, \"Pipeline loaded\");\n task.close();\n const task_engine = model?.provider_config.task_engine;\n wasm_reference_counts.set(task_engine, wasm_reference_counts.get(task_engine)! - 1);\n\n return {\n model: input.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 { PermanentJobError } from \"@workglow/job-queue\";\nimport { loadTfmpTasksTextSDK, loadTfmpTasksVisionSDK } from \"./TFMP_Client\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\n\nexport interface TFMPWasmFileset {\n readonly wasmLoaderPath: string;\n readonly wasmBinaryPath: string;\n readonly assetLoaderPath?: string;\n readonly assetBinaryPath?: string;\n}\n\nexport const wasm_tasks = new Map<string, TFMPWasmFileset>();\nexport const wasm_reference_counts = new Map<string, number>();\n\ntype TaskConstructor = {\n createFromOptions(\n wasmFileset: TFMPWasmFileset,\n options: Record<string, unknown>\n ): Promise<TaskInstance>;\n};\n\nexport type TaskInstance = {\n close(): void;\n [key: string]: any;\n};\n\nexport interface CachedModelTask {\n readonly task: TaskInstance;\n readonly options: Record<string, unknown>;\n readonly task_engine: string;\n}\n\nexport const modelTaskCache = new Map<string, CachedModelTask[]>();\n\nconst optionsMatch = (opts1: Record<string, unknown>, opts2: Record<string, unknown>): boolean => {\n const keys1 = Object.keys(opts1).sort();\n const keys2 = Object.keys(opts2).sort();\n\n if (keys1.length !== keys2.length) return false;\n\n return keys1.every((key) => {\n const val1 = opts1[key];\n const val2 = opts2[key];\n\n if (Array.isArray(val1) && Array.isArray(val2)) {\n return JSON.stringify(val1) === JSON.stringify(val2);\n }\n\n return val1 === val2;\n });\n};\n\nconst getWasmTask = async (\n model: TFMPModelConfig,\n onProgress: (progress: number, message?: string, details?: any) => void,\n signal: AbortSignal\n): Promise<TFMPWasmFileset> => {\n const task_engine = model.provider_config.task_engine;\n\n if (wasm_tasks.has(task_engine)) {\n return wasm_tasks.get(task_engine)!;\n }\n\n if (signal.aborted) {\n throw new PermanentJobError(\"Aborted job\");\n }\n\n onProgress(0.1, \"Loading WASM task\");\n\n let wasmFileset: TFMPWasmFileset;\n\n switch (task_engine) {\n case \"vision\": {\n const { FilesetResolver } = await loadTfmpTasksVisionSDK();\n wasmFileset = await FilesetResolver.forVisionTasks(\n \"https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision@latest/wasm\"\n );\n break;\n }\n case \"text\": {\n const { FilesetResolver } = await loadTfmpTasksTextSDK();\n wasmFileset = await FilesetResolver.forTextTasks(\n \"https://cdn.jsdelivr.net/npm/@mediapipe/tasks-text@latest/wasm\"\n );\n break;\n }\n case \"audio\": {\n const { FilesetResolver } = await loadTfmpTasksTextSDK();\n wasmFileset = await FilesetResolver.forAudioTasks(\n \"https://cdn.jsdelivr.net/npm/@mediapipe/tasks-audio@latest/wasm\"\n );\n break;\n }\n case \"genai\": {\n const { FilesetResolver } = await loadTfmpTasksTextSDK();\n wasmFileset = await FilesetResolver.forGenAiTasks(\n \"https://cdn.jsdelivr.net/npm/@mediapipe/tasks-genai@latest/wasm\"\n );\n break;\n }\n default:\n throw new PermanentJobError(\"Invalid task engine\");\n }\n\n wasm_tasks.set(task_engine, wasmFileset);\n return wasmFileset;\n};\n\nexport const getModelTask = async (\n model: TFMPModelConfig,\n options: Record<string, unknown>,\n onProgress: (progress: number, message?: string, details?: any) => void,\n signal: AbortSignal,\n TaskType: TaskConstructor\n): Promise<any> => {\n const model_path = model.provider_config.model_path;\n const task_engine = model.provider_config.task_engine;\n\n const cachedTasks = modelTaskCache.get(model_path);\n if (cachedTasks) {\n const matchedTask = cachedTasks.find((cached) => optionsMatch(cached.options, options));\n if (matchedTask) {\n return matchedTask.task;\n }\n }\n\n const wasmFileset = await getWasmTask(model, onProgress, signal);\n\n onProgress(0.2, \"Creating model task\");\n\n const task = await TaskType.createFromOptions(wasmFileset, {\n baseOptions: {\n modelAssetPath: model_path,\n },\n ...options,\n });\n\n const cachedTask: CachedModelTask = { task, options, task_engine };\n if (!modelTaskCache.has(model_path)) {\n modelTaskCache.set(model_path, []);\n }\n modelTaskCache.get(model_path)!.push(cachedTask);\n\n wasm_reference_counts.set(task_engine, (wasm_reference_counts.get(task_engine) || 0) + 1);\n\n return task;\n};\n",
|
|
@@ -24,10 +24,10 @@
|
|
|
24
24
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n UnloadModelTaskRunInput,\n UnloadModelTaskRunOutput,\n} from \"@workglow/ai\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { modelTaskCache, wasm_reference_counts, wasm_tasks } from \"./TFMP_Runtime\";\n\nexport const TFMP_Unload: AiProviderRunFn<\n UnloadModelTaskRunInput,\n UnloadModelTaskRunOutput,\n TFMPModelConfig\n> = async (input, model, onProgress, _signal) => {\n const model_path = model!.provider_config.model_path;\n onProgress(10, \"Unloading model\");\n if (modelTaskCache.has(model_path)) {\n const cachedTasks = modelTaskCache.get(model_path)!;\n\n for (const cachedTask of cachedTasks) {\n const task = cachedTask.task;\n if (\"close\" in task && typeof task.close === \"function\") task.close();\n\n const task_engine = cachedTask.task_engine;\n const currentCount = wasm_reference_counts.get(task_engine) || 0;\n const newCount = currentCount - 1;\n\n if (newCount <= 0) {\n wasm_tasks.delete(task_engine);\n wasm_reference_counts.delete(task_engine);\n } else {\n wasm_reference_counts.set(task_engine, newCount);\n }\n }\n\n modelTaskCache.delete(model_path);\n }\n\n return {\n model: input.model,\n };\n};\n",
|
|
25
25
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRunFn } from \"@workglow/ai\";\nimport type { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { TFMP_ModelSearch } from \"./TFMP_ModelSearch\";\n\nimport { TFMP_Download } from \"./TFMP_Download\";\nimport { TFMP_FaceDetector } from \"./TFMP_FaceDetector\";\nimport { TFMP_FaceLandmarker } from \"./TFMP_FaceLandmarker\";\nimport { TFMP_GestureRecognizer } from \"./TFMP_GestureRecognizer\";\nimport { TFMP_HandLandmarker } from \"./TFMP_HandLandmarker\";\nimport { TFMP_ImageClassification } from \"./TFMP_ImageClassification\";\nimport { TFMP_ImageEmbedding } from \"./TFMP_ImageEmbedding\";\nimport { TFMP_ImageSegmentation } from \"./TFMP_ImageSegmentation\";\nimport { TFMP_ModelInfo } from \"./TFMP_ModelInfo\";\nimport { TFMP_ObjectDetection } from \"./TFMP_ObjectDetection\";\nimport { TFMP_PoseLandmarker } from \"./TFMP_PoseLandmarker\";\nimport { TFMP_TextClassification } from \"./TFMP_TextClassification\";\nimport { TFMP_TextEmbedding } from \"./TFMP_TextEmbedding\";\nimport { TFMP_TextLanguageDetection } from \"./TFMP_TextLanguageDetection\";\nimport { TFMP_Unload } from \"./TFMP_Unload\";\n\nexport { loadTfmpTasksTextSDK, loadTfmpTasksVisionSDK } from \"./TFMP_Client\";\n\nexport const TFMP_TASKS: Record<string, AiProviderRunFn<any, any, TFMPModelConfig>> = {\n DownloadModelTask: TFMP_Download,\n UnloadModelTask: TFMP_Unload,\n ModelInfoTask: TFMP_ModelInfo,\n TextEmbeddingTask: TFMP_TextEmbedding,\n TextLanguageDetectionTask: TFMP_TextLanguageDetection,\n TextClassificationTask: TFMP_TextClassification,\n ImageSegmentationTask: TFMP_ImageSegmentation,\n ImageEmbeddingTask: TFMP_ImageEmbedding,\n ImageClassificationTask: TFMP_ImageClassification,\n ObjectDetectionTask: TFMP_ObjectDetection,\n GestureRecognizerTask: TFMP_GestureRecognizer,\n HandLandmarkerTask: TFMP_HandLandmarker,\n FaceDetectorTask: TFMP_FaceDetector,\n FaceLandmarkerTask: TFMP_FaceLandmarker,\n PoseLandmarkerTask: TFMP_PoseLandmarker,\n ModelSearchTask: TFMP_ModelSearch,\n};\n",
|
|
26
26
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { AiProvider } from \"@workglow/ai\";\nimport type { AiProviderPreviewRunFn, AiProviderRunFn } from \"@workglow/ai\";\nimport { TENSORFLOW_MEDIAPIPE, TFMP_DEFAULT_TASK_TYPES } from \"./common/TFMP_Constants\";\nimport type { TFMPModelConfig } from \"./common/TFMP_ModelSchema\";\n\n/** Main-thread registration (inline or worker-backed). WASM-only — uses direct execution. */\nexport class TensorFlowMediaPipeQueuedProvider extends AiProvider<TFMPModelConfig> {\n readonly name = TENSORFLOW_MEDIAPIPE;\n readonly displayName = \"TensorFlow MediaPipe\";\n readonly isLocal = true;\n readonly supportsBrowser = true;\n\n readonly taskTypes: readonly string[] = TFMP_DEFAULT_TASK_TYPES;\n\n constructor(\n tasks?: Record<string, AiProviderRunFn<any, any, TFMPModelConfig>>,\n previewTasks?: Record<string, AiProviderPreviewRunFn<any, any, TFMPModelConfig>>\n ) {\n super(tasks, undefined, previewTasks);\n }\n}\n",
|
|
27
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { registerProviderWorker } from \"@workglow/ai-
|
|
27
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { registerProviderWorker } from \"@workglow/ai/provider-utils\";\nimport { TFMP_TASKS } from \"./common/TFMP_JobRunFns\";\nimport { TensorFlowMediaPipeProvider } from \"./TensorFlowMediaPipeProvider\";\n\nexport async function registerTensorFlowMediaPipeWorker(): Promise<void> {\n await registerProviderWorker(\n (ws) => new TensorFlowMediaPipeProvider(TFMP_TASKS).registerOnWorkerServer(ws),\n \"TensorFlow MediaPipe\"\n );\n}\n",
|
|
28
28
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { AiProvider } from \"@workglow/ai/worker\";\nimport type { AiProviderPreviewRunFn, AiProviderRunFn } from \"@workglow/ai/worker\";\nimport { TENSORFLOW_MEDIAPIPE, TFMP_DEFAULT_TASK_TYPES } from \"./common/TFMP_Constants\";\nimport type { TFMPModelConfig } from \"./common/TFMP_ModelSchema\";\n\n/**\n * AI provider for TensorFlow MediaPipe models.\n *\n * Task run functions are injected via the constructor so that the heavy\n * `@mediapipe/*` libraries are only pulled in where actually needed\n * (inline mode, worker server), not on the main thread in worker mode.\n * Use `loadTfmpTasksTextSDK` / `loadTfmpTasksVisionSDK` for cached dynamic imports.\n\n */\nexport class TensorFlowMediaPipeProvider extends AiProvider<TFMPModelConfig> {\n readonly name = TENSORFLOW_MEDIAPIPE;\n readonly displayName = \"TensorFlow MediaPipe\";\n readonly isLocal = true;\n readonly supportsBrowser = true;\n\n readonly taskTypes: readonly string[] = TFMP_DEFAULT_TASK_TYPES;\n\n constructor(\n tasks?: Record<string, AiProviderRunFn<any, any, TFMPModelConfig>>,\n previewTasks?: Record<string, AiProviderPreviewRunFn<any, any, TFMPModelConfig>>\n ) {\n super(tasks, undefined, previewTasks);\n }\n}\n"
|
|
29
29
|
],
|
|
30
30
|
"mappings": "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",
|
|
31
|
-
"debugId": "
|
|
31
|
+
"debugId": "038D388702B3B6A264756E2164756E21",
|
|
32
32
|
"names": []
|
|
33
33
|
}
|
package/dist/ai.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,YAAY,CAAC"}
|
|
@@ -6,7 +6,7 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
|
|
|
6
6
|
throw Error('Dynamic require of "' + x + '" is not supported');
|
|
7
7
|
});
|
|
8
8
|
|
|
9
|
-
// src/ai
|
|
9
|
+
// src/ai/common/TFMP_Constants.ts
|
|
10
10
|
var TENSORFLOW_MEDIAPIPE = "TENSORFLOW_MEDIAPIPE";
|
|
11
11
|
var TFMP_DEFAULT_TASK_TYPES = [
|
|
12
12
|
"DownloadModelTask",
|
|
@@ -47,7 +47,7 @@ var TextPipelineTask = {
|
|
|
47
47
|
"vision-pose-landmarker": "vision-pose-landmarker"
|
|
48
48
|
};
|
|
49
49
|
|
|
50
|
-
// src/ai
|
|
50
|
+
// src/ai/common/TFMP_ModelSchema.ts
|
|
51
51
|
import { ModelConfigSchema, ModelRecordSchema } from "@workglow/ai/worker";
|
|
52
52
|
var TFMPModelSchema = {
|
|
53
53
|
type: "object",
|
|
@@ -101,8 +101,8 @@ var TFMPModelConfigSchema = {
|
|
|
101
101
|
additionalProperties: false
|
|
102
102
|
};
|
|
103
103
|
|
|
104
|
-
// src/ai
|
|
105
|
-
import { filterModelSearchResultsByQuery } from "@workglow/ai-
|
|
104
|
+
// src/ai/common/TFMP_ModelSearch.ts
|
|
105
|
+
import { filterModelSearchResultsByQuery } from "@workglow/ai/provider-utils";
|
|
106
106
|
var TFMP_MODEL_RESULTS = [
|
|
107
107
|
{
|
|
108
108
|
id: "universal-sentence-encoder",
|
|
@@ -314,10 +314,10 @@ function createTFMPModelSearch(providerId) {
|
|
|
314
314
|
}
|
|
315
315
|
var TFMP_ModelSearch = createTFMPModelSearch(TENSORFLOW_MEDIAPIPE);
|
|
316
316
|
|
|
317
|
-
// src/ai
|
|
318
|
-
import { registerProviderWithWorker } from "@workglow/ai-
|
|
317
|
+
// src/ai/registerTensorFlowMediaPipe.ts
|
|
318
|
+
import { registerProviderWithWorker } from "@workglow/ai/provider-utils";
|
|
319
319
|
|
|
320
|
-
// src/ai
|
|
320
|
+
// src/ai/TensorFlowMediaPipeQueuedProvider.ts
|
|
321
321
|
import { AiProvider } from "@workglow/ai";
|
|
322
322
|
class TensorFlowMediaPipeQueuedProvider extends AiProvider {
|
|
323
323
|
name = TENSORFLOW_MEDIAPIPE;
|
|
@@ -330,7 +330,7 @@ class TensorFlowMediaPipeQueuedProvider extends AiProvider {
|
|
|
330
330
|
}
|
|
331
331
|
}
|
|
332
332
|
|
|
333
|
-
// src/ai
|
|
333
|
+
// src/ai/registerTensorFlowMediaPipe.ts
|
|
334
334
|
async function registerTensorFlowMediaPipe(options) {
|
|
335
335
|
await registerProviderWithWorker(new TensorFlowMediaPipeQueuedProvider, "TensorFlow MediaPipe", options);
|
|
336
336
|
}
|
|
@@ -346,4 +346,4 @@ export {
|
|
|
346
346
|
TENSORFLOW_MEDIAPIPE
|
|
347
347
|
};
|
|
348
348
|
|
|
349
|
-
//# debugId=
|
|
349
|
+
//# debugId=50E8E246C2C5CE2A64756E2164756E21
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../src/ai
|
|
3
|
+
"sources": ["../src/ai/common/TFMP_Constants.ts", "../src/ai/common/TFMP_ModelSchema.ts", "../src/ai/common/TFMP_ModelSearch.ts", "../src/ai/registerTensorFlowMediaPipe.ts", "../src/ai/TensorFlowMediaPipeQueuedProvider.ts"],
|
|
4
4
|
"sourcesContent": [
|
|
5
5
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport const TENSORFLOW_MEDIAPIPE = \"TENSORFLOW_MEDIAPIPE\";\n\nexport const TFMP_DEFAULT_TASK_TYPES = [\n \"DownloadModelTask\",\n \"UnloadModelTask\",\n \"ModelInfoTask\",\n \"TextEmbeddingTask\",\n \"TextLanguageDetectionTask\",\n \"TextClassificationTask\",\n \"ImageSegmentationTask\",\n \"ImageEmbeddingTask\",\n \"ImageClassificationTask\",\n \"ObjectDetectionTask\",\n \"GestureRecognizerTask\",\n \"HandLandmarkerTask\",\n \"FaceDetectorTask\",\n \"FaceLandmarkerTask\",\n \"PoseLandmarkerTask\",\n \"ModelSearchTask\",\n] as const;\n\nexport type TextPipelineTask =\n | \"text-embedder\"\n | \"text-classifier\"\n | \"text-language-detector\"\n | \"genai-text\"\n | \"audio-classifier\"\n | \"audio-embedder\"\n | \"vision-face-detector\"\n | \"vision-face-landmarker\"\n | \"vision-face-stylizer\"\n | \"vision-gesture-recognizer\"\n | \"vision-hand-landmarker\"\n | \"vision-holistic-landmarker\"\n | \"vision-image-classifier\"\n | \"vision-image-embedder\"\n | \"vision-image-segmenter\"\n | \"vision-image-interactive-segmenter\"\n | \"vision-object-detector\"\n | \"vision-pose-landmarker\";\n\nexport const TextPipelineTask = {\n \"text-embedder\": \"text-embedder\",\n \"text-classifier\": \"text-classifier\",\n \"text-language-detector\": \"text-language-detector\",\n \"genai-text\": \"genai-text\",\n \"audio-classifier\": \"audio-classifier\",\n \"audio-embedder\": \"audio-embedder\",\n \"vision-face-detector\": \"vision-face-detector\",\n \"vision-face-landmarker\": \"vision-face-landmarker\",\n \"vision-face-stylizer\": \"vision-face-stylizer\",\n \"vision-gesture-recognizer\": \"vision-gesture-recognizer\",\n \"vision-hand-landmarker\": \"vision-hand-landmarker\",\n \"vision-holistic-landmarker\": \"vision-holistic-landmarker\",\n \"vision-image-classifier\": \"vision-image-classifier\",\n \"vision-image-embedder\": \"vision-image-embedder\",\n \"vision-image-segmenter\": \"vision-image-segmenter\",\n \"vision-image-interactive-segmenter\": \"vision-image-interactive-segmenter\",\n \"vision-object-detector\": \"vision-object-detector\",\n \"vision-pose-landmarker\": \"vision-pose-landmarker\",\n} as const satisfies Record<TextPipelineTask, TextPipelineTask>;\n",
|
|
6
6
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { ModelConfigSchema, ModelRecordSchema } from \"@workglow/ai/worker\";\nimport { DataPortSchemaObject, FromSchema } from \"@workglow/util/worker\";\nimport { TENSORFLOW_MEDIAPIPE, TextPipelineTask } from \"../common/TFMP_Constants\";\n\nexport const TFMPModelSchema = {\n type: \"object\",\n properties: {\n provider: {\n const: TENSORFLOW_MEDIAPIPE,\n description: \"Discriminator: TensorFlow MediaPipe backend.\",\n },\n provider_config: {\n type: \"object\",\n description: \"TensorFlow MediaPipe-specific options.\",\n properties: {\n model_path: {\n type: \"string\",\n description: \"Filesystem path or URI for the ONNX model.\",\n },\n task_engine: {\n type: \"string\",\n enum: [\"text\", \"audio\", \"vision\", \"genai\"],\n description: \"Task engine for the MediaPipe model.\",\n },\n pipeline: {\n type: \"string\",\n enum: Object.values(TextPipelineTask),\n description: \"Pipeline task type for the MediaPipe model.\",\n },\n },\n required: [\"model_path\", \"task_engine\", \"pipeline\"],\n additionalProperties: false,\n },\n },\n required: [\"provider\", \"provider_config\"],\n additionalProperties: true,\n} as const satisfies DataPortSchemaObject;\n\nexport const TFMPModelRecordSchema = {\n type: \"object\",\n properties: {\n ...ModelRecordSchema.properties,\n ...TFMPModelSchema.properties,\n },\n required: [...ModelRecordSchema.required, ...TFMPModelSchema.required],\n additionalProperties: false,\n} as const satisfies DataPortSchemaObject;\n\nexport type TFMPModelRecord = FromSchema<typeof TFMPModelRecordSchema>;\n\nexport const TFMPModelConfigSchema = {\n type: \"object\",\n properties: {\n ...ModelConfigSchema.properties,\n ...TFMPModelSchema.properties,\n },\n required: [...ModelConfigSchema.required, ...TFMPModelSchema.required],\n additionalProperties: false,\n} as const satisfies DataPortSchemaObject;\n\nexport type TFMPModelConfig = FromSchema<typeof TFMPModelConfigSchema>;\n",
|
|
7
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ModelSearchResultItem,\n ModelSearchTaskInput,\n ModelSearchTaskOutput,\n} from \"@workglow/ai\";\nimport { filterModelSearchResultsByQuery } from \"@workglow/ai-
|
|
8
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRegisterOptions } from \"@workglow/ai\";\nimport { registerProviderWithWorker } from \"@workglow/ai-
|
|
7
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ModelSearchResultItem,\n ModelSearchTaskInput,\n ModelSearchTaskOutput,\n} from \"@workglow/ai\";\nimport { filterModelSearchResultsByQuery } from \"@workglow/ai/provider-utils\";\nimport { TENSORFLOW_MEDIAPIPE } from \"./TFMP_Constants\";\n\nconst TFMP_MODEL_RESULTS: ModelSearchResultItem[] = [\n {\n id: \"universal-sentence-encoder\",\n label: \"Universal Sentence Encoder\",\n description: \"Text embedding model\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"Universal Sentence Encoder\",\n description: \"Universal Sentence Encoder\",\n tasks: [\"TextEmbeddingTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-tasks/text_embedder/universal_sentence_encoder.tflite\",\n task_engine: \"text\",\n pipeline: \"text-embedder\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"language-detector\",\n label: \"MediaPipe Language Detector\",\n description: \"Language detection model\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"MediaPipe Language Detector\",\n description: \"MediaPipe Language Detector\",\n tasks: [\"TextLanguageDetectionTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-models/language_detector/language_detector/float32/latest/language_detector.tflite\",\n task_engine: \"text\",\n pipeline: \"text-language-detector\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"bert-text-classifier\",\n label: \"MediaPipe BERT Text Classifier\",\n description: \"Text classification model\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"MediaPipe BERT Text Classifier\",\n description: \"MediaPipe BERT Text Classifier\",\n tasks: [\"TextClassificationTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-tasks/text_classifier/bert_text_classifier.tflite\",\n task_engine: \"text\",\n pipeline: \"text-classifier\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"image-embedder\",\n label: \"MediaPipe Image Embedder\",\n description: \"Image embedding model\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"MediaPipe Image Embedder\",\n description: \"MediaPipe Image Embedder\",\n tasks: [\"ImageEmbeddingTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-models/image_embedder/mobilenet_v3_small/float32/1/mobilenet_v3_small.tflite\",\n task_engine: \"vision\",\n pipeline: \"vision-image-embedder\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"efficientnet-lite0\",\n label: \"EfficientNet Lite0\",\n description: \"Image classification model\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"EfficientNet Lite0\",\n description: \"Image classification model\",\n tasks: [\"ImageClassificationTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-models/image_classifier/efficientnet_lite0/float32/1/efficientnet_lite0.tflite\",\n task_engine: \"vision\",\n pipeline: \"vision-image-classifier\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"efficientdet-lite0\",\n label: \"Efficient Object Detector Lite0\",\n description: \"Object detection model\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"Efficient Object Detector Lite0\",\n description: \"Object detection model\",\n tasks: [\"ObjectDetectionTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-models/object_detector/efficientdet_lite0/float32/1/efficientdet_lite0.tflite\",\n task_engine: \"vision\",\n pipeline: \"vision-object-detector\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"deeplabv3\",\n label: \"Efficient Image Segmenter Lite0\",\n description: \"Image segmentation model\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"Efficient Image Segmenter Lite0\",\n description: \"Image segmentation model\",\n tasks: [\"ImageSegmentationTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-assets/deeplabv3.tflite?generation=1661875711618421\",\n task_engine: \"vision\",\n pipeline: \"vision-image-segmenter\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"face-landmarker\",\n label: \"Face Landmarker\",\n description: \"Detects 478 facial landmarks with blendshapes\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"Face Landmarker\",\n description: \"Detects 478 facial landmarks with blendshapes\",\n tasks: [\"FaceLandmarkerTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-models/face_landmarker/face_landmarker/float16/1/face_landmarker.task\",\n task_engine: \"vision\",\n pipeline: \"vision-face-landmarker\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"gesture-recognizer\",\n label: \"Gesture Recognizer\",\n description: \"Recognizes hand gestures such as thumbs up and victory\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"Gesture Recognizer\",\n description: \"Recognizes hand gestures such as thumbs up and victory\",\n tasks: [\"GestureRecognizerTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-models/gesture_recognizer/gesture_recognizer/float16/1/gesture_recognizer.task\",\n task_engine: \"vision\",\n pipeline: \"vision-gesture-recognizer\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"hand-landmarker\",\n label: \"Hand Landmarker\",\n description: \"Detects 21 hand landmarks\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"Hand Landmarker\",\n description: \"Detects 21 hand landmarks\",\n tasks: [\"HandLandmarkerTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-models/hand_landmarker/hand_landmarker/float16/1/hand_landmarker.task\",\n task_engine: \"vision\",\n pipeline: \"vision-hand-landmarker\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n {\n id: \"pose-landmarker\",\n label: \"Pose Landmarker\",\n description: \"Detects 33 body pose landmarks\",\n record: {\n provider: TENSORFLOW_MEDIAPIPE,\n title: \"Pose Landmarker\",\n description: \"Detects 33 body pose landmarks\",\n tasks: [\"PoseLandmarkerTask\"],\n provider_config: {\n model_path:\n \"https://storage.googleapis.com/mediapipe-models/pose_landmarker/pose_landmarker_lite/float16/1/pose_landmarker_lite.task\",\n task_engine: \"vision\",\n pipeline: \"vision-pose-landmarker\",\n },\n metadata: {},\n },\n raw: { source: \"mediapipe\" },\n },\n];\n\nexport function createTFMPModelSearch(\n providerId: string\n): AiProviderRunFn<ModelSearchTaskInput, ModelSearchTaskOutput> {\n return async (input) => {\n const results = filterModelSearchResultsByQuery(\n TFMP_MODEL_RESULTS.map((result) => ({\n ...result,\n record: { ...result.record, provider: providerId },\n })),\n input.query\n );\n return { results };\n };\n}\n\nexport const TFMP_ModelSearch: AiProviderRunFn<ModelSearchTaskInput, ModelSearchTaskOutput> =\n createTFMPModelSearch(TENSORFLOW_MEDIAPIPE);\n",
|
|
8
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRegisterOptions } from \"@workglow/ai\";\nimport { registerProviderWithWorker } from \"@workglow/ai/provider-utils\";\nimport { TensorFlowMediaPipeQueuedProvider } from \"./TensorFlowMediaPipeQueuedProvider\";\n\nexport async function registerTensorFlowMediaPipe(\n options: AiProviderRegisterOptions & {\n worker: Worker | (() => Worker);\n }\n): Promise<void> {\n await registerProviderWithWorker(\n new TensorFlowMediaPipeQueuedProvider(),\n \"TensorFlow MediaPipe\",\n options\n );\n}\n",
|
|
9
9
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { AiProvider } from \"@workglow/ai\";\nimport type { AiProviderPreviewRunFn, AiProviderRunFn } from \"@workglow/ai\";\nimport { TENSORFLOW_MEDIAPIPE, TFMP_DEFAULT_TASK_TYPES } from \"./common/TFMP_Constants\";\nimport type { TFMPModelConfig } from \"./common/TFMP_ModelSchema\";\n\n/** Main-thread registration (inline or worker-backed). WASM-only — uses direct execution. */\nexport class TensorFlowMediaPipeQueuedProvider extends AiProvider<TFMPModelConfig> {\n readonly name = TENSORFLOW_MEDIAPIPE;\n readonly displayName = \"TensorFlow MediaPipe\";\n readonly isLocal = true;\n readonly supportsBrowser = true;\n\n readonly taskTypes: readonly string[] = TFMP_DEFAULT_TASK_TYPES;\n\n constructor(\n tasks?: Record<string, AiProviderRunFn<any, any, TFMPModelConfig>>,\n previewTasks?: Record<string, AiProviderPreviewRunFn<any, any, TFMPModelConfig>>\n ) {\n super(tasks, undefined, previewTasks);\n }\n}\n"
|
|
10
10
|
],
|
|
11
11
|
"mappings": "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",
|
|
12
|
-
"debugId": "
|
|
12
|
+
"debugId": "50E8E246C2C5CE2A64756E2164756E21",
|
|
13
13
|
"names": []
|
|
14
14
|
}
|
package/package.json
CHANGED
|
@@ -2,41 +2,41 @@
|
|
|
2
2
|
"name": "@workglow/tf-mediapipe",
|
|
3
3
|
"type": "module",
|
|
4
4
|
"sideEffects": false,
|
|
5
|
-
"version": "0.2.
|
|
5
|
+
"version": "0.2.32",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
8
|
"url": "https://github.com/workglow-dev/workglow.git",
|
|
9
9
|
"directory": "packages/tf-mediapipe"
|
|
10
10
|
},
|
|
11
|
-
"description": "TensorFlow MediaPipe provider for @workglow/ai
|
|
11
|
+
"description": "TensorFlow MediaPipe provider for @workglow/ai (browser only).",
|
|
12
12
|
"scripts": {
|
|
13
13
|
"watch": "concurrently -c 'auto' 'bun:watch-*'",
|
|
14
|
-
"watch-code": "bun build --watch --no-clear-screen --target=browser --sourcemap=external --packages=external --root ./src --outdir ./dist ./src/ai
|
|
14
|
+
"watch-code": "bun build --watch --no-clear-screen --target=browser --sourcemap=external --packages=external --root ./src --outdir ./dist ./src/ai.ts ./src/ai-runtime.ts",
|
|
15
15
|
"watch-types": "tsc --watch --preserveWatchOutput",
|
|
16
16
|
"build-package": "concurrently -c 'auto' -n 'code,types' 'bun run build-code' 'bun run build-types'",
|
|
17
17
|
"build-js": "bun run build-code",
|
|
18
18
|
"build-clean": "rm -fr dist/* tsconfig.tsbuildinfo",
|
|
19
|
-
"build-code": "bun build --target=browser --sourcemap=external --packages=external --root ./src --outdir ./dist ./src/ai
|
|
19
|
+
"build-code": "bun build --target=browser --sourcemap=external --packages=external --root ./src --outdir ./dist ./src/ai.ts ./src/ai-runtime.ts",
|
|
20
20
|
"build-types": "rm -f tsconfig.tsbuildinfo && tsgo",
|
|
21
21
|
"lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
|
|
22
22
|
"test": "bun test"
|
|
23
23
|
},
|
|
24
24
|
"exports": {
|
|
25
|
-
"./ai
|
|
25
|
+
"./ai": {
|
|
26
26
|
"browser": {
|
|
27
|
-
"types": "./dist/ai
|
|
28
|
-
"import": "./dist/ai
|
|
27
|
+
"types": "./dist/ai.d.ts",
|
|
28
|
+
"import": "./dist/ai.js"
|
|
29
29
|
},
|
|
30
|
-
"types": "./dist/ai
|
|
31
|
-
"import": "./dist/ai
|
|
30
|
+
"types": "./dist/ai.d.ts",
|
|
31
|
+
"import": "./dist/ai.js"
|
|
32
32
|
},
|
|
33
|
-
"./ai-
|
|
33
|
+
"./ai-runtime": {
|
|
34
34
|
"browser": {
|
|
35
|
-
"types": "./dist/ai-
|
|
36
|
-
"import": "./dist/ai-
|
|
35
|
+
"types": "./dist/ai-runtime.d.ts",
|
|
36
|
+
"import": "./dist/ai-runtime.js"
|
|
37
37
|
},
|
|
38
|
-
"types": "./dist/ai-
|
|
39
|
-
"import": "./dist/ai-
|
|
38
|
+
"types": "./dist/ai-runtime.d.ts",
|
|
39
|
+
"import": "./dist/ai-runtime.js"
|
|
40
40
|
}
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
@@ -46,20 +46,16 @@
|
|
|
46
46
|
"@mediapipe/tasks-genai": "^0.10.27"
|
|
47
47
|
},
|
|
48
48
|
"peerDependencies": {
|
|
49
|
-
"@workglow/ai": "0.2.
|
|
50
|
-
"@workglow/
|
|
51
|
-
"@workglow/
|
|
52
|
-
"@workglow/
|
|
53
|
-
"@workglow/
|
|
54
|
-
"@workglow/util": "0.2.30"
|
|
49
|
+
"@workglow/ai": "0.2.32",
|
|
50
|
+
"@workglow/job-queue": "0.2.32",
|
|
51
|
+
"@workglow/storage": "0.2.32",
|
|
52
|
+
"@workglow/task-graph": "0.2.32",
|
|
53
|
+
"@workglow/util": "0.2.32"
|
|
55
54
|
},
|
|
56
55
|
"peerDependenciesMeta": {
|
|
57
56
|
"@workglow/ai": {
|
|
58
57
|
"optional": false
|
|
59
58
|
},
|
|
60
|
-
"@workglow/ai-provider": {
|
|
61
|
-
"optional": false
|
|
62
|
-
},
|
|
63
59
|
"@workglow/job-queue": {
|
|
64
60
|
"optional": false
|
|
65
61
|
},
|
|
@@ -74,12 +70,11 @@
|
|
|
74
70
|
}
|
|
75
71
|
},
|
|
76
72
|
"devDependencies": {
|
|
77
|
-
"@workglow/ai": "0.2.
|
|
78
|
-
"@workglow/
|
|
79
|
-
"@workglow/
|
|
80
|
-
"@workglow/
|
|
81
|
-
"@workglow/
|
|
82
|
-
"@workglow/util": "0.2.30"
|
|
73
|
+
"@workglow/ai": "0.2.32",
|
|
74
|
+
"@workglow/job-queue": "0.2.32",
|
|
75
|
+
"@workglow/storage": "0.2.32",
|
|
76
|
+
"@workglow/task-graph": "0.2.32",
|
|
77
|
+
"@workglow/util": "0.2.32"
|
|
83
78
|
},
|
|
84
79
|
"files": [
|
|
85
80
|
"dist",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TensorFlowMediaPipeProvider.d.ts","sourceRoot":"","sources":["../../src/ai-provider/TensorFlowMediaPipeProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEnF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE;;;;;;;;GAQG;AACH,qBAAa,2BAA4B,SAAQ,UAAU,CAAC,eAAe,CAAC;IAC1E,QAAQ,CAAC,IAAI,0BAAwB;IACrC,QAAQ,CAAC,WAAW,0BAA0B;IAC9C,QAAQ,CAAC,OAAO,QAAQ;IACxB,QAAQ,CAAC,eAAe,QAAQ;IAEhC,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAA2B;IAEhE,YACE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC,EAClE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC,EAGjF;CACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TensorFlowMediaPipeQueuedProvider.d.ts","sourceRoot":"","sources":["../../src/ai-provider/TensorFlowMediaPipeQueuedProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,6FAA6F;AAC7F,qBAAa,iCAAkC,SAAQ,UAAU,CAAC,eAAe,CAAC;IAChF,QAAQ,CAAC,IAAI,0BAAwB;IACrC,QAAQ,CAAC,WAAW,0BAA0B;IAC9C,QAAQ,CAAC,OAAO,QAAQ;IACxB,QAAQ,CAAC,eAAe,QAAQ;IAEhC,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAA2B;IAEhE,YACE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC,EAClE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC,EAGjF;CACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_Client.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_Client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,wBAAsB,oBAAoB,oDAWzC;AAED,wBAAsB,sBAAsB,sDAW3C"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_Constants.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_Constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAO,MAAM,oBAAoB,yBAAyB,CAAC;AAE3D,eAAO,MAAM,uBAAuB,YAClC,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,2BAA2B,EAC3B,wBAAwB,EACxB,uBAAuB,EACvB,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,CACT,CAAC;AAEX,MAAM,MAAM,gBAAgB,GACxB,eAAe,GACf,iBAAiB,GACjB,wBAAwB,GACxB,YAAY,GACZ,kBAAkB,GAClB,gBAAgB,GAChB,sBAAsB,GACtB,wBAAwB,GACxB,sBAAsB,GACtB,2BAA2B,GAC3B,wBAAwB,GACxB,4BAA4B,GAC5B,yBAAyB,GACzB,uBAAuB,GACvB,wBAAwB,GACxB,oCAAoC,GACpC,wBAAwB,GACxB,wBAAwB,CAAC;AAE7B,eAAO,MAAM,gBAAgB;8BACV,eAAe;gCACb,iBAAiB;uCACV,wBAAwB;2BACpC,YAAY;iCACN,kBAAkB;+BACpB,gBAAgB;qCACV,sBAAsB;uCACpB,wBAAwB;qCAC1B,sBAAsB;0CACjB,2BAA2B;uCAC9B,wBAAwB;2CACpB,4BAA4B;wCAC/B,yBAAyB;sCAC3B,uBAAuB;uCACtB,wBAAwB;mDACZ,oCAAoC;uCAChD,wBAAwB;uCACxB,wBAAwB;CACW,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_Download.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_Download.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,yBAAyB,EACzB,0BAA0B,EAC3B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAIrD,eAAO,MAAM,aAAa,EAAE,eAAe,CACzC,yBAAyB,EACzB,0BAA0B,EAC1B,eAAe,CA6EhB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_FaceDetector.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_FaceDetector.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAGnG,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,iBAAiB,EAAE,eAAe,CAC7C,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,CAsChB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_FaceLandmarker.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_FaceLandmarker.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,mBAAmB,EAAE,eAAe,CAC/C,uBAAuB,EACvB,wBAAwB,EACxB,eAAe,CAiDhB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_GestureRecognizer.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_GestureRecognizer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,sBAAsB,EAAE,eAAe,CAClD,0BAA0B,EAC1B,2BAA2B,EAC3B,eAAe,CA6ChB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_HandLandmarker.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_HandLandmarker.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,mBAAmB,EAAE,eAAe,CAC/C,uBAAuB,EACvB,wBAAwB,EACxB,eAAe,CAyChB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_ImageClassification.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_ImageClassification.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,4BAA4B,EAC5B,6BAA6B,EAC9B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,wBAAwB,EAAE,eAAe,CACpD,4BAA4B,EAC5B,6BAA6B,EAC7B,eAAe,CA4BhB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_ImageEmbedding.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_ImageEmbedding.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,mBAAmB,EAAE,eAAe,CAC/C,uBAAuB,EACvB,wBAAwB,EACxB,eAAe,CA4BhB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_ImageSegmentation.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_ImageSegmentation.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,0BAA0B,EAC1B,2BAA2B,EAC5B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,sBAAsB,EAAE,eAAe,CAClD,0BAA0B,EAC1B,2BAA2B,EAC3B,eAAe,CAyBhB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_JobRunFns.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_JobRunFns.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAmB1D,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAE7E,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAiBjF,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_ModelInfo.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_ModelInfo.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAC7F,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAQrD,eAAO,MAAM,cAAc,EAAE,eAAe,CAC1C,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,CAyChB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_ModelSchema.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_ModelSchema.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAwB,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGzE,eAAO,MAAM,eAAe;mBACpB,QAAQ;;iBAEZ,QAAQ;qBACN,KAAK;qBACL,WAAW,EAAE,8CAA8C;;iBAE7D,eAAe;qBACb,IAAI,EAAE,QAAQ;qBACd,WAAW,EAAE,wCAAwC;qBACrD,UAAU;yBACR,UAAU;6BACR,IAAI,EAAE,QAAQ;6BACd,WAAW,EAAE,4CAA4C;;yBAE3D,WAAW;6BACT,IAAI,EAAE,QAAQ;6BACd,IAAI;6BACJ,WAAW,EAAE,sCAAsC;;yBAErD,QAAQ;6BACN,IAAI,EAAE,QAAQ;6BACd,IAAI;6BACJ,WAAW,EAAE,6CAA6C;;;qBAG9D,QAAQ;qBACR,oBAAoB;;;;;CAKe,CAAC;AAE1C,eAAO,MAAM,qBAAqB;mBAC1B,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;qBA/BV,KAAK;qBACL,WAAW,EAAE,8CAA8C;;;qBAG3D,IAAI,EAAE,QAAQ;qBACd,WAAW,EAAE,wCAAwC;qBACrD,UAAU;yBACR,UAAU;6BACR,IAAI,EAAE,QAAQ;6BACd,WAAW,EAAE,4CAA4C;;yBAE3D,WAAW;6BACT,IAAI,EAAE,QAAQ;6BACd,IAAI;6BACJ,WAAW,EAAE,sCAAsC;;yBAErD,QAAQ;6BACN,IAAI,EAAE,QAAQ;6BACd,IAAI;6BACJ,WAAW,EAAE,6CAA6C;;;qBAG9D,QAAQ;qBACR,oBAAoB;;;;;CAee,CAAC;AAE1C,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEvE,eAAO,MAAM,qBAAqB;mBAC1B,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;qBA3CV,KAAK;qBACL,WAAW,EAAE,8CAA8C;;;qBAG3D,IAAI,EAAE,QAAQ;qBACd,WAAW,EAAE,wCAAwC;qBACrD,UAAU;yBACR,UAAU;6BACR,IAAI,EAAE,QAAQ;6BACd,WAAW,EAAE,4CAA4C;;yBAE3D,WAAW;6BACT,IAAI,EAAE,QAAQ;6BACd,IAAI;6BACJ,WAAW,EAAE,sCAAsC;;yBAErD,QAAQ;6BACN,IAAI,EAAE,QAAQ;6BACd,IAAI;6BACJ,WAAW,EAAE,6CAA6C;;;qBAG9D,QAAQ;qBACR,oBAAoB;;;;;CA2Be,CAAC;AAE1C,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_ModelSearch.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_ModelSearch.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EAEf,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,cAAc,CAAC;AAwNtB,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,MAAM,GACjB,eAAe,CAAC,oBAAoB,EAAE,qBAAqB,CAAC,CAW9D;AAED,eAAO,MAAM,gBAAgB,EAAE,eAAe,CAAC,oBAAoB,EAAE,qBAAqB,CAC7C,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_ObjectDetection.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_ObjectDetection.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACxB,yBAAyB,EAC1B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,oBAAoB,EAAE,eAAe,CAChD,wBAAwB,EACxB,yBAAyB,EACzB,eAAe,CAgChB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_PoseLandmarker.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_PoseLandmarker.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,mBAAmB,EAAE,eAAe,CAC/C,uBAAuB,EACvB,wBAAwB,EACxB,eAAe,CAuDhB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_Runtime.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_Runtime.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,eAAO,MAAM,UAAU,8BAAqC,CAAC;AAC7D,eAAO,MAAM,qBAAqB,qBAA4B,CAAC;AAE/D,KAAK,eAAe,GAAG;IACrB,iBAAiB,CACf,WAAW,EAAE,eAAe,EAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC,YAAY,CAAC,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,IAAI,IAAI,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB,CAAC;AAEF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,eAAO,MAAM,cAAc,gCAAuC,CAAC;AA4EnE,eAAO,MAAM,YAAY,UAChB,eAAe,WACb,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,cACpB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,UAC/D,WAAW,YACT,eAAe,KACxB,OAAO,CAAC,GAAG,CAgCb,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_TextClassification.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_TextClassification.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,2BAA2B,EAC3B,4BAA4B,EAC7B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,uBAAuB,EAAE,eAAe,CACnD,2BAA2B,EAC3B,4BAA4B,EAC5B,eAAe,CA0BhB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_TextEmbedding.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_TextEmbedding.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,kBAAkB,EAAE,eAAe,CAC9C,sBAAsB,EACtB,uBAAuB,EACvB,eAAe,CAgChB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_TextLanguageDetection.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_TextLanguageDetection.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,8BAA8B,EAC9B,+BAA+B,EAChC,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,0BAA0B,EAAE,eAAe,CACtD,8BAA8B,EAC9B,+BAA+B,EAC/B,eAAe,CA4BhB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TFMP_Unload.d.ts","sourceRoot":"","sources":["../../../src/ai-provider/common/TFMP_Unload.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,WAAW,EAAE,eAAe,CACvC,uBAAuB,EACvB,wBAAwB,EACxB,eAAe,CA6BhB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ai-provider/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"registerTensorFlowMediaPipe.d.ts","sourceRoot":"","sources":["../../src/ai-provider/registerTensorFlowMediaPipe.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAI9D,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,yBAAyB,GAAG;IACnC,MAAM,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,CAAC;CACjC,GACA,OAAO,CAAC,IAAI,CAAC,CAMf"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"registerTensorFlowMediaPipeInline.d.ts","sourceRoot":"","sources":["../../src/ai-provider/registerTensorFlowMediaPipeInline.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAK9D,wBAAsB,iCAAiC,CACrD,OAAO,CAAC,EAAE,yBAAyB,GAClC,OAAO,CAAC,IAAI,CAAC,CAMf"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"registerTensorFlowMediaPipeWorker.d.ts","sourceRoot":"","sources":["../../src/ai-provider/registerTensorFlowMediaPipeWorker.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,wBAAsB,iCAAiC,IAAI,OAAO,CAAC,IAAI,CAAC,CAKvE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/ai-provider/runtime.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;GAMG;AACH,cAAc,sBAAsB,CAAC;AACrC,cAAc,qCAAqC,CAAC;AACpD,cAAc,qCAAqC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ai-provider-runtime.d.ts","sourceRoot":"","sources":["../src/ai-provider-runtime.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,uBAAuB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ai-provider.d.ts","sourceRoot":"","sources":["../src/ai-provider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,qBAAqB,CAAC"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|