@workglow/tf-mediapipe 0.2.36 → 0.2.37

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.
@@ -3,8 +3,8 @@
3
3
  * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { AiProvider } from "@workglow/ai/worker";
7
6
  import type { AiProviderPreviewRunFn, AiProviderRunFnRegistration, Capability, ModelRecord } from "@workglow/ai/worker";
7
+ import { AiProvider } from "@workglow/ai/worker";
8
8
  import type { TFMPModelConfig } from "./common/TFMP_ModelSchema";
9
9
  /**
10
10
  * Worker-server registration for TensorFlow MediaPipe. Imports `AiProvider`
@@ -1 +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,EACV,sBAAsB,EACtB,2BAA2B,EAC3B,UAAU,EACV,WAAW,EACZ,MAAM,qBAAqB,CAAC;AAG7B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE;;;GAGG;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,YACE,aAAa,CAAC,EAAE,SAAS,2BAA2B,CAElD,GAAG,EAEH,GAAG,EACH,eAAe,CAChB,EAAE,EACH,YAAY,CAAC,EAAE,MAAM,CACnB,MAAM,EAEN,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAClD,EAGF;IAEQ,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,UAAU,EAAE,CAEpE;IAED,UAAmB,gBAAgB,IAAI,SAAS;QAAE,MAAM,EAAE,SAAS,UAAU,EAAE,CAAA;KAAE,EAAE,CAElF;CACF"}
1
+ {"version":3,"file":"TensorFlowMediaPipeProvider.d.ts","sourceRoot":"","sources":["../../src/ai/TensorFlowMediaPipeProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,sBAAsB,EACtB,2BAA2B,EAC3B,UAAU,EACV,WAAW,EACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE;;;GAGG;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,YACE,aAAa,CAAC,EAAE,SAAS,2BAA2B,CAElD,GAAG,EAEH,GAAG,EACH,eAAe,CAChB,EAAE,EACH,YAAY,CAAC,EAAE,MAAM,CACnB,MAAM,EAEN,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAClD,EAGF;IAEQ,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,UAAU,EAAE,CAEpE;IAED,UAAmB,gBAAgB,IAAI,SAAS;QAAE,MAAM,EAAE,SAAS,UAAU,EAAE,CAAA;KAAE,EAAE,CAElF;CACF"}
@@ -3,8 +3,8 @@
3
3
  * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { AiProvider } from "@workglow/ai";
7
6
  import type { AiProviderPreviewRunFn, AiProviderRunFnRegistration, Capability, ModelRecord } from "@workglow/ai";
7
+ import { AiProvider } from "@workglow/ai";
8
8
  import type { TFMPModelConfig } from "./common/TFMP_ModelSchema";
9
9
  /** Main-thread registration (inline or worker-backed). WASM-only — uses direct execution. */
10
10
  export declare class TensorFlowMediaPipeQueuedProvider extends AiProvider<TFMPModelConfig> {
@@ -1 +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,EACV,sBAAsB,EACtB,2BAA2B,EAC3B,UAAU,EACV,WAAW,EACZ,MAAM,cAAc,CAAC;AAGtB,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,YACE,aAAa,CAAC,EAAE,SAAS,2BAA2B,CAElD,GAAG,EAEH,GAAG,EACH,eAAe,CAChB,EAAE,EACH,YAAY,CAAC,EAAE,MAAM,CACnB,MAAM,EAEN,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAClD,EAGF;IAEQ,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,UAAU,EAAE,CAEpE;IAED,UAAmB,gBAAgB,IAAI,SAAS;QAAE,MAAM,EAAE,SAAS,UAAU,EAAE,CAAA;KAAE,EAAE,CAElF;CACF"}
1
+ {"version":3,"file":"TensorFlowMediaPipeQueuedProvider.d.ts","sourceRoot":"","sources":["../../src/ai/TensorFlowMediaPipeQueuedProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,sBAAsB,EACtB,2BAA2B,EAC3B,UAAU,EACV,WAAW,EACZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,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,YACE,aAAa,CAAC,EAAE,SAAS,2BAA2B,CAElD,GAAG,EAEH,GAAG,EACH,eAAe,CAChB,EAAE,EACH,YAAY,CAAC,EAAE,MAAM,CACnB,MAAM,EAEN,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAClD,EAGF;IAEQ,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,UAAU,EAAE,CAEpE;IAED,UAAmB,gBAAgB,IAAI,SAAS;QAAE,MAAM,EAAE,SAAS,UAAU,EAAE,CAAA;KAAE,EAAE,CAElF;CACF"}
@@ -1 +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,CAuBhB,CAAC"}
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;AAItB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,eAAO,MAAM,sBAAsB,EAAE,eAAe,CAClD,0BAA0B,EAC1B,2BAA2B,EAC3B,eAAe,CAoBhB,CAAC"}
@@ -410,6 +410,7 @@ var TFMP_ImageEmbedding = async (input, model, signal, emit) => {
410
410
 
411
411
  // src/ai/common/TFMP_ImageSegmentation.ts
412
412
  import { PermanentJobError as PermanentJobError9 } from "@workglow/job-queue";
413
+ import { imageValueFromBitmap } from "@workglow/util/media";
413
414
  var TFMP_ImageSegmentation = async (input, model, signal, emit) => {
414
415
  const { ImageSegmenter } = await loadTfmpTasksVisionSDK();
415
416
  const imageSegmenter = await getModelTask(model, {}, emit, signal, ImageSegmenter);
@@ -417,15 +418,12 @@ var TFMP_ImageSegmentation = async (input, model, signal, emit) => {
417
418
  if (!result.categoryMask) {
418
419
  throw new PermanentJobError9("Failed to segment image: Empty result");
419
420
  }
421
+ const maskBitmap = await createImageBitmap(result.categoryMask.canvas);
420
422
  const masks = [
421
423
  {
422
424
  label: "segment",
423
425
  score: 1,
424
- mask: {
425
- data: result.categoryMask.canvas,
426
- width: result.categoryMask.width,
427
- height: result.categoryMask.height
428
- }
426
+ mask: imageValueFromBitmap(maskBitmap, result.categoryMask.width, result.categoryMask.height)
429
427
  }
430
428
  ];
431
429
  emit({ type: "finish", data: { masks } });
@@ -1024,4 +1022,4 @@ export {
1024
1022
  loadTfmpTasksTextSDK
1025
1023
  };
1026
1024
 
1027
- //# debugId=271A8EDB1D7FB3E564756E2164756E21
1025
+ //# debugId=575100052E4E1E7364756E2164756E21
@@ -13,7 +13,7 @@
13
13
  "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n HandLandmarkerTaskInput,\n HandLandmarkerTaskOutput,\n} from \"@workglow/ai\";\nimport { PermanentJobError } from \"@workglow/job-queue\";\nimport { loadTfmpTasksVisionSDK } from \"./TFMP_Client\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { getModelTask } from \"./TFMP_Runtime\";\n\nexport const TFMP_HandLandmarker: AiProviderRunFn<\n HandLandmarkerTaskInput,\n HandLandmarkerTaskOutput,\n TFMPModelConfig\n> = async (input, model, signal, emit) => {\n const { HandLandmarker } = await loadTfmpTasksVisionSDK();\n const handLandmarker = await getModelTask(\n model!,\n {\n numHands: input.numHands,\n minHandDetectionConfidence: input.minHandDetectionConfidence,\n minHandPresenceConfidence: input.minHandPresenceConfidence,\n minTrackingConfidence: input.minTrackingConfidence,\n },\n emit,\n signal,\n HandLandmarker\n );\n const result = handLandmarker.detect(input.image);\n\n if (!result.landmarks) {\n throw new PermanentJobError(\"Failed to detect hand landmarks: Empty result\");\n }\n\n const hands = result.landmarks.map((landmarks: any, index: number) => ({\n handedness: result.handedness[index].map((h: any) => ({\n label: h.categoryName,\n score: h.score,\n })),\n landmarks: landmarks.map((l: any) => ({\n x: l.x,\n y: l.y,\n z: l.z,\n })),\n worldLandmarks: result.worldLandmarks[index].map((l: any) => ({\n x: l.x,\n y: l.y,\n z: l.z,\n })),\n }));\n\n emit({ type: \"finish\", data: { hands } });\n};\n",
14
14
  "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ImageClassificationTaskInput,\n ImageClassificationTaskOutput,\n} from \"@workglow/ai\";\nimport { PermanentJobError } from \"@workglow/job-queue\";\nimport { loadTfmpTasksVisionSDK } from \"./TFMP_Client\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { getModelTask } from \"./TFMP_Runtime\";\n\nexport const TFMP_ImageClassification: AiProviderRunFn<\n ImageClassificationTaskInput,\n ImageClassificationTaskOutput,\n TFMPModelConfig\n> = async (input, model, signal, emit) => {\n const { ImageClassifier } = await loadTfmpTasksVisionSDK();\n const imageClassifier = await getModelTask(\n model!,\n {\n maxResults: input.maxCategories,\n },\n emit,\n signal,\n ImageClassifier\n );\n const result = imageClassifier.classify(input.image);\n\n if (!result.classifications?.[0]?.categories) {\n throw new PermanentJobError(\"Failed to classify image: Empty result\");\n }\n\n const categories = result.classifications[0].categories.map(\n (category: { categoryName: string; score: number }) => ({\n label: category.categoryName,\n score: category.score,\n })\n );\n\n emit({ type: \"finish\", data: { categories } });\n};\n",
15
15
  "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ImageEmbeddingTaskInput,\n ImageEmbeddingTaskOutput,\n} from \"@workglow/ai\";\nimport { PermanentJobError } from \"@workglow/job-queue\";\nimport { loadTfmpTasksVisionSDK } from \"./TFMP_Client\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { getModelTask } from \"./TFMP_Runtime\";\n\nexport const TFMP_ImageEmbedding: AiProviderRunFn<\n ImageEmbeddingTaskInput,\n ImageEmbeddingTaskOutput,\n TFMPModelConfig\n> = async (input, model, signal, emit) => {\n const { ImageEmbedder } = await loadTfmpTasksVisionSDK();\n const imageEmbedder = await getModelTask(model!, {}, emit, signal, ImageEmbedder);\n\n if (Array.isArray(input.image)) {\n const vectors: Float32Array[] = [];\n for (const image of input.image) {\n const result = imageEmbedder.embed(image as any);\n if (!result.embeddings?.[0]?.floatEmbedding) {\n throw new PermanentJobError(\"Failed to generate embedding: Empty result\");\n }\n vectors.push(Float32Array.from(result.embeddings[0].floatEmbedding));\n }\n emit({ type: \"finish\", data: { vector: vectors } as ImageEmbeddingTaskOutput });\n return;\n }\n\n const result = imageEmbedder.embed(input.image as any);\n\n if (!result.embeddings?.[0]?.floatEmbedding) {\n throw new PermanentJobError(\"Failed to generate embedding: Empty result\");\n }\n\n const embedding = Float32Array.from(result.embeddings[0].floatEmbedding);\n\n emit({ type: \"finish\", data: { vector: embedding } as ImageEmbeddingTaskOutput });\n};\n",
16
- "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ImageSegmentationTaskInput,\n ImageSegmentationTaskOutput,\n} from \"@workglow/ai\";\nimport { PermanentJobError } from \"@workglow/job-queue\";\nimport { loadTfmpTasksVisionSDK } from \"./TFMP_Client\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { getModelTask } from \"./TFMP_Runtime\";\n\nexport const TFMP_ImageSegmentation: AiProviderRunFn<\n ImageSegmentationTaskInput,\n ImageSegmentationTaskOutput,\n TFMPModelConfig\n> = async (input, model, signal, emit) => {\n const { ImageSegmenter } = await loadTfmpTasksVisionSDK();\n const imageSegmenter = await getModelTask(model!, {}, emit, signal, ImageSegmenter);\n const result = imageSegmenter.segment(input.image as any);\n\n if (!result.categoryMask) {\n throw new PermanentJobError(\"Failed to segment image: Empty result\");\n }\n\n const masks = [\n {\n label: \"segment\",\n score: 1.0,\n mask: {\n data: result.categoryMask.canvas,\n width: result.categoryMask.width,\n height: result.categoryMask.height,\n },\n },\n ];\n\n emit({ type: \"finish\", data: { masks } });\n};\n",
16
+ "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ImageSegmentationTaskInput,\n ImageSegmentationTaskOutput,\n} from \"@workglow/ai\";\nimport { PermanentJobError } from \"@workglow/job-queue\";\nimport { imageValueFromBitmap } from \"@workglow/util/media\";\nimport { loadTfmpTasksVisionSDK } from \"./TFMP_Client\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { getModelTask } from \"./TFMP_Runtime\";\n\nexport const TFMP_ImageSegmentation: AiProviderRunFn<\n ImageSegmentationTaskInput,\n ImageSegmentationTaskOutput,\n TFMPModelConfig\n> = async (input, model, signal, emit) => {\n const { ImageSegmenter } = await loadTfmpTasksVisionSDK();\n const imageSegmenter = await getModelTask(model!, {}, emit, signal, ImageSegmenter);\n const result = imageSegmenter.segment(input.image as any);\n\n if (!result.categoryMask) {\n throw new PermanentJobError(\"Failed to segment image: Empty result\");\n }\n\n const maskBitmap = await createImageBitmap(result.categoryMask.canvas);\n const masks = [\n {\n label: \"segment\",\n score: 1.0,\n mask: imageValueFromBitmap(maskBitmap, result.categoryMask.width, result.categoryMask.height),\n },\n ];\n\n emit({ type: \"finish\", data: { masks } });\n};\n",
17
17
  "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRunFn, ModelInfoTaskInput, ModelInfoTaskOutput } from \"@workglow/ai\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { modelTaskCache } from \"./TFMP_Runtime\";\n\n/** Known MediaPipe embedding model dimensions. */\nconst TFMP_EMBEDDING_DIMENSIONS: Record<string, { native_dimensions: number; mrl: boolean }> = {\n \"universal-sentence-encoder\": { native_dimensions: 512, mrl: false },\n};\n\nexport const TFMP_ModelInfo: AiProviderRunFn<\n ModelInfoTaskInput,\n ModelInfoTaskOutput,\n TFMPModelConfig\n> = async (input, model, _signal, emit) => {\n if (input.detail === \"dimensions\") {\n const pc = model?.provider_config as Record<string, unknown>;\n let native_dimensions =\n typeof pc?.native_dimensions === \"number\" ? pc.native_dimensions : undefined;\n const mrl = typeof pc?.mrl === \"boolean\" ? pc.mrl : false;\n if (native_dimensions === undefined) {\n const modelPath = (pc?.model_path as string) ?? \"\";\n const known = TFMP_EMBEDDING_DIMENSIONS[modelPath];\n if (known) {\n native_dimensions = known.native_dimensions;\n }\n }\n emit({\n type: \"finish\",\n data: {\n model: input.model,\n is_local: true,\n is_remote: false,\n supports_browser: true,\n supports_node: false,\n is_cached: false,\n is_loaded: false,\n file_sizes: null,\n ...(native_dimensions !== undefined ? { native_dimensions } : {}),\n ...(mrl ? { mrl } : {}),\n },\n });\n return;\n }\n\n const model_path = model!.provider_config.model_path;\n const is_loaded = modelTaskCache.has(model_path);\n\n emit({\n type: \"finish\",\n data: {\n model: input.model,\n is_local: true,\n is_remote: false,\n supports_browser: true,\n supports_node: false,\n is_cached: is_loaded,\n is_loaded,\n file_sizes: null,\n },\n });\n};\n",
18
18
  "/**\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 capabilities: [\"text.embedding\"],\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 capabilities: [\"text.language-detection\"],\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 capabilities: [\"text.classification\"],\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 capabilities: [\"image.embedding\"],\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 capabilities: [\"image.classification\"],\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 capabilities: [\"image.object-detection\"],\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 capabilities: [\"image.segmentation\"],\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 capabilities: [\"vision.face-landmarks\"],\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 capabilities: [\"vision.gesture\"],\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 capabilities: [\"vision.hand-landmarks\"],\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 capabilities: [\"vision.pose-landmarks\"],\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, _model, _signal, emit) => {\n const results = filterModelSearchResultsByQuery(\n TFMP_MODEL_RESULTS.map((result) => ({\n ...result,\n record: { ...result.record, provider: providerId },\n })),\n input.query\n );\n emit({ type: \"finish\", data: { results } });\n };\n}\n\nexport const TFMP_ModelSearch: AiProviderRunFn<ModelSearchTaskInput, ModelSearchTaskOutput> =\n createTFMPModelSearch(TENSORFLOW_MEDIAPIPE);\n",
19
19
  "/**\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 \"ModelDownloadTask\",\n \"ModelDownloadRemoveTask\",\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",
@@ -24,12 +24,12 @@
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 TextLanguageDetectionTaskInput,\n TextLanguageDetectionTaskOutput,\n} from \"@workglow/ai\";\nimport { PermanentJobError } from \"@workglow/job-queue\";\nimport { loadTfmpTasksTextSDK } from \"./TFMP_Client\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { getModelTask } from \"./TFMP_Runtime\";\n\nexport const TFMP_TextLanguageDetection: AiProviderRunFn<\n TextLanguageDetectionTaskInput,\n TextLanguageDetectionTaskOutput,\n TFMPModelConfig\n> = async (input, model, signal, emit) => {\n const maxLanguages = input.maxLanguages === 0 ? -1 : input.maxLanguages;\n\n const { LanguageDetector } = await loadTfmpTasksTextSDK();\n const textLanguageDetector = await getModelTask(\n model!,\n {\n maxLanguages,\n },\n emit,\n signal,\n LanguageDetector\n );\n const result = textLanguageDetector.detect(input.text);\n\n if (!result.languages?.[0]?.languageCode) {\n throw new PermanentJobError(\"Failed to detect language: Empty result\");\n }\n\n const languages = result.languages.map((language: any) => ({\n language: language.languageCode,\n score: language.probability,\n }));\n\n emit({ type: \"finish\", data: { languages } });\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 {\n AiProviderRunFn,\n ModelDownloadRemoveTaskRunInput,\n ModelDownloadRemoveTaskRunOutput,\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 ModelDownloadRemoveTaskRunInput,\n ModelDownloadRemoveTaskRunOutput,\n TFMPModelConfig\n> = async (input, model, _signal, emit) => {\n const model_path = model!.provider_config.model_path;\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 emit({ type: \"finish\", data: { model: input.model } });\n};\n",
26
26
  "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRunFnRegistration } from \"@workglow/ai\";\nimport {\n TFMP_IMAGE_CLASSIFICATION,\n TFMP_IMAGE_EMBEDDING,\n TFMP_IMAGE_OBJECT_DETECTION,\n TFMP_IMAGE_SEGMENTATION,\n TFMP_MODEL_DOWNLOAD,\n TFMP_MODEL_INFO,\n TFMP_MODEL_SEARCH,\n TFMP_MODEL_UNLOAD,\n TFMP_TEXT_CLASSIFICATION,\n TFMP_TEXT_EMBEDDING,\n TFMP_TEXT_LANGUAGE_DETECTION,\n TFMP_VISION_FACE_DETECTION,\n TFMP_VISION_FACE_LANDMARKS,\n TFMP_VISION_GESTURE,\n TFMP_VISION_HAND_LANDMARKS,\n TFMP_VISION_POSE_LANDMARKS,\n} from \"./TFMP_CapabilitySets\";\nimport type { TFMPModelConfig } from \"./TFMP_ModelSchema\";\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_ModelSearch } from \"./TFMP_ModelSearch\";\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\n/**\n * Capability-set run-fn registrations for TensorFlow MediaPipe.\n *\n * All TFMP inference ops are one-shot run-fns that emit a single `finish` event.\n * {@link ModelDownloadTask} (`[\"model.download\"]`) reports real download progress\n * via `phase` events emitted directly from {@link getModelTask}.\n */\nexport const TFMP_RUN_FNS: readonly AiProviderRunFnRegistration<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n TFMPModelConfig\n>[] = [\n { serves: TFMP_TEXT_EMBEDDING, runFn: TFMP_TextEmbedding },\n { serves: TFMP_TEXT_CLASSIFICATION, runFn: TFMP_TextClassification },\n { serves: TFMP_TEXT_LANGUAGE_DETECTION, runFn: TFMP_TextLanguageDetection },\n { serves: TFMP_IMAGE_CLASSIFICATION, runFn: TFMP_ImageClassification },\n { serves: TFMP_IMAGE_EMBEDDING, runFn: TFMP_ImageEmbedding },\n { serves: TFMP_IMAGE_SEGMENTATION, runFn: TFMP_ImageSegmentation },\n { serves: TFMP_IMAGE_OBJECT_DETECTION, runFn: TFMP_ObjectDetection },\n { serves: TFMP_VISION_FACE_DETECTION, runFn: TFMP_FaceDetector },\n { serves: TFMP_VISION_FACE_LANDMARKS, runFn: TFMP_FaceLandmarker },\n { serves: TFMP_VISION_HAND_LANDMARKS, runFn: TFMP_HandLandmarker },\n { serves: TFMP_VISION_POSE_LANDMARKS, runFn: TFMP_PoseLandmarker },\n { serves: TFMP_VISION_GESTURE, runFn: TFMP_GestureRecognizer },\n { serves: TFMP_MODEL_DOWNLOAD, runFn: TFMP_Download },\n { serves: TFMP_MODEL_UNLOAD, runFn: TFMP_Unload },\n { serves: TFMP_MODEL_SEARCH, runFn: TFMP_ModelSearch },\n { serves: TFMP_MODEL_INFO, runFn: TFMP_ModelInfo },\n];\n",
27
- "/**\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 {\n AiProviderPreviewRunFn,\n AiProviderRunFnRegistration,\n Capability,\n ModelRecord,\n} from \"@workglow/ai\";\nimport { TENSORFLOW_MEDIAPIPE } from \"./common/TFMP_Constants\";\nimport { inferTfmpCapabilities, tfmpWorkerRunFnSpecs } from \"./common/TFMP_Capabilities\";\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 constructor(\n promiseRunFns?: readonly AiProviderRunFnRegistration<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n TFMPModelConfig\n >[],\n previewTasks?: Record<\n string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n AiProviderPreviewRunFn<any, any, TFMPModelConfig>\n >\n ) {\n super(promiseRunFns, previewTasks);\n }\n\n override inferCapabilities(model: ModelRecord): readonly Capability[] {\n return inferTfmpCapabilities(model);\n }\n\n protected override workerRunFnSpecs(): readonly { serves: readonly Capability[] }[] {\n return tfmpWorkerRunFnSpecs();\n }\n}\n",
27
+ "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderPreviewRunFn,\n AiProviderRunFnRegistration,\n Capability,\n ModelRecord,\n} from \"@workglow/ai\";\nimport { AiProvider } from \"@workglow/ai\";\nimport { inferTfmpCapabilities, tfmpWorkerRunFnSpecs } from \"./common/TFMP_Capabilities\";\nimport { TENSORFLOW_MEDIAPIPE } 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 constructor(\n promiseRunFns?: readonly AiProviderRunFnRegistration<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n TFMPModelConfig\n >[],\n previewTasks?: Record<\n string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n AiProviderPreviewRunFn<any, any, TFMPModelConfig>\n >\n ) {\n super(promiseRunFns, previewTasks);\n }\n\n override inferCapabilities(model: ModelRecord): readonly Capability[] {\n return inferTfmpCapabilities(model);\n }\n\n protected override workerRunFnSpecs(): readonly { serves: readonly Capability[] }[] {\n return tfmpWorkerRunFnSpecs();\n }\n}\n",
28
28
  "/**\n * @license\n * Copyright 2026 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { Capability, ModelRecord } from \"@workglow/ai/worker\";\nimport { TFMP_CAPABILITY_SETS } from \"./TFMP_CapabilitySets\";\n\nexport const TFMP_RUN_FN_SPECS = TFMP_CAPABILITY_SETS.map((serves) => ({ serves }));\n\nexport function tfmpWorkerRunFnSpecs(): readonly { readonly serves: readonly Capability[] }[] {\n return TFMP_RUN_FN_SPECS;\n}\n\ntype CapabilityHints = Pick<ModelRecord, \"model_id\" | \"provider_config\" | \"capabilities\">;\n\n/**\n * Heuristic capability inference for TensorFlow MediaPipe {@link ModelRecord}.\n *\n * MediaPipe ships canonical task-specific model files (e.g. `efficientdet_lite0.tflite`,\n * `gesture_recognizer.task`, `face_landmarker.task`). The model file name typically\n * encodes its specialised task. Declared capabilities (set by model-search) win;\n * fallback inspects the model_path / model name for known MediaPipe filenames.\n */\nexport function inferTfmpCapabilities(model: CapabilityHints): readonly Capability[] {\n const declared = (model.capabilities as readonly Capability[] | undefined) ?? [];\n if (declared.length > 0) return declared;\n\n const id = String(\n model.model_id ??\n (model.provider_config as { model_path?: string; model_name?: string } | undefined)\n ?.model_path ??\n (model.provider_config as { model_name?: string } | undefined)?.model_name ??\n \"\"\n );\n const baseName = (id.split(\"/\").pop() ?? id).toLowerCase();\n\n // Hand landmarker / gesture recognizer share `hand_*` filenames.\n if (/gesture_recognizer/.test(baseName)) {\n return [\n \"vision.gesture\",\n \"vision.hand-landmarks\",\n \"model.download-remove\",\n \"model.info\",\n \"model.search\",\n ];\n }\n if (/hand_landmarker/.test(baseName)) {\n return [\"vision.hand-landmarks\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/face_landmarker/.test(baseName)) {\n return [\"vision.face-landmarks\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/face_detector|blaze_face/.test(baseName)) {\n return [\"vision.face-detection\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/pose_landmarker/.test(baseName)) {\n return [\"vision.pose-landmarks\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/object_detector|efficientdet|ssd_mobilenet|yolo/.test(baseName)) {\n return [\"image.object-detection\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/segmenter|deeplab|selfie/.test(baseName)) {\n return [\"image.segmentation\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/image_classifier|efficientnet|mobilenet/.test(baseName)) {\n return [\"image.classification\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/image_embed/.test(baseName)) {\n return [\"image.embedding\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/text_embed|universal_sentence_encoder|use_/.test(baseName)) {\n return [\"text.embedding\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/text_classifier|bert_classifier/.test(baseName)) {\n return [\"text.classification\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/language_detector/.test(baseName)) {\n return [\"text.language-detection\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n\n return [\"model.search\", \"model.info\"];\n}\n",
29
29
  "/**\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_RUN_FNS } from \"./common/TFMP_JobRunFns\";\nimport { TensorFlowMediaPipeProvider } from \"./TensorFlowMediaPipeProvider\";\n\nexport async function registerTensorFlowMediaPipeWorker(): Promise<void> {\n await registerProviderWorker(\n (ws) => new TensorFlowMediaPipeProvider(TFMP_RUN_FNS).registerOnWorkerServer(ws),\n \"TensorFlow MediaPipe\"\n );\n}\n",
30
- "/**\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 {\n AiProviderPreviewRunFn,\n AiProviderRunFnRegistration,\n Capability,\n ModelRecord,\n} from \"@workglow/ai/worker\";\nimport { TENSORFLOW_MEDIAPIPE } from \"./common/TFMP_Constants\";\nimport { inferTfmpCapabilities, tfmpWorkerRunFnSpecs } from \"./common/TFMP_Capabilities\";\nimport type { TFMPModelConfig } from \"./common/TFMP_ModelSchema\";\n\n/**\n * Worker-server registration for TensorFlow MediaPipe. Imports `AiProvider`\n * from `@workglow/ai/worker` so the SDK is only loaded in the worker.\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 constructor(\n promiseRunFns?: readonly AiProviderRunFnRegistration<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n TFMPModelConfig\n >[],\n previewTasks?: Record<\n string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n AiProviderPreviewRunFn<any, any, TFMPModelConfig>\n >\n ) {\n super(promiseRunFns, previewTasks);\n }\n\n override inferCapabilities(model: ModelRecord): readonly Capability[] {\n return inferTfmpCapabilities(model);\n }\n\n protected override workerRunFnSpecs(): readonly { serves: readonly Capability[] }[] {\n return tfmpWorkerRunFnSpecs();\n }\n}\n"
30
+ "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderPreviewRunFn,\n AiProviderRunFnRegistration,\n Capability,\n ModelRecord,\n} from \"@workglow/ai/worker\";\nimport { AiProvider } from \"@workglow/ai/worker\";\nimport { inferTfmpCapabilities, tfmpWorkerRunFnSpecs } from \"./common/TFMP_Capabilities\";\nimport { TENSORFLOW_MEDIAPIPE } from \"./common/TFMP_Constants\";\nimport type { TFMPModelConfig } from \"./common/TFMP_ModelSchema\";\n\n/**\n * Worker-server registration for TensorFlow MediaPipe. Imports `AiProvider`\n * from `@workglow/ai/worker` so the SDK is only loaded in the worker.\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 constructor(\n promiseRunFns?: readonly AiProviderRunFnRegistration<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n TFMPModelConfig\n >[],\n previewTasks?: Record<\n string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n AiProviderPreviewRunFn<any, any, TFMPModelConfig>\n >\n ) {\n super(promiseRunFns, previewTasks);\n }\n\n override inferCapabilities(model: ModelRecord): readonly Capability[] {\n return inferTfmpCapabilities(model);\n }\n\n protected override workerRunFnSpecs(): readonly { serves: readonly Capability[] }[] {\n return tfmpWorkerRunFnSpecs();\n }\n}\n"
31
31
  ],
32
- "mappings": "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",
33
- "debugId": "271A8EDB1D7FB3E564756E2164756E21",
32
+ "mappings": "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",
33
+ "debugId": "575100052E4E1E7364756E2164756E21",
34
34
  "names": []
35
35
  }
package/dist/ai.js CHANGED
@@ -795,6 +795,7 @@ var TFMP_ImageEmbedding = async (input, model, signal, emit) => {
795
795
 
796
796
  // src/ai/common/TFMP_ImageSegmentation.ts
797
797
  import { PermanentJobError as PermanentJobError9 } from "@workglow/job-queue";
798
+ import { imageValueFromBitmap } from "@workglow/util/media";
798
799
  var TFMP_ImageSegmentation = async (input, model, signal, emit) => {
799
800
  const { ImageSegmenter } = await loadTfmpTasksVisionSDK();
800
801
  const imageSegmenter = await getModelTask(model, {}, emit, signal, ImageSegmenter);
@@ -802,15 +803,12 @@ var TFMP_ImageSegmentation = async (input, model, signal, emit) => {
802
803
  if (!result.categoryMask) {
803
804
  throw new PermanentJobError9("Failed to segment image: Empty result");
804
805
  }
806
+ const maskBitmap = await createImageBitmap(result.categoryMask.canvas);
805
807
  const masks = [
806
808
  {
807
809
  label: "segment",
808
810
  score: 1,
809
- mask: {
810
- data: result.categoryMask.canvas,
811
- width: result.categoryMask.width,
812
- height: result.categoryMask.height
813
- }
811
+ mask: imageValueFromBitmap(maskBitmap, result.categoryMask.width, result.categoryMask.height)
814
812
  }
815
813
  ];
816
814
  emit({ type: "finish", data: { masks } });
@@ -1059,4 +1057,4 @@ export {
1059
1057
  TENSORFLOW_MEDIAPIPE
1060
1058
  };
1061
1059
 
1062
- //# debugId=23504D8C865655B764756E2164756E21
1060
+ //# debugId=A8EE60D68D646F7D64756E2164756E21
package/dist/ai.js.map CHANGED
@@ -6,7 +6,7 @@
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
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 capabilities: [\"text.embedding\"],\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 capabilities: [\"text.language-detection\"],\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 capabilities: [\"text.classification\"],\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 capabilities: [\"image.embedding\"],\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 capabilities: [\"image.classification\"],\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 capabilities: [\"image.object-detection\"],\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 capabilities: [\"image.segmentation\"],\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 capabilities: [\"vision.face-landmarks\"],\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 capabilities: [\"vision.gesture\"],\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 capabilities: [\"vision.hand-landmarks\"],\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 capabilities: [\"vision.pose-landmarks\"],\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, _model, _signal, emit) => {\n const results = filterModelSearchResultsByQuery(\n TFMP_MODEL_RESULTS.map((result) => ({\n ...result,\n record: { ...result.record, provider: providerId },\n })),\n input.query\n );\n emit({ type: \"finish\", data: { 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\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
- "/**\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 {\n AiProviderPreviewRunFn,\n AiProviderRunFnRegistration,\n Capability,\n ModelRecord,\n} from \"@workglow/ai\";\nimport { TENSORFLOW_MEDIAPIPE } from \"./common/TFMP_Constants\";\nimport { inferTfmpCapabilities, tfmpWorkerRunFnSpecs } from \"./common/TFMP_Capabilities\";\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 constructor(\n promiseRunFns?: readonly AiProviderRunFnRegistration<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n TFMPModelConfig\n >[],\n previewTasks?: Record<\n string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n AiProviderPreviewRunFn<any, any, TFMPModelConfig>\n >\n ) {\n super(promiseRunFns, previewTasks);\n }\n\n override inferCapabilities(model: ModelRecord): readonly Capability[] {\n return inferTfmpCapabilities(model);\n }\n\n protected override workerRunFnSpecs(): readonly { serves: readonly Capability[] }[] {\n return tfmpWorkerRunFnSpecs();\n }\n}\n",
9
+ "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderPreviewRunFn,\n AiProviderRunFnRegistration,\n Capability,\n ModelRecord,\n} from \"@workglow/ai\";\nimport { AiProvider } from \"@workglow/ai\";\nimport { inferTfmpCapabilities, tfmpWorkerRunFnSpecs } from \"./common/TFMP_Capabilities\";\nimport { TENSORFLOW_MEDIAPIPE } 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 constructor(\n promiseRunFns?: readonly AiProviderRunFnRegistration<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n TFMPModelConfig\n >[],\n previewTasks?: Record<\n string,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n AiProviderPreviewRunFn<any, any, TFMPModelConfig>\n >\n ) {\n super(promiseRunFns, previewTasks);\n }\n\n override inferCapabilities(model: ModelRecord): readonly Capability[] {\n return inferTfmpCapabilities(model);\n }\n\n protected override workerRunFnSpecs(): readonly { serves: readonly Capability[] }[] {\n return tfmpWorkerRunFnSpecs();\n }\n}\n",
10
10
  "/**\n * @license\n * Copyright 2026 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { Capability } from \"@workglow/ai/worker\";\n\nexport const TFMP_TEXT_EMBEDDING = [\"text.embedding\"] as const satisfies Capability[];\nexport const TFMP_TEXT_CLASSIFICATION = [\"text.classification\"] as const satisfies Capability[];\nexport const TFMP_TEXT_LANGUAGE_DETECTION = [\n \"text.language-detection\",\n] as const satisfies Capability[];\nexport const TFMP_IMAGE_CLASSIFICATION = [\"image.classification\"] as const satisfies Capability[];\nexport const TFMP_IMAGE_EMBEDDING = [\"image.embedding\"] as const satisfies Capability[];\nexport const TFMP_IMAGE_SEGMENTATION = [\"image.segmentation\"] as const satisfies Capability[];\nexport const TFMP_IMAGE_OBJECT_DETECTION = [\n \"image.object-detection\",\n] as const satisfies Capability[];\nexport const TFMP_VISION_FACE_DETECTION = [\"vision.face-detection\"] as const satisfies Capability[];\nexport const TFMP_VISION_FACE_LANDMARKS = [\"vision.face-landmarks\"] as const satisfies Capability[];\nexport const TFMP_VISION_HAND_LANDMARKS = [\"vision.hand-landmarks\"] as const satisfies Capability[];\nexport const TFMP_VISION_POSE_LANDMARKS = [\"vision.pose-landmarks\"] as const satisfies Capability[];\nexport const TFMP_VISION_GESTURE = [\"vision.gesture\"] as const satisfies Capability[];\nexport const TFMP_MODEL_DOWNLOAD = [\"model.download\"] as const satisfies Capability[];\nexport const TFMP_MODEL_UNLOAD = [\"model.download-remove\"] as const satisfies Capability[];\nexport const TFMP_MODEL_SEARCH = [\"model.search\"] as const satisfies Capability[];\nexport const TFMP_MODEL_INFO = [\"model.info\"] as const satisfies Capability[];\n\nexport const TFMP_CAPABILITY_SETS = [\n TFMP_TEXT_EMBEDDING,\n TFMP_TEXT_CLASSIFICATION,\n TFMP_TEXT_LANGUAGE_DETECTION,\n TFMP_IMAGE_CLASSIFICATION,\n TFMP_IMAGE_EMBEDDING,\n TFMP_IMAGE_SEGMENTATION,\n TFMP_IMAGE_OBJECT_DETECTION,\n TFMP_VISION_FACE_DETECTION,\n TFMP_VISION_FACE_LANDMARKS,\n TFMP_VISION_HAND_LANDMARKS,\n TFMP_VISION_POSE_LANDMARKS,\n TFMP_VISION_GESTURE,\n TFMP_MODEL_DOWNLOAD,\n TFMP_MODEL_UNLOAD,\n TFMP_MODEL_SEARCH,\n TFMP_MODEL_INFO,\n] as const;\n",
11
11
  "/**\n * @license\n * Copyright 2026 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { Capability, ModelRecord } from \"@workglow/ai/worker\";\nimport { TFMP_CAPABILITY_SETS } from \"./TFMP_CapabilitySets\";\n\nexport const TFMP_RUN_FN_SPECS = TFMP_CAPABILITY_SETS.map((serves) => ({ serves }));\n\nexport function tfmpWorkerRunFnSpecs(): readonly { readonly serves: readonly Capability[] }[] {\n return TFMP_RUN_FN_SPECS;\n}\n\ntype CapabilityHints = Pick<ModelRecord, \"model_id\" | \"provider_config\" | \"capabilities\">;\n\n/**\n * Heuristic capability inference for TensorFlow MediaPipe {@link ModelRecord}.\n *\n * MediaPipe ships canonical task-specific model files (e.g. `efficientdet_lite0.tflite`,\n * `gesture_recognizer.task`, `face_landmarker.task`). The model file name typically\n * encodes its specialised task. Declared capabilities (set by model-search) win;\n * fallback inspects the model_path / model name for known MediaPipe filenames.\n */\nexport function inferTfmpCapabilities(model: CapabilityHints): readonly Capability[] {\n const declared = (model.capabilities as readonly Capability[] | undefined) ?? [];\n if (declared.length > 0) return declared;\n\n const id = String(\n model.model_id ??\n (model.provider_config as { model_path?: string; model_name?: string } | undefined)\n ?.model_path ??\n (model.provider_config as { model_name?: string } | undefined)?.model_name ??\n \"\"\n );\n const baseName = (id.split(\"/\").pop() ?? id).toLowerCase();\n\n // Hand landmarker / gesture recognizer share `hand_*` filenames.\n if (/gesture_recognizer/.test(baseName)) {\n return [\n \"vision.gesture\",\n \"vision.hand-landmarks\",\n \"model.download-remove\",\n \"model.info\",\n \"model.search\",\n ];\n }\n if (/hand_landmarker/.test(baseName)) {\n return [\"vision.hand-landmarks\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/face_landmarker/.test(baseName)) {\n return [\"vision.face-landmarks\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/face_detector|blaze_face/.test(baseName)) {\n return [\"vision.face-detection\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/pose_landmarker/.test(baseName)) {\n return [\"vision.pose-landmarks\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/object_detector|efficientdet|ssd_mobilenet|yolo/.test(baseName)) {\n return [\"image.object-detection\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/segmenter|deeplab|selfie/.test(baseName)) {\n return [\"image.segmentation\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/image_classifier|efficientnet|mobilenet/.test(baseName)) {\n return [\"image.classification\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/image_embed/.test(baseName)) {\n return [\"image.embedding\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/text_embed|universal_sentence_encoder|use_/.test(baseName)) {\n return [\"text.embedding\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/text_classifier|bert_classifier/.test(baseName)) {\n return [\"text.classification\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n if (/language_detector/.test(baseName)) {\n return [\"text.language-detection\", \"model.download-remove\", \"model.info\", \"model.search\"];\n }\n\n return [\"model.search\", \"model.info\"];\n}\n",
12
12
  "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ModelDownloadTaskRunInput,\n ModelDownloadTaskRunOutput,\n} from \"@workglow/ai\";\nimport { PermanentJobError } from \"@workglow/job-queue\";\nimport { loadTfmpTasksTextSDK, loadTfmpTasksVisionSDK } from \"./TFMP_Client\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport type { TaskInstance } from \"./TFMP_Runtime\";\nimport { getModelTask, wasm_reference_counts } from \"./TFMP_Runtime\";\n\n/**\n * Core implementation for downloading a TensorFlow MediaPipe model. Resolves\n * the pipeline-specific SDK class, materialises the task via\n * {@link getModelTask}, then immediately closes it to release the WASM\n * reference acquired during load — the download itself is the purpose; we\n * don't keep the task alive.\n *\n * Real download progress (0..1, with messages like \"Loading WASM task\" /\n * \"Creating model task\") is forwarded via the `emit` callback passed to\n * {@link getModelTask}. The {@link StreamProcessor} consumer re-translates each\n * phase event into task-level `onProgress(percent, message)` callbacks.\n */\nexport const TFMP_Download: AiProviderRunFn<\n ModelDownloadTaskRunInput,\n ModelDownloadTaskRunOutput,\n TFMPModelConfig\n> = async (input, model, signal, emit) => {\n const pipeline = model?.provider_config.pipeline;\n let task: TaskInstance;\n switch (pipeline) {\n case \"text-embedder\": {\n const { TextEmbedder } = await loadTfmpTasksTextSDK();\n task = await getModelTask(model!, {}, emit, signal, TextEmbedder);\n break;\n }\n case \"text-classifier\": {\n const { TextClassifier } = await loadTfmpTasksTextSDK();\n task = await getModelTask(model!, {}, emit, signal, TextClassifier);\n break;\n }\n case \"text-language-detector\": {\n const { LanguageDetector } = await loadTfmpTasksTextSDK();\n task = await getModelTask(model!, {}, emit, signal, LanguageDetector);\n break;\n }\n case \"vision-image-classifier\": {\n const { ImageClassifier } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model!, {}, emit, signal, ImageClassifier);\n break;\n }\n case \"vision-image-embedder\": {\n const { ImageEmbedder } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model!, {}, emit, signal, ImageEmbedder);\n break;\n }\n case \"vision-image-segmenter\": {\n const { ImageSegmenter } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model!, {}, emit, signal, ImageSegmenter);\n break;\n }\n case \"vision-object-detector\": {\n const { ObjectDetector } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model!, {}, emit, signal, ObjectDetector);\n break;\n }\n case \"vision-face-detector\": {\n const { FaceDetector } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model!, {}, emit, signal, FaceDetector);\n break;\n }\n case \"vision-face-landmarker\": {\n const { FaceLandmarker } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model!, {}, emit, signal, FaceLandmarker);\n break;\n }\n case \"vision-gesture-recognizer\": {\n const { GestureRecognizer } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model!, {}, emit, signal, GestureRecognizer);\n break;\n }\n case \"vision-hand-landmarker\": {\n const { HandLandmarker } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model!, {}, emit, signal, HandLandmarker);\n break;\n }\n case \"vision-pose-landmarker\": {\n const { PoseLandmarker } = await loadTfmpTasksVisionSDK();\n task = await getModelTask(model!, {}, emit, signal, PoseLandmarker);\n break;\n }\n default:\n throw new PermanentJobError(\n `Invalid pipeline: ${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\n emit({ type: \"phase\", message: \"Pipeline loaded\", progress: 0.9 });\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 emit({ type: \"finish\", data: { model: input.model } });\n};\n",
@@ -18,7 +18,7 @@
18
18
  "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n HandLandmarkerTaskInput,\n HandLandmarkerTaskOutput,\n} from \"@workglow/ai\";\nimport { PermanentJobError } from \"@workglow/job-queue\";\nimport { loadTfmpTasksVisionSDK } from \"./TFMP_Client\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { getModelTask } from \"./TFMP_Runtime\";\n\nexport const TFMP_HandLandmarker: AiProviderRunFn<\n HandLandmarkerTaskInput,\n HandLandmarkerTaskOutput,\n TFMPModelConfig\n> = async (input, model, signal, emit) => {\n const { HandLandmarker } = await loadTfmpTasksVisionSDK();\n const handLandmarker = await getModelTask(\n model!,\n {\n numHands: input.numHands,\n minHandDetectionConfidence: input.minHandDetectionConfidence,\n minHandPresenceConfidence: input.minHandPresenceConfidence,\n minTrackingConfidence: input.minTrackingConfidence,\n },\n emit,\n signal,\n HandLandmarker\n );\n const result = handLandmarker.detect(input.image);\n\n if (!result.landmarks) {\n throw new PermanentJobError(\"Failed to detect hand landmarks: Empty result\");\n }\n\n const hands = result.landmarks.map((landmarks: any, index: number) => ({\n handedness: result.handedness[index].map((h: any) => ({\n label: h.categoryName,\n score: h.score,\n })),\n landmarks: landmarks.map((l: any) => ({\n x: l.x,\n y: l.y,\n z: l.z,\n })),\n worldLandmarks: result.worldLandmarks[index].map((l: any) => ({\n x: l.x,\n y: l.y,\n z: l.z,\n })),\n }));\n\n emit({ type: \"finish\", data: { hands } });\n};\n",
19
19
  "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ImageClassificationTaskInput,\n ImageClassificationTaskOutput,\n} from \"@workglow/ai\";\nimport { PermanentJobError } from \"@workglow/job-queue\";\nimport { loadTfmpTasksVisionSDK } from \"./TFMP_Client\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { getModelTask } from \"./TFMP_Runtime\";\n\nexport const TFMP_ImageClassification: AiProviderRunFn<\n ImageClassificationTaskInput,\n ImageClassificationTaskOutput,\n TFMPModelConfig\n> = async (input, model, signal, emit) => {\n const { ImageClassifier } = await loadTfmpTasksVisionSDK();\n const imageClassifier = await getModelTask(\n model!,\n {\n maxResults: input.maxCategories,\n },\n emit,\n signal,\n ImageClassifier\n );\n const result = imageClassifier.classify(input.image);\n\n if (!result.classifications?.[0]?.categories) {\n throw new PermanentJobError(\"Failed to classify image: Empty result\");\n }\n\n const categories = result.classifications[0].categories.map(\n (category: { categoryName: string; score: number }) => ({\n label: category.categoryName,\n score: category.score,\n })\n );\n\n emit({ type: \"finish\", data: { categories } });\n};\n",
20
20
  "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ImageEmbeddingTaskInput,\n ImageEmbeddingTaskOutput,\n} from \"@workglow/ai\";\nimport { PermanentJobError } from \"@workglow/job-queue\";\nimport { loadTfmpTasksVisionSDK } from \"./TFMP_Client\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { getModelTask } from \"./TFMP_Runtime\";\n\nexport const TFMP_ImageEmbedding: AiProviderRunFn<\n ImageEmbeddingTaskInput,\n ImageEmbeddingTaskOutput,\n TFMPModelConfig\n> = async (input, model, signal, emit) => {\n const { ImageEmbedder } = await loadTfmpTasksVisionSDK();\n const imageEmbedder = await getModelTask(model!, {}, emit, signal, ImageEmbedder);\n\n if (Array.isArray(input.image)) {\n const vectors: Float32Array[] = [];\n for (const image of input.image) {\n const result = imageEmbedder.embed(image as any);\n if (!result.embeddings?.[0]?.floatEmbedding) {\n throw new PermanentJobError(\"Failed to generate embedding: Empty result\");\n }\n vectors.push(Float32Array.from(result.embeddings[0].floatEmbedding));\n }\n emit({ type: \"finish\", data: { vector: vectors } as ImageEmbeddingTaskOutput });\n return;\n }\n\n const result = imageEmbedder.embed(input.image as any);\n\n if (!result.embeddings?.[0]?.floatEmbedding) {\n throw new PermanentJobError(\"Failed to generate embedding: Empty result\");\n }\n\n const embedding = Float32Array.from(result.embeddings[0].floatEmbedding);\n\n emit({ type: \"finish\", data: { vector: embedding } as ImageEmbeddingTaskOutput });\n};\n",
21
- "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ImageSegmentationTaskInput,\n ImageSegmentationTaskOutput,\n} from \"@workglow/ai\";\nimport { PermanentJobError } from \"@workglow/job-queue\";\nimport { loadTfmpTasksVisionSDK } from \"./TFMP_Client\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { getModelTask } from \"./TFMP_Runtime\";\n\nexport const TFMP_ImageSegmentation: AiProviderRunFn<\n ImageSegmentationTaskInput,\n ImageSegmentationTaskOutput,\n TFMPModelConfig\n> = async (input, model, signal, emit) => {\n const { ImageSegmenter } = await loadTfmpTasksVisionSDK();\n const imageSegmenter = await getModelTask(model!, {}, emit, signal, ImageSegmenter);\n const result = imageSegmenter.segment(input.image as any);\n\n if (!result.categoryMask) {\n throw new PermanentJobError(\"Failed to segment image: Empty result\");\n }\n\n const masks = [\n {\n label: \"segment\",\n score: 1.0,\n mask: {\n data: result.categoryMask.canvas,\n width: result.categoryMask.width,\n height: result.categoryMask.height,\n },\n },\n ];\n\n emit({ type: \"finish\", data: { masks } });\n};\n",
21
+ "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ImageSegmentationTaskInput,\n ImageSegmentationTaskOutput,\n} from \"@workglow/ai\";\nimport { PermanentJobError } from \"@workglow/job-queue\";\nimport { imageValueFromBitmap } from \"@workglow/util/media\";\nimport { loadTfmpTasksVisionSDK } from \"./TFMP_Client\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { getModelTask } from \"./TFMP_Runtime\";\n\nexport const TFMP_ImageSegmentation: AiProviderRunFn<\n ImageSegmentationTaskInput,\n ImageSegmentationTaskOutput,\n TFMPModelConfig\n> = async (input, model, signal, emit) => {\n const { ImageSegmenter } = await loadTfmpTasksVisionSDK();\n const imageSegmenter = await getModelTask(model!, {}, emit, signal, ImageSegmenter);\n const result = imageSegmenter.segment(input.image as any);\n\n if (!result.categoryMask) {\n throw new PermanentJobError(\"Failed to segment image: Empty result\");\n }\n\n const maskBitmap = await createImageBitmap(result.categoryMask.canvas);\n const masks = [\n {\n label: \"segment\",\n score: 1.0,\n mask: imageValueFromBitmap(maskBitmap, result.categoryMask.width, result.categoryMask.height),\n },\n ];\n\n emit({ type: \"finish\", data: { masks } });\n};\n",
22
22
  "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRunFn, ModelInfoTaskInput, ModelInfoTaskOutput } from \"@workglow/ai\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { modelTaskCache } from \"./TFMP_Runtime\";\n\n/** Known MediaPipe embedding model dimensions. */\nconst TFMP_EMBEDDING_DIMENSIONS: Record<string, { native_dimensions: number; mrl: boolean }> = {\n \"universal-sentence-encoder\": { native_dimensions: 512, mrl: false },\n};\n\nexport const TFMP_ModelInfo: AiProviderRunFn<\n ModelInfoTaskInput,\n ModelInfoTaskOutput,\n TFMPModelConfig\n> = async (input, model, _signal, emit) => {\n if (input.detail === \"dimensions\") {\n const pc = model?.provider_config as Record<string, unknown>;\n let native_dimensions =\n typeof pc?.native_dimensions === \"number\" ? pc.native_dimensions : undefined;\n const mrl = typeof pc?.mrl === \"boolean\" ? pc.mrl : false;\n if (native_dimensions === undefined) {\n const modelPath = (pc?.model_path as string) ?? \"\";\n const known = TFMP_EMBEDDING_DIMENSIONS[modelPath];\n if (known) {\n native_dimensions = known.native_dimensions;\n }\n }\n emit({\n type: \"finish\",\n data: {\n model: input.model,\n is_local: true,\n is_remote: false,\n supports_browser: true,\n supports_node: false,\n is_cached: false,\n is_loaded: false,\n file_sizes: null,\n ...(native_dimensions !== undefined ? { native_dimensions } : {}),\n ...(mrl ? { mrl } : {}),\n },\n });\n return;\n }\n\n const model_path = model!.provider_config.model_path;\n const is_loaded = modelTaskCache.has(model_path);\n\n emit({\n type: \"finish\",\n data: {\n model: input.model,\n is_local: true,\n is_remote: false,\n supports_browser: true,\n supports_node: false,\n is_cached: is_loaded,\n is_loaded,\n file_sizes: null,\n },\n });\n};\n",
23
23
  "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type {\n AiProviderRunFn,\n ObjectDetectionTaskInput,\n ObjectDetectionTaskOutput,\n} from \"@workglow/ai\";\nimport { PermanentJobError } from \"@workglow/job-queue\";\nimport { loadTfmpTasksVisionSDK } from \"./TFMP_Client\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { getModelTask } from \"./TFMP_Runtime\";\n\nexport const TFMP_ObjectDetection: AiProviderRunFn<\n ObjectDetectionTaskInput,\n ObjectDetectionTaskOutput,\n TFMPModelConfig\n> = async (input, model, signal, emit) => {\n const { ObjectDetector } = await loadTfmpTasksVisionSDK();\n const objectDetector = await getModelTask(\n model!,\n {\n scoreThreshold: input.threshold,\n },\n emit,\n signal,\n ObjectDetector\n );\n const result = objectDetector.detect(input.image);\n\n if (!result.detections) {\n throw new PermanentJobError(\"Failed to detect objects: Empty result\");\n }\n\n const detections = result.detections.map((detection: any) => ({\n label: detection.categories?.[0]?.categoryName || \"unknown\",\n score: detection.categories?.[0]?.score || 0,\n box: {\n x: detection.boundingBox?.originX || 0,\n y: detection.boundingBox?.originY || 0,\n width: detection.boundingBox?.width || 0,\n height: detection.boundingBox?.height || 0,\n },\n }));\n\n emit({ type: \"finish\", data: { detections } });\n};\n",
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 PoseLandmarkerTaskInput,\n PoseLandmarkerTaskOutput,\n} from \"@workglow/ai\";\nimport { PermanentJobError } from \"@workglow/job-queue\";\nimport { loadTfmpTasksVisionSDK } from \"./TFMP_Client\";\nimport { TFMPModelConfig } from \"./TFMP_ModelSchema\";\nimport { getModelTask } from \"./TFMP_Runtime\";\n\nexport const TFMP_PoseLandmarker: AiProviderRunFn<\n PoseLandmarkerTaskInput,\n PoseLandmarkerTaskOutput,\n TFMPModelConfig\n> = async (input, model, signal, emit) => {\n const { PoseLandmarker } = await loadTfmpTasksVisionSDK();\n const poseLandmarker = await getModelTask(\n model!,\n {\n numPoses: input.numPoses,\n minPoseDetectionConfidence: input.minPoseDetectionConfidence,\n minPosePresenceConfidence: input.minPosePresenceConfidence,\n minTrackingConfidence: input.minTrackingConfidence,\n outputSegmentationMasks: input.outputSegmentationMasks,\n },\n emit,\n signal,\n PoseLandmarker\n );\n const result = poseLandmarker.detect(input.image);\n\n if (!result.landmarks) {\n throw new PermanentJobError(\"Failed to detect pose landmarks: Empty result\");\n }\n\n const poses = result.landmarks.map((landmarks: any, index: number) => {\n const pose: any = {\n landmarks: landmarks.map((l: any) => ({\n x: l.x,\n y: l.y,\n z: l.z,\n visibility: l.visibility,\n presence: l.presence,\n })),\n worldLandmarks: result.worldLandmarks[index].map((l: any) => ({\n x: l.x,\n y: l.y,\n z: l.z,\n visibility: l.visibility,\n presence: l.presence,\n })),\n };\n\n if (result.segmentationMasks && result.segmentationMasks[index]) {\n const mask = result.segmentationMasks[index];\n pose.segmentationMask = {\n data: mask.canvas || mask,\n width: mask.width,\n height: mask.height,\n };\n }\n\n return pose;\n });\n\n emit({ type: \"finish\", data: { poses } });\n};\n",
@@ -29,7 +29,7 @@
29
29
  "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRunFnRegistration } from \"@workglow/ai\";\nimport {\n TFMP_IMAGE_CLASSIFICATION,\n TFMP_IMAGE_EMBEDDING,\n TFMP_IMAGE_OBJECT_DETECTION,\n TFMP_IMAGE_SEGMENTATION,\n TFMP_MODEL_DOWNLOAD,\n TFMP_MODEL_INFO,\n TFMP_MODEL_SEARCH,\n TFMP_MODEL_UNLOAD,\n TFMP_TEXT_CLASSIFICATION,\n TFMP_TEXT_EMBEDDING,\n TFMP_TEXT_LANGUAGE_DETECTION,\n TFMP_VISION_FACE_DETECTION,\n TFMP_VISION_FACE_LANDMARKS,\n TFMP_VISION_GESTURE,\n TFMP_VISION_HAND_LANDMARKS,\n TFMP_VISION_POSE_LANDMARKS,\n} from \"./TFMP_CapabilitySets\";\nimport type { TFMPModelConfig } from \"./TFMP_ModelSchema\";\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_ModelSearch } from \"./TFMP_ModelSearch\";\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\n/**\n * Capability-set run-fn registrations for TensorFlow MediaPipe.\n *\n * All TFMP inference ops are one-shot run-fns that emit a single `finish` event.\n * {@link ModelDownloadTask} (`[\"model.download\"]`) reports real download progress\n * via `phase` events emitted directly from {@link getModelTask}.\n */\nexport const TFMP_RUN_FNS: readonly AiProviderRunFnRegistration<\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any,\n TFMPModelConfig\n>[] = [\n { serves: TFMP_TEXT_EMBEDDING, runFn: TFMP_TextEmbedding },\n { serves: TFMP_TEXT_CLASSIFICATION, runFn: TFMP_TextClassification },\n { serves: TFMP_TEXT_LANGUAGE_DETECTION, runFn: TFMP_TextLanguageDetection },\n { serves: TFMP_IMAGE_CLASSIFICATION, runFn: TFMP_ImageClassification },\n { serves: TFMP_IMAGE_EMBEDDING, runFn: TFMP_ImageEmbedding },\n { serves: TFMP_IMAGE_SEGMENTATION, runFn: TFMP_ImageSegmentation },\n { serves: TFMP_IMAGE_OBJECT_DETECTION, runFn: TFMP_ObjectDetection },\n { serves: TFMP_VISION_FACE_DETECTION, runFn: TFMP_FaceDetector },\n { serves: TFMP_VISION_FACE_LANDMARKS, runFn: TFMP_FaceLandmarker },\n { serves: TFMP_VISION_HAND_LANDMARKS, runFn: TFMP_HandLandmarker },\n { serves: TFMP_VISION_POSE_LANDMARKS, runFn: TFMP_PoseLandmarker },\n { serves: TFMP_VISION_GESTURE, runFn: TFMP_GestureRecognizer },\n { serves: TFMP_MODEL_DOWNLOAD, runFn: TFMP_Download },\n { serves: TFMP_MODEL_UNLOAD, runFn: TFMP_Unload },\n { serves: TFMP_MODEL_SEARCH, runFn: TFMP_ModelSearch },\n { serves: TFMP_MODEL_INFO, runFn: TFMP_ModelInfo },\n];\n",
30
30
  "/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\n// organize-imports-ignore\n\nexport * from \"./common/TFMP_Constants\";\nexport * from \"./common/TFMP_ModelSchema\";\nexport * from \"./common/TFMP_ModelSearch\";\nexport * from \"./registerTensorFlowMediaPipe\";\n\nimport { TFMP_RUN_FN_SPECS } from \"./common/TFMP_Capabilities\";\nimport { TFMP_RUN_FNS } from \"./common/TFMP_JobRunFns\";\nimport { TensorFlowMediaPipeQueuedProvider } from \"./TensorFlowMediaPipeQueuedProvider\";\n\n/**\n * @internal Symbols exported only for use by `@workglow/test`. Not part of the stable public API.\n */\nexport const _testOnly = {\n TensorFlowMediaPipeQueuedProvider,\n TFMP_RUN_FN_SPECS,\n TFMP_RUN_FNS,\n} as const;\n"
31
31
  ],
32
- "mappings": "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",
33
- "debugId": "23504D8C865655B764756E2164756E21",
32
+ "mappings": "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",
33
+ "debugId": "A8EE60D68D646F7D64756E2164756E21",
34
34
  "names": []
35
35
  }
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@workglow/tf-mediapipe",
3
3
  "type": "module",
4
4
  "sideEffects": false,
5
- "version": "0.2.36",
5
+ "version": "0.2.37",
6
6
  "repository": {
7
7
  "type": "git",
8
8
  "url": "https://github.com/workglow-dev/libs.git",
@@ -45,11 +45,11 @@
45
45
  "@mediapipe/tasks-genai": "^0.10.27"
46
46
  },
47
47
  "peerDependencies": {
48
- "@workglow/ai": "0.2.36",
49
- "@workglow/job-queue": "0.2.36",
50
- "@workglow/storage": "0.2.36",
51
- "@workglow/task-graph": "0.2.36",
52
- "@workglow/util": "0.2.36"
48
+ "@workglow/ai": "0.2.37",
49
+ "@workglow/job-queue": "0.2.37",
50
+ "@workglow/storage": "0.2.37",
51
+ "@workglow/task-graph": "0.2.37",
52
+ "@workglow/util": "0.2.37"
53
53
  },
54
54
  "peerDependenciesMeta": {
55
55
  "@workglow/ai": {
@@ -69,11 +69,11 @@
69
69
  }
70
70
  },
71
71
  "devDependencies": {
72
- "@workglow/ai": "0.2.36",
73
- "@workglow/job-queue": "0.2.36",
74
- "@workglow/storage": "0.2.36",
75
- "@workglow/task-graph": "0.2.36",
76
- "@workglow/util": "0.2.36"
72
+ "@workglow/ai": "0.2.37",
73
+ "@workglow/job-queue": "0.2.37",
74
+ "@workglow/storage": "0.2.37",
75
+ "@workglow/task-graph": "0.2.37",
76
+ "@workglow/util": "0.2.37"
77
77
  },
78
78
  "files": [
79
79
  "dist",