@workglow/tf-mediapipe 0.2.31 → 0.2.33
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 +11 -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-provider → ai}/runtime.d.ts +1 -1
- 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} +44 -50
- package/dist/{ai-provider-runtime.js.map → ai-runtime.js.map} +7 -7
- 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 +25 -30
- 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 +0 -8
- 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_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
|
@@ -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
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\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-
|
|
5
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\ntype TfmpTasksTextModule = typeof import(\"@mediapipe/tasks-text\");\ntype TfmpTasksVisionModule = typeof import(\"@mediapipe/tasks-vision\");\n\nlet _loadPromiseText: Promise<TfmpTasksTextModule> | undefined;\nlet _loadPromiseVision: Promise<TfmpTasksVisionModule> | undefined;\n\n// NOTE: we do not want to de-dup this in the provider-utils, vite wants direct import with string literals.\nexport async function loadTfmpTasksTextSDK(): Promise<TfmpTasksTextModule> {\n _loadPromiseText ??= import(\"@mediapipe/tasks-text\").catch(() => {\n _loadPromiseText = undefined;\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 return _loadPromiseText;\n}\n\n// NOTE: we do not want to de-dup this in the provider-utils, vite wants direct import with string literals.\nexport async function loadTfmpTasksVisionSDK(): Promise<TfmpTasksVisionModule> {\n _loadPromiseVision ??= import(\"@mediapipe/tasks-vision\").catch(() => {\n _loadPromiseVision = undefined;\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 return _loadPromiseVision;\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/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
|
-
"mappings": "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",
|
|
31
|
-
"debugId": "
|
|
30
|
+
"mappings": "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",
|
|
31
|
+
"debugId": "CB3FDA3C7C718E4C64756E2164756E21",
|
|
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.33",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
|
-
"url": "https://github.com/workglow-dev/
|
|
8
|
+
"url": "https://github.com/workglow-dev/libs.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.31"
|
|
49
|
+
"@workglow/ai": "0.2.33",
|
|
50
|
+
"@workglow/job-queue": "0.2.33",
|
|
51
|
+
"@workglow/storage": "0.2.33",
|
|
52
|
+
"@workglow/task-graph": "0.2.33",
|
|
53
|
+
"@workglow/util": "0.2.33"
|
|
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.31"
|
|
73
|
+
"@workglow/ai": "0.2.33",
|
|
74
|
+
"@workglow/job-queue": "0.2.33",
|
|
75
|
+
"@workglow/storage": "0.2.33",
|
|
76
|
+
"@workglow/task-graph": "0.2.33",
|
|
77
|
+
"@workglow/util": "0.2.33"
|
|
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,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2025 Steven Roussey <sroussey@gmail.com>
|
|
4
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
-
*/
|
|
6
|
-
export declare function loadTfmpTasksTextSDK(): Promise<typeof import("@mediapipe/tasks-text")>;
|
|
7
|
-
export declare function loadTfmpTasksVisionSDK(): Promise<typeof import("@mediapipe/tasks-vision")>;
|
|
8
|
-
//# sourceMappingURL=TFMP_Client.d.ts.map
|
|
@@ -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"}
|