@workglow/ai 0.0.71 → 0.0.72

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/dist/browser.js +779 -218
  2. package/dist/browser.js.map +15 -8
  3. package/dist/bun.js +779 -218
  4. package/dist/bun.js.map +15 -8
  5. package/dist/node.js +779 -218
  6. package/dist/node.js.map +15 -8
  7. package/dist/task/BackgroundRemovalTask.d.ts +351 -0
  8. package/dist/task/BackgroundRemovalTask.d.ts.map +1 -0
  9. package/dist/task/ImageClassificationTask.d.ts +410 -0
  10. package/dist/task/ImageClassificationTask.d.ts.map +1 -0
  11. package/dist/task/ImageEmbeddingTask.d.ts +503 -0
  12. package/dist/task/ImageEmbeddingTask.d.ts.map +1 -0
  13. package/dist/task/ImageSegmentationTask.d.ts +423 -0
  14. package/dist/task/ImageSegmentationTask.d.ts.map +1 -0
  15. package/dist/task/ImageToTextTask.d.ts +355 -0
  16. package/dist/task/ImageToTextTask.d.ts.map +1 -0
  17. package/dist/task/ObjectDetectionTask.d.ts +476 -0
  18. package/dist/task/ObjectDetectionTask.d.ts.map +1 -0
  19. package/dist/task/{TextClassifierTask.d.ts → TextClassificationTask.d.ts} +23 -12
  20. package/dist/task/TextClassificationTask.d.ts.map +1 -0
  21. package/dist/task/TextFillMaskTask.d.ts.map +1 -1
  22. package/dist/task/TextNamedEntityRecognitionTask.d.ts.map +1 -1
  23. package/dist/task/base/AiTask.d.ts.map +1 -1
  24. package/dist/task/base/AiTaskSchemas.d.ts +153 -0
  25. package/dist/task/base/AiTaskSchemas.d.ts.map +1 -1
  26. package/dist/task/base/AiVisionTask.d.ts +33 -0
  27. package/dist/task/base/AiVisionTask.d.ts.map +1 -0
  28. package/dist/task/index.d.ts +7 -1
  29. package/dist/task/index.d.ts.map +1 -1
  30. package/package.json +9 -9
  31. package/dist/task/TextClassifierTask.d.ts.map +0 -1
package/dist/browser.js CHANGED
@@ -446,6 +446,249 @@ class DocumentConverterText extends DocumentConverter {
446
446
  return new Document(this.text, this.metadata);
447
447
  }
448
448
  }
449
+ // src/task/BackgroundRemovalTask.ts
450
+ import { CreateWorkflow, TaskRegistry, Workflow } from "@workglow/task-graph";
451
+
452
+ // src/task/base/AiTaskSchemas.ts
453
+ import {
454
+ FromSchemaDefaultOptions
455
+ } from "@workglow/util";
456
+ var TypedArrayType = null;
457
+ var TypedArraySchemaOptions = {
458
+ ...FromSchemaDefaultOptions,
459
+ deserialize: [
460
+ {
461
+ pattern: { format: "TypedArray" },
462
+ output: TypedArrayType
463
+ }
464
+ ]
465
+ };
466
+ var TypedArraySchema = (annotations = {}) => ({
467
+ oneOf: [
468
+ {
469
+ type: "array",
470
+ items: { type: "number", format: "Float64" },
471
+ title: "Float64Array",
472
+ description: "A 64-bit floating point array",
473
+ format: "Float64Array"
474
+ },
475
+ {
476
+ type: "array",
477
+ items: { type: "number", format: "Float32" },
478
+ title: "Float32Array",
479
+ description: "A 32-bit floating point array",
480
+ format: "Float32Array"
481
+ },
482
+ {
483
+ type: "array",
484
+ items: { type: "number", format: "Int32" },
485
+ title: "Int32Array",
486
+ description: "A 32-bit integer array",
487
+ format: "Int32Array"
488
+ },
489
+ {
490
+ type: "array",
491
+ items: { type: "number", format: "Int16" },
492
+ title: "Int16Array",
493
+ description: "A 16-bit integer array",
494
+ format: "Int16Array"
495
+ },
496
+ {
497
+ type: "array",
498
+ items: { type: "number", format: "Int8" },
499
+ title: "Int8Array"
500
+ },
501
+ {
502
+ type: "array",
503
+ items: { type: "number", format: "Uint8" },
504
+ title: "Uint8Array",
505
+ description: "A 8-bit unsigned integer array",
506
+ format: "Uint8Array"
507
+ },
508
+ {
509
+ type: "array",
510
+ items: { type: "number", format: "Uint16" },
511
+ title: "Uint16Array",
512
+ description: "A 16-bit unsigned integer array",
513
+ format: "Uint16Array"
514
+ },
515
+ {
516
+ type: "array",
517
+ items: { type: "number", format: "Uint32" },
518
+ title: "Uint32Array",
519
+ description: "A 32-bit unsigned integer array",
520
+ format: "Uint32Array"
521
+ },
522
+ {
523
+ type: "array",
524
+ items: { type: "number", format: "Uint8Clamped" },
525
+ title: "Uint8ClampedArray",
526
+ description: "A 8-bit unsigned integer array with values clamped to 0-255",
527
+ format: "Uint8ClampedArray"
528
+ }
529
+ ],
530
+ format: "TypedArray",
531
+ ...annotations
532
+ });
533
+ var TypeLanguage = (annotations = {}) => ({
534
+ type: "string",
535
+ title: "Language",
536
+ description: "The language to use",
537
+ maxLength: 2,
538
+ minLength: 2,
539
+ ...annotations
540
+ });
541
+ function TypeModelAsString(semantic = "model", options = {}) {
542
+ if (semantic !== "model" && !semantic.startsWith("model:")) {
543
+ throw new Error("Invalid semantic value");
544
+ }
545
+ const taskName = semantic.startsWith("model:") ? semantic.slice(6).replace(/Task$/, "").replaceAll(/[A-Z]/g, (char) => " " + char.toLowerCase()).trim() : null;
546
+ return {
547
+ title: "Model",
548
+ description: `The model ${taskName ? `for ${taskName} ` : "to use"}`,
549
+ ...options,
550
+ format: semantic,
551
+ type: "string"
552
+ };
553
+ }
554
+ function TypeModelByDetail(semantic = "model", options = {}) {
555
+ if (semantic !== "model" && !semantic.startsWith("model:")) {
556
+ throw new Error("Invalid semantic value");
557
+ }
558
+ return {
559
+ ...ModelSchema,
560
+ ...options,
561
+ format: semantic
562
+ };
563
+ }
564
+ function TypeModel(semantic = "model", options = {}) {
565
+ return {
566
+ oneOf: [TypeModelAsString(semantic, options), TypeModelByDetail(semantic, options)],
567
+ ...options,
568
+ format: semantic
569
+ };
570
+ }
571
+ var TypeReplicateArray = (type, annotations = {}) => ({
572
+ oneOf: [type, { type: "array", items: type }],
573
+ title: type.title,
574
+ description: type.description,
575
+ ...type.format ? { format: type.format } : {},
576
+ ...annotations,
577
+ "x-replicate": true
578
+ });
579
+ var TypeImageInput = {
580
+ oneOf: [
581
+ {
582
+ type: "string",
583
+ title: "Image Data",
584
+ description: "Image as data-uri"
585
+ },
586
+ {
587
+ type: "object",
588
+ additionalProperties: false,
589
+ properties: {
590
+ data: {
591
+ oneOf: [
592
+ {
593
+ type: "object",
594
+ format: "image:ImageBitmap",
595
+ title: "ImageBitmap"
596
+ },
597
+ {
598
+ type: "object",
599
+ format: "image:OffscreenCanvas",
600
+ title: "OffscreenCanvas"
601
+ },
602
+ {
603
+ type: "object",
604
+ format: "image:VideoFrame",
605
+ title: "VideoFrame"
606
+ },
607
+ {
608
+ type: "object",
609
+ properties: {
610
+ data: {
611
+ type: "array",
612
+ items: { type: "number", format: "Uint8Clamped" },
613
+ format: "Uint8ClampedArray",
614
+ title: "Data",
615
+ description: "Data of the image"
616
+ },
617
+ width: { type: "number", title: "Width", description: "Width of the image" },
618
+ height: { type: "number", title: "Height", description: "Height of the image" },
619
+ channels: {
620
+ type: "number",
621
+ title: "Channels",
622
+ description: "Channels of the image"
623
+ },
624
+ rawChannels: {
625
+ type: "number",
626
+ title: "Raw Channels",
627
+ description: "Raw channels of the image"
628
+ }
629
+ },
630
+ additionalProperties: false,
631
+ required: ["data", "width", "height", "channels"],
632
+ format: "image:ImageBinary",
633
+ title: "ImageBinary"
634
+ }
635
+ ]
636
+ },
637
+ width: { type: "number", title: "Width", description: "Width of the image" },
638
+ height: { type: "number", title: "Height", description: "Height of the image" },
639
+ channels: {
640
+ type: "number",
641
+ title: "Channels",
642
+ description: "Channels of the image",
643
+ minimum: 1,
644
+ maximum: 4
645
+ }
646
+ },
647
+ required: ["data", "width", "height", "channels"]
648
+ }
649
+ ],
650
+ title: "Image",
651
+ description: "Image as URL or base64-encoded data"
652
+ };
653
+ var TypeAudioInput = {
654
+ type: "string",
655
+ title: "Audio",
656
+ description: "Audio as data-uri, or Blob"
657
+ };
658
+ var TypeBoundingBox = {
659
+ type: "object",
660
+ properties: {
661
+ x: { type: "number", title: "X coordinate", description: "Left edge of the bounding box" },
662
+ y: { type: "number", title: "Y coordinate", description: "Top edge of the bounding box" },
663
+ width: { type: "number", title: "Width", description: "Width of the bounding box" },
664
+ height: { type: "number", title: "Height", description: "Height of the bounding box" }
665
+ },
666
+ required: ["x", "y", "width", "height"],
667
+ additionalProperties: false,
668
+ title: "Bounding Box",
669
+ description: "Bounding box coordinates"
670
+ };
671
+ var TypeCategory = {
672
+ type: "object",
673
+ properties: {
674
+ label: { type: "string", title: "Label", description: "Category label" },
675
+ score: {
676
+ type: "number",
677
+ title: "Confidence Score",
678
+ description: "Confidence score between 0 and 1",
679
+ minimum: 0,
680
+ maximum: 1
681
+ }
682
+ },
683
+ required: ["label", "score"],
684
+ additionalProperties: false,
685
+ title: "Category",
686
+ description: "Classification category with label and score"
687
+ };
688
+
689
+ // src/task/base/AiVisionTask.ts
690
+ import { convertImageDataToUseableForm } from "@workglow/util";
691
+
449
692
  // src/task/base/AiTask.ts
450
693
  import {
451
694
  JobQueueTask,
@@ -565,139 +808,84 @@ class AiTask extends JobQueueTask {
565
808
  return input;
566
809
  }
567
810
  }
568
- // src/task/base/AiTaskSchemas.ts
569
- import {
570
- FromSchemaDefaultOptions
571
- } from "@workglow/util";
572
- var TypedArrayType = null;
573
- var TypedArraySchemaOptions = {
574
- ...FromSchemaDefaultOptions,
575
- deserialize: [
576
- {
577
- pattern: { format: "TypedArray" },
578
- output: TypedArrayType
579
- }
580
- ]
581
- };
582
- var TypedArraySchema = (annotations = {}) => ({
583
- oneOf: [
584
- {
585
- type: "array",
586
- items: { type: "number", format: "Float64" },
587
- title: "Float64Array",
588
- description: "A 64-bit floating point array",
589
- format: "Float64Array"
590
- },
591
- {
592
- type: "array",
593
- items: { type: "number", format: "Float32" },
594
- title: "Float32Array",
595
- description: "A 32-bit floating point array",
596
- format: "Float32Array"
597
- },
598
- {
599
- type: "array",
600
- items: { type: "number", format: "Int32" },
601
- title: "Int32Array",
602
- description: "A 32-bit integer array",
603
- format: "Int32Array"
604
- },
605
- {
606
- type: "array",
607
- items: { type: "number", format: "Int16" },
608
- title: "Int16Array",
609
- description: "A 16-bit integer array",
610
- format: "Int16Array"
611
- },
612
- {
613
- type: "array",
614
- items: { type: "number", format: "Int8" },
615
- title: "Int8Array"
616
- },
617
- {
618
- type: "array",
619
- items: { type: "number", format: "Uint8" },
620
- title: "Uint8Array",
621
- description: "A 8-bit unsigned integer array",
622
- format: "Uint8Array"
623
- },
624
- {
625
- type: "array",
626
- items: { type: "number", format: "Uint16" },
627
- title: "Uint16Array",
628
- description: "A 16-bit unsigned integer array",
629
- format: "Uint16Array"
630
- },
631
- {
632
- type: "array",
633
- items: { type: "number", format: "Uint32" },
634
- title: "Uint32Array",
635
- description: "A 32-bit unsigned integer array",
636
- format: "Uint32Array"
637
- },
638
- {
639
- type: "array",
640
- items: { type: "number", format: "Uint8Clamped" },
641
- title: "Uint8ClampedArray",
642
- description: "A 8-bit unsigned integer array with values clamped to 0-255",
643
- format: "Uint8ClampedArray"
811
+
812
+ // src/task/base/AiVisionTask.ts
813
+ class AiVisionTask extends AiTask {
814
+ static type = "AiVisionTask";
815
+ async getJobInput(input) {
816
+ const jobInput = await super.getJobInput(input);
817
+ const registeredQueue = await this.resolveQueue(input);
818
+ const queueName = registeredQueue?.server.queueName;
819
+ const supports = ["Blob"];
820
+ if (input.image) {
821
+ if ("OffscreenCanvas" in globalThis) {
822
+ supports.push("OffscreenCanvas");
823
+ } else if (queueName === "TENSORFLOW_MEDIAPIPE" && "ImageBitmap" in globalThis) {
824
+ supports.push("ImageBitmap");
825
+ } else if (queueName === "TENSORFLOW_MEDIAPIPE" && "VideoFrame" in globalThis) {
826
+ supports.push("VideoFrame");
827
+ }
828
+ const image = await convertImageDataToUseableForm(input.image, supports);
829
+ jobInput.taskInput.image = image;
644
830
  }
645
- ],
646
- format: "TypedArray",
647
- ...annotations
648
- });
649
- var TypeLanguage = (annotations = {}) => ({
650
- type: "string",
651
- title: "Language",
652
- description: "The language to use",
653
- maxLength: 2,
654
- minLength: 2,
655
- ...annotations
656
- });
657
- function TypeModelAsString(semantic = "model", options = {}) {
658
- if (semantic !== "model" && !semantic.startsWith("model:")) {
659
- throw new Error("Invalid semantic value");
831
+ return jobInput;
660
832
  }
661
- const taskName = semantic.startsWith("model:") ? semantic.slice(6).replace(/Task$/, "").replaceAll(/[A-Z]/g, (char) => " " + char.toLowerCase()).trim() : null;
662
- return {
663
- title: "Model",
664
- description: `The model ${taskName ? `for ${taskName} ` : "to use"}`,
665
- ...options,
666
- format: semantic,
667
- type: "string"
668
- };
669
833
  }
670
- function TypeModelByDetail(semantic = "model", options = {}) {
671
- if (semantic !== "model" && !semantic.startsWith("model:")) {
672
- throw new Error("Invalid semantic value");
834
+
835
+ // src/task/BackgroundRemovalTask.ts
836
+ var modelSchema = TypeReplicateArray(TypeModel("model:BackgroundRemovalTask"));
837
+ var processedImageSchema = {
838
+ type: "string",
839
+ contentEncoding: "base64",
840
+ contentMediaType: "image/png",
841
+ title: "Image",
842
+ description: "Base64-encoded PNG image with transparent background"
843
+ };
844
+ var BackgroundRemovalInputSchema = {
845
+ type: "object",
846
+ properties: {
847
+ image: TypeReplicateArray(TypeImageInput),
848
+ model: modelSchema
849
+ },
850
+ required: ["image", "model"],
851
+ additionalProperties: false
852
+ };
853
+ var BackgroundRemovalOutputSchema = {
854
+ type: "object",
855
+ properties: {
856
+ image: {
857
+ oneOf: [processedImageSchema, { type: "array", items: processedImageSchema }],
858
+ title: processedImageSchema.title,
859
+ description: processedImageSchema.description
860
+ }
861
+ },
862
+ required: ["image"],
863
+ additionalProperties: false
864
+ };
865
+
866
+ class BackgroundRemovalTask extends AiVisionTask {
867
+ static type = "BackgroundRemovalTask";
868
+ static category = "AI Vision Model";
869
+ static title = "Background Removal";
870
+ static description = "Removes backgrounds from images, producing images with transparent backgrounds";
871
+ static inputSchema() {
872
+ return BackgroundRemovalInputSchema;
873
+ }
874
+ static outputSchema() {
875
+ return BackgroundRemovalOutputSchema;
673
876
  }
674
- return {
675
- ...ModelSchema,
676
- ...options,
677
- format: semantic
678
- };
679
- }
680
- function TypeModel(semantic = "model", options = {}) {
681
- return {
682
- oneOf: [TypeModelAsString(semantic, options), TypeModelByDetail(semantic, options)],
683
- ...options,
684
- format: semantic
685
- };
686
877
  }
687
- var TypeReplicateArray = (type, annotations = {}) => ({
688
- oneOf: [type, { type: "array", items: type }],
689
- title: type.title,
690
- description: type.description,
691
- ...type.format ? { format: type.format } : {},
692
- ...annotations,
693
- "x-replicate": true
694
- });
878
+ TaskRegistry.registerTask(BackgroundRemovalTask);
879
+ var BackgroundRemoval = (input, config) => {
880
+ return new BackgroundRemovalTask(input, config).run();
881
+ };
882
+ Workflow.prototype.BackgroundRemoval = CreateWorkflow(BackgroundRemovalTask);
695
883
  // src/task/DocumentSplitterTask.ts
696
884
  import {
697
- CreateWorkflow,
885
+ CreateWorkflow as CreateWorkflow2,
698
886
  Task,
699
- TaskRegistry,
700
- Workflow
887
+ TaskRegistry as TaskRegistry2,
888
+ Workflow as Workflow2
701
889
  } from "@workglow/task-graph";
702
890
  var inputSchema = {
703
891
  type: "object",
@@ -752,18 +940,18 @@ class DocumentSplitterTask extends Task {
752
940
  return { texts: this.flattenFragmentsToTexts(this.runInputData.file) };
753
941
  }
754
942
  }
755
- TaskRegistry.registerTask(DocumentSplitterTask);
943
+ TaskRegistry2.registerTask(DocumentSplitterTask);
756
944
  var DocumentSplitter = (input) => {
757
945
  return new DocumentSplitterTask(input).run();
758
946
  };
759
- Workflow.prototype.DocumentSplitter = CreateWorkflow(DocumentSplitterTask);
947
+ Workflow2.prototype.DocumentSplitter = CreateWorkflow2(DocumentSplitterTask);
760
948
  // src/task/DownloadModelTask.ts
761
- import { CreateWorkflow as CreateWorkflow2, TaskRegistry as TaskRegistry2, Workflow as Workflow2 } from "@workglow/task-graph";
762
- var modelSchema = TypeReplicateArray(TypeModel("model"));
949
+ import { CreateWorkflow as CreateWorkflow3, TaskRegistry as TaskRegistry3, Workflow as Workflow3 } from "@workglow/task-graph";
950
+ var modelSchema2 = TypeReplicateArray(TypeModel("model"));
763
951
  var DownloadModelInputSchema = {
764
952
  type: "object",
765
953
  properties: {
766
- model: modelSchema
954
+ model: modelSchema2
767
955
  },
768
956
  required: ["model"],
769
957
  additionalProperties: false
@@ -771,7 +959,7 @@ var DownloadModelInputSchema = {
771
959
  var DownloadModelOutputSchema = {
772
960
  type: "object",
773
961
  properties: {
774
- model: modelSchema
962
+ model: modelSchema2
775
963
  },
776
964
  required: ["model"],
777
965
  additionalProperties: false
@@ -811,15 +999,350 @@ class DownloadModelTask extends AiTask {
811
999
  }
812
1000
  }
813
1001
  }
814
- TaskRegistry2.registerTask(DownloadModelTask);
1002
+ TaskRegistry3.registerTask(DownloadModelTask);
815
1003
  var DownloadModel = (input, config) => {
816
1004
  return new DownloadModelTask(input, config).run();
817
1005
  };
818
- Workflow2.prototype.DownloadModel = CreateWorkflow2(DownloadModelTask);
819
- // src/task/TextClassifierTask.ts
820
- import { CreateWorkflow as CreateWorkflow3, TaskRegistry as TaskRegistry3, Workflow as Workflow3 } from "@workglow/task-graph";
821
- var modelSchema2 = TypeReplicateArray(TypeModel("model:TextClassifierTask"));
822
- var TextClassifierInputSchema = {
1006
+ Workflow3.prototype.DownloadModel = CreateWorkflow3(DownloadModelTask);
1007
+ // src/task/ImageClassificationTask.ts
1008
+ import { CreateWorkflow as CreateWorkflow4, TaskRegistry as TaskRegistry4, Workflow as Workflow4 } from "@workglow/task-graph";
1009
+ var modelSchema3 = TypeReplicateArray(TypeModel("model:ImageClassificationTask"));
1010
+ var ImageClassificationInputSchema = {
1011
+ type: "object",
1012
+ properties: {
1013
+ image: TypeReplicateArray(TypeImageInput),
1014
+ model: modelSchema3,
1015
+ categories: {
1016
+ type: "array",
1017
+ items: {
1018
+ type: "string"
1019
+ },
1020
+ title: "Categories",
1021
+ description: "List of candidate categories (optional, if provided uses zero-shot classification)",
1022
+ "x-ui-group": "Configuration"
1023
+ },
1024
+ maxCategories: {
1025
+ type: "number",
1026
+ minimum: 1,
1027
+ maximum: 1000,
1028
+ default: 5,
1029
+ title: "Max Categories",
1030
+ description: "The maximum number of categories to return",
1031
+ "x-ui-group": "Configuration"
1032
+ }
1033
+ },
1034
+ required: ["image", "model"],
1035
+ additionalProperties: false
1036
+ };
1037
+ var ImageClassificationOutputSchema = {
1038
+ type: "object",
1039
+ properties: {
1040
+ categories: {
1041
+ oneOf: [
1042
+ { type: "array", items: TypeCategory },
1043
+ { type: "array", items: { type: "array", items: TypeCategory } }
1044
+ ],
1045
+ title: "Categories",
1046
+ description: "The classification categories with their scores"
1047
+ }
1048
+ },
1049
+ required: ["categories"],
1050
+ additionalProperties: false
1051
+ };
1052
+
1053
+ class ImageClassificationTask extends AiVisionTask {
1054
+ static type = "ImageClassificationTask";
1055
+ static category = "AI Vision Model";
1056
+ static title = "Image Classification";
1057
+ static description = "Classifies images into categories using vision models. Supports zero-shot classification when categories are provided.";
1058
+ static inputSchema() {
1059
+ return ImageClassificationInputSchema;
1060
+ }
1061
+ static outputSchema() {
1062
+ return ImageClassificationOutputSchema;
1063
+ }
1064
+ }
1065
+ TaskRegistry4.registerTask(ImageClassificationTask);
1066
+ var ImageClassification = (input, config) => {
1067
+ return new ImageClassificationTask(input, config).run();
1068
+ };
1069
+ Workflow4.prototype.ImageClassification = CreateWorkflow4(ImageClassificationTask);
1070
+ // src/task/ImageEmbeddingTask.ts
1071
+ import { CreateWorkflow as CreateWorkflow5, TaskRegistry as TaskRegistry5, Workflow as Workflow5 } from "@workglow/task-graph";
1072
+ var modelSchema4 = TypeReplicateArray(TypeModel("model:ImageEmbeddingTask"));
1073
+ var embeddingSchema = TypedArraySchema({
1074
+ title: "Embedding",
1075
+ description: "The image embedding vector"
1076
+ });
1077
+ var ImageEmbeddingInputSchema = {
1078
+ type: "object",
1079
+ properties: {
1080
+ image: TypeReplicateArray(TypeImageInput),
1081
+ model: modelSchema4
1082
+ },
1083
+ required: ["image", "model"],
1084
+ additionalProperties: false
1085
+ };
1086
+ var ImageEmbeddingOutputSchema = {
1087
+ type: "object",
1088
+ properties: {
1089
+ vector: {
1090
+ oneOf: [embeddingSchema, { type: "array", items: embeddingSchema }],
1091
+ title: "Embedding",
1092
+ description: "The image embedding vector"
1093
+ }
1094
+ },
1095
+ required: ["vector"],
1096
+ additionalProperties: false
1097
+ };
1098
+
1099
+ class ImageEmbeddingTask extends AiVisionTask {
1100
+ static type = "ImageEmbeddingTask";
1101
+ static category = "AI Vision Model";
1102
+ static title = "Image Embedding";
1103
+ static description = "Generates embeddings from images using vision models";
1104
+ static inputSchema() {
1105
+ return ImageEmbeddingInputSchema;
1106
+ }
1107
+ static outputSchema() {
1108
+ return ImageEmbeddingOutputSchema;
1109
+ }
1110
+ }
1111
+ TaskRegistry5.registerTask(ImageEmbeddingTask);
1112
+ var ImageEmbedding = (input, config) => {
1113
+ return new ImageEmbeddingTask(input, config).run();
1114
+ };
1115
+ Workflow5.prototype.ImageEmbedding = CreateWorkflow5(ImageEmbeddingTask);
1116
+ // src/task/ImageSegmentationTask.ts
1117
+ import { CreateWorkflow as CreateWorkflow6, TaskRegistry as TaskRegistry6, Workflow as Workflow6 } from "@workglow/task-graph";
1118
+ var modelSchema5 = TypeReplicateArray(TypeModel("model:ImageSegmentationTask"));
1119
+ var ImageSegmentationInputSchema = {
1120
+ type: "object",
1121
+ properties: {
1122
+ image: TypeReplicateArray(TypeImageInput),
1123
+ model: modelSchema5,
1124
+ threshold: {
1125
+ type: "number",
1126
+ title: "Threshold",
1127
+ description: "The threshold for filtering masks by score",
1128
+ minimum: 0,
1129
+ maximum: 1,
1130
+ default: 0.5,
1131
+ "x-ui-group": "Configuration"
1132
+ },
1133
+ maskThreshold: {
1134
+ type: "number",
1135
+ title: "Mask Threshold",
1136
+ description: "Threshold to use when turning predicted masks into binary values",
1137
+ minimum: 0,
1138
+ maximum: 1,
1139
+ default: 0.5,
1140
+ "x-ui-group": "Configuration"
1141
+ }
1142
+ },
1143
+ required: ["image", "model"],
1144
+ additionalProperties: false
1145
+ };
1146
+ var segmentationMaskSchema = {
1147
+ type: "object",
1148
+ properties: {
1149
+ label: {
1150
+ type: "string",
1151
+ title: "Label",
1152
+ description: "The label of the segmented region"
1153
+ },
1154
+ score: {
1155
+ type: "number",
1156
+ title: "Score",
1157
+ description: "The confidence score for this segmentation",
1158
+ minimum: 0,
1159
+ maximum: 1
1160
+ },
1161
+ mask: {
1162
+ type: "object",
1163
+ format: "image",
1164
+ title: "Mask",
1165
+ description: "Mask image"
1166
+ }
1167
+ },
1168
+ required: ["label", "score", "mask"],
1169
+ additionalProperties: false
1170
+ };
1171
+ var ImageSegmentationOutputSchema = {
1172
+ type: "object",
1173
+ properties: {
1174
+ masks: {
1175
+ oneOf: [
1176
+ { type: "array", items: segmentationMaskSchema },
1177
+ { type: "array", items: { type: "array", items: segmentationMaskSchema } }
1178
+ ],
1179
+ title: "Segmentation Masks",
1180
+ description: "The segmented regions with their labels, scores, and masks"
1181
+ }
1182
+ },
1183
+ required: ["masks"],
1184
+ additionalProperties: false
1185
+ };
1186
+
1187
+ class ImageSegmentationTask extends AiVisionTask {
1188
+ static type = "ImageSegmentationTask";
1189
+ static category = "AI Vision Model";
1190
+ static title = "Image Segmentation";
1191
+ static description = "Segments images into regions with labels using computer vision models";
1192
+ static inputSchema() {
1193
+ return ImageSegmentationInputSchema;
1194
+ }
1195
+ static outputSchema() {
1196
+ return ImageSegmentationOutputSchema;
1197
+ }
1198
+ }
1199
+ TaskRegistry6.registerTask(ImageSegmentationTask);
1200
+ var ImageSegmentation = (input, config) => {
1201
+ return new ImageSegmentationTask(input, config).run();
1202
+ };
1203
+ Workflow6.prototype.ImageSegmentation = CreateWorkflow6(ImageSegmentationTask);
1204
+ // src/task/ImageToTextTask.ts
1205
+ import { CreateWorkflow as CreateWorkflow7, TaskRegistry as TaskRegistry7, Workflow as Workflow7 } from "@workglow/task-graph";
1206
+ var modelSchema6 = TypeReplicateArray(TypeModel("model:ImageToTextTask"));
1207
+ var generatedTextSchema = {
1208
+ type: "string",
1209
+ title: "Text",
1210
+ description: "The generated text description"
1211
+ };
1212
+ var ImageToTextInputSchema = {
1213
+ type: "object",
1214
+ properties: {
1215
+ image: TypeReplicateArray(TypeImageInput),
1216
+ model: modelSchema6,
1217
+ maxTokens: {
1218
+ type: "number",
1219
+ title: "Max Tokens",
1220
+ description: "The maximum number of tokens to generate",
1221
+ minimum: 1,
1222
+ maximum: 4096,
1223
+ "x-ui-group": "Configuration"
1224
+ }
1225
+ },
1226
+ required: ["image", "model"],
1227
+ additionalProperties: false
1228
+ };
1229
+ var ImageToTextOutputSchema = {
1230
+ type: "object",
1231
+ properties: {
1232
+ text: {
1233
+ oneOf: [generatedTextSchema, { type: "array", items: generatedTextSchema }],
1234
+ title: generatedTextSchema.title,
1235
+ description: generatedTextSchema.description
1236
+ }
1237
+ },
1238
+ required: ["text"],
1239
+ additionalProperties: false
1240
+ };
1241
+
1242
+ class ImageToTextTask extends AiVisionTask {
1243
+ static type = "ImageToTextTask";
1244
+ static category = "AI Vision Model";
1245
+ static title = "Image to Text";
1246
+ static description = "Generates text descriptions from images using vision-language models";
1247
+ static inputSchema() {
1248
+ return ImageToTextInputSchema;
1249
+ }
1250
+ static outputSchema() {
1251
+ return ImageToTextOutputSchema;
1252
+ }
1253
+ }
1254
+ TaskRegistry7.registerTask(ImageToTextTask);
1255
+ var ImageToText = (input, config) => {
1256
+ return new ImageToTextTask(input, config).run();
1257
+ };
1258
+ Workflow7.prototype.ImageToText = CreateWorkflow7(ImageToTextTask);
1259
+ // src/task/ObjectDetectionTask.ts
1260
+ import { CreateWorkflow as CreateWorkflow8, TaskRegistry as TaskRegistry8, Workflow as Workflow8 } from "@workglow/task-graph";
1261
+ var modelSchema7 = TypeReplicateArray(TypeModel("model:ObjectDetectionTask"));
1262
+ var detectionSchema = {
1263
+ type: "object",
1264
+ properties: {
1265
+ label: {
1266
+ type: "string",
1267
+ title: "Label",
1268
+ description: "The label of the detected object"
1269
+ },
1270
+ score: {
1271
+ type: "number",
1272
+ title: "Confidence Score",
1273
+ description: "The confidence score for this detection",
1274
+ minimum: 0,
1275
+ maximum: 1
1276
+ },
1277
+ box: TypeBoundingBox
1278
+ },
1279
+ required: ["label", "score", "box"],
1280
+ additionalProperties: false
1281
+ };
1282
+ var ObjectDetectionInputSchema = {
1283
+ type: "object",
1284
+ properties: {
1285
+ image: TypeReplicateArray(TypeImageInput),
1286
+ model: modelSchema7,
1287
+ labels: {
1288
+ type: "array",
1289
+ items: {
1290
+ type: "string"
1291
+ },
1292
+ title: "Labels",
1293
+ description: "List of object labels to detect (optional, if provided uses zero-shot detection)",
1294
+ "x-ui-group": "Configuration"
1295
+ },
1296
+ threshold: {
1297
+ type: "number",
1298
+ title: "Threshold",
1299
+ description: "The threshold for filtering detections by score",
1300
+ minimum: 0,
1301
+ maximum: 1,
1302
+ default: 0.5,
1303
+ "x-ui-group": "Configuration"
1304
+ }
1305
+ },
1306
+ required: ["image", "model"],
1307
+ additionalProperties: false
1308
+ };
1309
+ var ObjectDetectionOutputSchema = {
1310
+ type: "object",
1311
+ properties: {
1312
+ detections: {
1313
+ oneOf: [
1314
+ { type: "array", items: detectionSchema },
1315
+ { type: "array", items: { type: "array", items: detectionSchema } }
1316
+ ],
1317
+ title: "Detections",
1318
+ description: "The detected objects with their labels, scores, and bounding boxes"
1319
+ }
1320
+ },
1321
+ required: ["detections"],
1322
+ additionalProperties: false
1323
+ };
1324
+
1325
+ class ObjectDetectionTask extends AiVisionTask {
1326
+ static type = "ObjectDetectionTask";
1327
+ static category = "AI Vision Model";
1328
+ static title = "Object Detection";
1329
+ static description = "Detects objects in images using vision models. Supports zero-shot detection when labels are provided.";
1330
+ static inputSchema() {
1331
+ return ObjectDetectionInputSchema;
1332
+ }
1333
+ static outputSchema() {
1334
+ return ObjectDetectionOutputSchema;
1335
+ }
1336
+ }
1337
+ TaskRegistry8.registerTask(ObjectDetectionTask);
1338
+ var ObjectDetection = (input, config) => {
1339
+ return new ObjectDetectionTask(input, config).run();
1340
+ };
1341
+ Workflow8.prototype.ObjectDetection = CreateWorkflow8(ObjectDetectionTask);
1342
+ // src/task/TextClassificationTask.ts
1343
+ import { CreateWorkflow as CreateWorkflow9, TaskRegistry as TaskRegistry9, Workflow as Workflow9 } from "@workglow/task-graph";
1344
+ var modelSchema8 = TypeReplicateArray(TypeModel("model:TextClassificationTask"));
1345
+ var TextClassificationInputSchema = {
823
1346
  type: "object",
824
1347
  properties: {
825
1348
  text: TypeReplicateArray({
@@ -827,20 +1350,30 @@ var TextClassifierInputSchema = {
827
1350
  title: "Text",
828
1351
  description: "The text to classify"
829
1352
  }),
1353
+ candidateLabels: {
1354
+ type: "array",
1355
+ items: {
1356
+ type: "string"
1357
+ },
1358
+ title: "Candidate Labels",
1359
+ description: "List of candidate labels (optional, if provided uses zero-shot classification)",
1360
+ "x-ui-group": "Configuration"
1361
+ },
830
1362
  maxCategories: {
831
1363
  type: "number",
832
1364
  minimum: 1,
833
1365
  maximum: 1000,
834
1366
  default: 5,
835
1367
  title: "Max Categories",
836
- description: "The maximum number of categories to return"
1368
+ description: "The maximum number of categories to return",
1369
+ "x-ui-group": "Configuration"
837
1370
  },
838
- model: modelSchema2
1371
+ model: modelSchema8
839
1372
  },
840
1373
  required: ["text", "model"],
841
1374
  additionalProperties: false
842
1375
  };
843
- var TextClassifierOutputSchema = {
1376
+ var TextClassificationOutputSchema = {
844
1377
  type: "object",
845
1378
  properties: {
846
1379
  categories: {
@@ -870,26 +1403,26 @@ var TextClassifierOutputSchema = {
870
1403
  additionalProperties: false
871
1404
  };
872
1405
 
873
- class TextClassifierTask extends AiTask {
874
- static type = "TextClassifierTask";
1406
+ class TextClassificationTask extends AiTask {
1407
+ static type = "TextClassificationTask";
875
1408
  static category = "AI Text Model";
876
1409
  static title = "Text Classifier";
877
- static description = "Classifies text into predefined categories using language models";
1410
+ static description = "Classifies text into categories using language models. Supports zero-shot classification when candidate labels are provided.";
878
1411
  static inputSchema() {
879
- return TextClassifierInputSchema;
1412
+ return TextClassificationInputSchema;
880
1413
  }
881
1414
  static outputSchema() {
882
- return TextClassifierOutputSchema;
1415
+ return TextClassificationOutputSchema;
883
1416
  }
884
1417
  }
885
- TaskRegistry3.registerTask(TextClassifierTask);
886
- var TextClassifier = (input, config) => {
887
- return new TextClassifierTask(input, config).run();
1418
+ TaskRegistry9.registerTask(TextClassificationTask);
1419
+ var TextClassification = (input, config) => {
1420
+ return new TextClassificationTask(input, config).run();
888
1421
  };
889
- Workflow3.prototype.TextClassifier = CreateWorkflow3(TextClassifierTask);
1422
+ Workflow9.prototype.TextClassification = CreateWorkflow9(TextClassificationTask);
890
1423
  // src/task/TextEmbeddingTask.ts
891
- import { CreateWorkflow as CreateWorkflow4, TaskRegistry as TaskRegistry4, Workflow as Workflow4 } from "@workglow/task-graph";
892
- var modelSchema3 = TypeReplicateArray(TypeModel("model:TextEmbeddingTask"));
1424
+ import { CreateWorkflow as CreateWorkflow10, TaskRegistry as TaskRegistry10, Workflow as Workflow10 } from "@workglow/task-graph";
1425
+ var modelSchema9 = TypeReplicateArray(TypeModel("model:TextEmbeddingTask"));
893
1426
  var TextEmbeddingInputSchema = {
894
1427
  type: "object",
895
1428
  properties: {
@@ -898,7 +1431,7 @@ var TextEmbeddingInputSchema = {
898
1431
  title: "Text",
899
1432
  description: "The text to embed"
900
1433
  }),
901
- model: modelSchema3
1434
+ model: modelSchema9
902
1435
  },
903
1436
  required: ["text", "model"],
904
1437
  additionalProperties: false
@@ -927,14 +1460,14 @@ class TextEmbeddingTask extends AiTask {
927
1460
  return TextEmbeddingOutputSchema;
928
1461
  }
929
1462
  }
930
- TaskRegistry4.registerTask(TextEmbeddingTask);
1463
+ TaskRegistry10.registerTask(TextEmbeddingTask);
931
1464
  var TextEmbedding = async (input, config) => {
932
1465
  return new TextEmbeddingTask(input, config).run();
933
1466
  };
934
- Workflow4.prototype.TextEmbedding = CreateWorkflow4(TextEmbeddingTask);
1467
+ Workflow10.prototype.TextEmbedding = CreateWorkflow10(TextEmbeddingTask);
935
1468
  // src/task/TextFillMaskTask.ts
936
- import { CreateWorkflow as CreateWorkflow5, TaskRegistry as TaskRegistry5, Workflow as Workflow5 } from "@workglow/task-graph";
937
- var modelSchema4 = TypeReplicateArray(TypeModel("model:TextFillMaskTask"));
1469
+ import { CreateWorkflow as CreateWorkflow11, TaskRegistry as TaskRegistry11, Workflow as Workflow11 } from "@workglow/task-graph";
1470
+ var modelSchema10 = TypeReplicateArray(TypeModel("model:TextFillMaskTask"));
938
1471
  var TextFillMaskInputSchema = {
939
1472
  type: "object",
940
1473
  properties: {
@@ -943,7 +1476,7 @@ var TextFillMaskInputSchema = {
943
1476
  title: "Text",
944
1477
  description: "The text with a mask token to fill"
945
1478
  }),
946
- model: modelSchema4
1479
+ model: modelSchema10
947
1480
  },
948
1481
  required: ["text", "model"],
949
1482
  additionalProperties: false
@@ -986,8 +1519,8 @@ var TextFillMaskOutputSchema = {
986
1519
  class TextFillMaskTask extends AiTask {
987
1520
  static type = "TextFillMaskTask";
988
1521
  static category = "AI Text Model";
989
- static title = "Text Fill Mask";
990
- static description = "Fills masked tokens in text using language models";
1522
+ static title = "Fill Mask";
1523
+ static description = "Fills masked tokens in text";
991
1524
  static inputSchema() {
992
1525
  return TextFillMaskInputSchema;
993
1526
  }
@@ -995,23 +1528,23 @@ class TextFillMaskTask extends AiTask {
995
1528
  return TextFillMaskOutputSchema;
996
1529
  }
997
1530
  }
998
- TaskRegistry5.registerTask(TextFillMaskTask);
1531
+ TaskRegistry11.registerTask(TextFillMaskTask);
999
1532
  var TextFillMask = (input, config) => {
1000
1533
  return new TextFillMaskTask(input, config).run();
1001
1534
  };
1002
- Workflow5.prototype.TextFillMask = CreateWorkflow5(TextFillMaskTask);
1535
+ Workflow11.prototype.TextFillMask = CreateWorkflow11(TextFillMaskTask);
1003
1536
  // src/task/TextGenerationTask.ts
1004
- import { CreateWorkflow as CreateWorkflow6, TaskRegistry as TaskRegistry6, Workflow as Workflow6 } from "@workglow/task-graph";
1005
- var generatedTextSchema = {
1537
+ import { CreateWorkflow as CreateWorkflow12, TaskRegistry as TaskRegistry12, Workflow as Workflow12 } from "@workglow/task-graph";
1538
+ var generatedTextSchema2 = {
1006
1539
  type: "string",
1007
1540
  title: "Text",
1008
1541
  description: "The generated text"
1009
1542
  };
1010
- var modelSchema5 = TypeReplicateArray(TypeModel("model:TextGenerationTask"));
1543
+ var modelSchema11 = TypeReplicateArray(TypeModel("model:TextGenerationTask"));
1011
1544
  var TextGenerationInputSchema = {
1012
1545
  type: "object",
1013
1546
  properties: {
1014
- model: modelSchema5,
1547
+ model: modelSchema11,
1015
1548
  prompt: TypeReplicateArray({
1016
1549
  type: "string",
1017
1550
  title: "Prompt",
@@ -1065,9 +1598,9 @@ var TextGenerationOutputSchema = {
1065
1598
  type: "object",
1066
1599
  properties: {
1067
1600
  text: {
1068
- oneOf: [generatedTextSchema, { type: "array", items: generatedTextSchema }],
1069
- title: generatedTextSchema.title,
1070
- description: generatedTextSchema.description
1601
+ oneOf: [generatedTextSchema2, { type: "array", items: generatedTextSchema2 }],
1602
+ title: generatedTextSchema2.title,
1603
+ description: generatedTextSchema2.description
1071
1604
  }
1072
1605
  },
1073
1606
  required: ["text"],
@@ -1086,14 +1619,14 @@ class TextGenerationTask extends AiTask {
1086
1619
  return TextGenerationOutputSchema;
1087
1620
  }
1088
1621
  }
1089
- TaskRegistry6.registerTask(TextGenerationTask);
1622
+ TaskRegistry12.registerTask(TextGenerationTask);
1090
1623
  var TextGeneration = (input, config) => {
1091
1624
  return new TextGenerationTask(input, config).run();
1092
1625
  };
1093
- Workflow6.prototype.TextGeneration = CreateWorkflow6(TextGenerationTask);
1626
+ Workflow12.prototype.TextGeneration = CreateWorkflow12(TextGenerationTask);
1094
1627
  // src/task/TextLanguageDetectionTask.ts
1095
- import { CreateWorkflow as CreateWorkflow7, TaskRegistry as TaskRegistry7, Workflow as Workflow7 } from "@workglow/task-graph";
1096
- var modelSchema6 = TypeReplicateArray(TypeModel("model:TextLanguageDetectionTask"));
1628
+ import { CreateWorkflow as CreateWorkflow13, TaskRegistry as TaskRegistry13, Workflow as Workflow13 } from "@workglow/task-graph";
1629
+ var modelSchema12 = TypeReplicateArray(TypeModel("model:TextLanguageDetectionTask"));
1097
1630
  var TextLanguageDetectionInputSchema = {
1098
1631
  type: "object",
1099
1632
  properties: {
@@ -1110,7 +1643,7 @@ var TextLanguageDetectionInputSchema = {
1110
1643
  title: "Max Languages",
1111
1644
  description: "The maximum number of languages to return"
1112
1645
  },
1113
- model: modelSchema6
1646
+ model: modelSchema12
1114
1647
  },
1115
1648
  required: ["text", "model"],
1116
1649
  additionalProperties: false
@@ -1157,14 +1690,14 @@ class TextLanguageDetectionTask extends AiTask {
1157
1690
  return TextLanguageDetectionOutputSchema;
1158
1691
  }
1159
1692
  }
1160
- TaskRegistry7.registerTask(TextLanguageDetectionTask);
1693
+ TaskRegistry13.registerTask(TextLanguageDetectionTask);
1161
1694
  var TextLanguageDetection = (input, config) => {
1162
1695
  return new TextLanguageDetectionTask(input, config).run();
1163
1696
  };
1164
- Workflow7.prototype.TextLanguageDetection = CreateWorkflow7(TextLanguageDetectionTask);
1697
+ Workflow13.prototype.TextLanguageDetection = CreateWorkflow13(TextLanguageDetectionTask);
1165
1698
  // src/task/TextNamedEntityRecognitionTask.ts
1166
- import { CreateWorkflow as CreateWorkflow8, TaskRegistry as TaskRegistry8, Workflow as Workflow8 } from "@workglow/task-graph";
1167
- var modelSchema7 = TypeReplicateArray(TypeModel("model:NamedEntityRecognitionTask"));
1699
+ import { CreateWorkflow as CreateWorkflow14, TaskRegistry as TaskRegistry14, Workflow as Workflow14 } from "@workglow/task-graph";
1700
+ var modelSchema13 = TypeReplicateArray(TypeModel("model:NamedEntityRecognitionTask"));
1168
1701
  var TextNamedEntityRecognitionInputSchema = {
1169
1702
  type: "object",
1170
1703
  properties: {
@@ -1183,7 +1716,7 @@ var TextNamedEntityRecognitionInputSchema = {
1183
1716
  "x-ui-group": "Configuration",
1184
1717
  "x-ui-group-open": false
1185
1718
  },
1186
- model: modelSchema7
1719
+ model: modelSchema13
1187
1720
  },
1188
1721
  required: ["text", "model"],
1189
1722
  additionalProperties: false
@@ -1226,8 +1759,8 @@ var TextNamedEntityRecognitionOutputSchema = {
1226
1759
  class TextNamedEntityRecognitionTask extends AiTask {
1227
1760
  static type = "TextNamedEntityRecognitionTask";
1228
1761
  static category = "AI Text Model";
1229
- static title = "Text Named Entity Recognition";
1230
- static description = "Extracts named entities from text using language models";
1762
+ static title = "Named Entity Recognition";
1763
+ static description = "Extracts named entities from text";
1231
1764
  static inputSchema() {
1232
1765
  return TextNamedEntityRecognitionInputSchema;
1233
1766
  }
@@ -1235,13 +1768,13 @@ class TextNamedEntityRecognitionTask extends AiTask {
1235
1768
  return TextNamedEntityRecognitionOutputSchema;
1236
1769
  }
1237
1770
  }
1238
- TaskRegistry8.registerTask(TextNamedEntityRecognitionTask);
1771
+ TaskRegistry14.registerTask(TextNamedEntityRecognitionTask);
1239
1772
  var TextNamedEntityRecognition = (input, config) => {
1240
1773
  return new TextNamedEntityRecognitionTask(input, config).run();
1241
1774
  };
1242
- Workflow8.prototype.TextNamedEntityRecognition = CreateWorkflow8(TextNamedEntityRecognitionTask);
1775
+ Workflow14.prototype.TextNamedEntityRecognition = CreateWorkflow14(TextNamedEntityRecognitionTask);
1243
1776
  // src/task/TextQuestionAnswerTask.ts
1244
- import { CreateWorkflow as CreateWorkflow9, TaskRegistry as TaskRegistry9, Workflow as Workflow9 } from "@workglow/task-graph";
1777
+ import { CreateWorkflow as CreateWorkflow15, TaskRegistry as TaskRegistry15, Workflow as Workflow15 } from "@workglow/task-graph";
1245
1778
  var contextSchema = {
1246
1779
  type: "string",
1247
1780
  title: "Context",
@@ -1257,13 +1790,13 @@ var textSchema = {
1257
1790
  title: "Text",
1258
1791
  description: "The generated text"
1259
1792
  };
1260
- var modelSchema8 = TypeReplicateArray(TypeModel("model:TextQuestionAnswerTask"));
1793
+ var modelSchema14 = TypeReplicateArray(TypeModel("model:TextQuestionAnswerTask"));
1261
1794
  var TextQuestionAnswerInputSchema = {
1262
1795
  type: "object",
1263
1796
  properties: {
1264
1797
  context: TypeReplicateArray(contextSchema),
1265
1798
  question: TypeReplicateArray(questionSchema),
1266
- model: modelSchema8
1799
+ model: modelSchema14
1267
1800
  },
1268
1801
  required: ["context", "question", "model"],
1269
1802
  additionalProperties: false
@@ -1293,14 +1826,14 @@ class TextQuestionAnswerTask extends AiTask {
1293
1826
  return TextQuestionAnswerOutputSchema;
1294
1827
  }
1295
1828
  }
1296
- TaskRegistry9.registerTask(TextQuestionAnswerTask);
1829
+ TaskRegistry15.registerTask(TextQuestionAnswerTask);
1297
1830
  var TextQuestionAnswer = (input, config) => {
1298
1831
  return new TextQuestionAnswerTask(input, config).run();
1299
1832
  };
1300
- Workflow9.prototype.TextQuestionAnswer = CreateWorkflow9(TextQuestionAnswerTask);
1833
+ Workflow15.prototype.TextQuestionAnswer = CreateWorkflow15(TextQuestionAnswerTask);
1301
1834
  // src/task/TextRewriterTask.ts
1302
- import { CreateWorkflow as CreateWorkflow10, TaskRegistry as TaskRegistry10, Workflow as Workflow10 } from "@workglow/task-graph";
1303
- var modelSchema9 = TypeReplicateArray(TypeModel("model:TextRewriterTask"));
1835
+ import { CreateWorkflow as CreateWorkflow16, TaskRegistry as TaskRegistry16, Workflow as Workflow16 } from "@workglow/task-graph";
1836
+ var modelSchema15 = TypeReplicateArray(TypeModel("model:TextRewriterTask"));
1304
1837
  var TextRewriterInputSchema = {
1305
1838
  type: "object",
1306
1839
  properties: {
@@ -1314,7 +1847,7 @@ var TextRewriterInputSchema = {
1314
1847
  title: "Prompt",
1315
1848
  description: "The prompt to direct the rewriting"
1316
1849
  }),
1317
- model: modelSchema9
1850
+ model: modelSchema15
1318
1851
  },
1319
1852
  required: ["text", "prompt", "model"],
1320
1853
  additionalProperties: false
@@ -1344,14 +1877,14 @@ class TextRewriterTask extends AiTask {
1344
1877
  return TextRewriterOutputSchema;
1345
1878
  }
1346
1879
  }
1347
- TaskRegistry10.registerTask(TextRewriterTask);
1880
+ TaskRegistry16.registerTask(TextRewriterTask);
1348
1881
  var TextRewriter = (input, config) => {
1349
1882
  return new TextRewriterTask(input, config).run();
1350
1883
  };
1351
- Workflow10.prototype.TextRewriter = CreateWorkflow10(TextRewriterTask);
1884
+ Workflow16.prototype.TextRewriter = CreateWorkflow16(TextRewriterTask);
1352
1885
  // src/task/TextSummaryTask.ts
1353
- import { CreateWorkflow as CreateWorkflow11, TaskRegistry as TaskRegistry11, Workflow as Workflow11 } from "@workglow/task-graph";
1354
- var modelSchema10 = TypeReplicateArray(TypeModel("model:TextSummaryTask"));
1886
+ import { CreateWorkflow as CreateWorkflow17, TaskRegistry as TaskRegistry17, Workflow as Workflow17 } from "@workglow/task-graph";
1887
+ var modelSchema16 = TypeReplicateArray(TypeModel("model:TextSummaryTask"));
1355
1888
  var TextSummaryInputSchema = {
1356
1889
  type: "object",
1357
1890
  properties: {
@@ -1360,7 +1893,7 @@ var TextSummaryInputSchema = {
1360
1893
  title: "Text",
1361
1894
  description: "The text to summarize"
1362
1895
  }),
1363
- model: modelSchema10
1896
+ model: modelSchema16
1364
1897
  },
1365
1898
  required: ["text", "model"],
1366
1899
  additionalProperties: false
@@ -1390,14 +1923,14 @@ class TextSummaryTask extends AiTask {
1390
1923
  return TextSummaryOutputSchema;
1391
1924
  }
1392
1925
  }
1393
- TaskRegistry11.registerTask(TextSummaryTask);
1926
+ TaskRegistry17.registerTask(TextSummaryTask);
1394
1927
  var TextSummary = async (input, config) => {
1395
1928
  return new TextSummaryTask(input, config).run();
1396
1929
  };
1397
- Workflow11.prototype.TextSummary = CreateWorkflow11(TextSummaryTask);
1930
+ Workflow17.prototype.TextSummary = CreateWorkflow17(TextSummaryTask);
1398
1931
  // src/task/TextTranslationTask.ts
1399
- import { CreateWorkflow as CreateWorkflow12, TaskRegistry as TaskRegistry12, Workflow as Workflow12 } from "@workglow/task-graph";
1400
- var modelSchema11 = TypeReplicateArray(TypeModel("model:TextTranslationTask"));
1932
+ import { CreateWorkflow as CreateWorkflow18, TaskRegistry as TaskRegistry18, Workflow as Workflow18 } from "@workglow/task-graph";
1933
+ var modelSchema17 = TypeReplicateArray(TypeModel("model:TextTranslationTask"));
1401
1934
  var translationTextSchema = {
1402
1935
  type: "string",
1403
1936
  title: "Text",
@@ -1423,7 +1956,7 @@ var TextTranslationInputSchema = {
1423
1956
  minLength: 2,
1424
1957
  maxLength: 2
1425
1958
  })),
1426
- model: modelSchema11
1959
+ model: modelSchema17
1427
1960
  },
1428
1961
  required: ["text", "source_lang", "target_lang", "model"],
1429
1962
  additionalProperties: false
@@ -1459,18 +1992,18 @@ class TextTranslationTask extends AiTask {
1459
1992
  return TextTranslationOutputSchema;
1460
1993
  }
1461
1994
  }
1462
- TaskRegistry12.registerTask(TextTranslationTask);
1995
+ TaskRegistry18.registerTask(TextTranslationTask);
1463
1996
  var TextTranslation = (input, config) => {
1464
1997
  return new TextTranslationTask(input, config).run();
1465
1998
  };
1466
- Workflow12.prototype.TextTranslation = CreateWorkflow12(TextTranslationTask);
1999
+ Workflow18.prototype.TextTranslation = CreateWorkflow18(TextTranslationTask);
1467
2000
  // src/task/UnloadModelTask.ts
1468
- import { CreateWorkflow as CreateWorkflow13, TaskRegistry as TaskRegistry13, Workflow as Workflow13 } from "@workglow/task-graph";
1469
- var modelSchema12 = TypeReplicateArray(TypeModel("model"));
2001
+ import { CreateWorkflow as CreateWorkflow19, TaskRegistry as TaskRegistry19, Workflow as Workflow19 } from "@workglow/task-graph";
2002
+ var modelSchema18 = TypeReplicateArray(TypeModel("model"));
1470
2003
  var UnloadModelInputSchema = {
1471
2004
  type: "object",
1472
2005
  properties: {
1473
- model: modelSchema12
2006
+ model: modelSchema18
1474
2007
  },
1475
2008
  required: ["model"],
1476
2009
  additionalProperties: false
@@ -1478,7 +2011,7 @@ var UnloadModelInputSchema = {
1478
2011
  var UnloadModelOutputSchema = {
1479
2012
  type: "object",
1480
2013
  properties: {
1481
- model: modelSchema12
2014
+ model: modelSchema18
1482
2015
  },
1483
2016
  required: ["model"],
1484
2017
  additionalProperties: false
@@ -1497,18 +2030,18 @@ class UnloadModelTask extends AiTask {
1497
2030
  }
1498
2031
  static cacheable = false;
1499
2032
  }
1500
- TaskRegistry13.registerTask(UnloadModelTask);
2033
+ TaskRegistry19.registerTask(UnloadModelTask);
1501
2034
  var UnloadModel = (input, config) => {
1502
2035
  return new UnloadModelTask(input, config).run();
1503
2036
  };
1504
- Workflow13.prototype.UnloadModel = CreateWorkflow13(UnloadModelTask);
2037
+ Workflow19.prototype.UnloadModel = CreateWorkflow19(UnloadModelTask);
1505
2038
  // src/task/VectorSimilarityTask.ts
1506
2039
  import {
1507
2040
  ArrayTask,
1508
- CreateWorkflow as CreateWorkflow14,
2041
+ CreateWorkflow as CreateWorkflow20,
1509
2042
  TaskError,
1510
- TaskRegistry as TaskRegistry14,
1511
- Workflow as Workflow14
2043
+ TaskRegistry as TaskRegistry20,
2044
+ Workflow as Workflow20
1512
2045
  } from "@workglow/task-graph";
1513
2046
  var SimilarityFn = {
1514
2047
  COSINE: "cosine",
@@ -1602,11 +2135,11 @@ class VectorSimilarityTask extends ArrayTask {
1602
2135
  };
1603
2136
  }
1604
2137
  }
1605
- TaskRegistry14.registerTask(VectorSimilarityTask);
2138
+ TaskRegistry20.registerTask(VectorSimilarityTask);
1606
2139
  var Similarity = (input, config) => {
1607
2140
  return new VectorSimilarityTask(input, config).run();
1608
2141
  };
1609
- Workflow14.prototype.Similarity = CreateWorkflow14(VectorSimilarityTask);
2142
+ Workflow20.prototype.Similarity = CreateWorkflow20(VectorSimilarityTask);
1610
2143
  function inner(arr1, arr2) {
1611
2144
  return 1 - arr1.reduce((acc, val, i) => acc + val * arr2[i], 0);
1612
2145
  }
@@ -1650,6 +2183,10 @@ export {
1650
2183
  TypeModelAsString,
1651
2184
  TypeModel,
1652
2185
  TypeLanguage,
2186
+ TypeImageInput,
2187
+ TypeCategory,
2188
+ TypeBoundingBox,
2189
+ TypeAudioInput,
1653
2190
  TextTranslationTask,
1654
2191
  TextTranslationOutputSchema,
1655
2192
  TextTranslationInputSchema,
@@ -1687,19 +2224,39 @@ export {
1687
2224
  TextEmbeddingOutputSchema,
1688
2225
  TextEmbeddingInputSchema,
1689
2226
  TextEmbedding,
1690
- TextClassifierTask,
1691
- TextClassifierOutputSchema,
1692
- TextClassifierInputSchema,
1693
- TextClassifier,
2227
+ TextClassificationTask,
2228
+ TextClassificationOutputSchema,
2229
+ TextClassificationInputSchema,
2230
+ TextClassification,
1694
2231
  TableFragment,
1695
2232
  SimilarityFn,
1696
2233
  Similarity,
2234
+ ObjectDetectionTask,
2235
+ ObjectDetectionOutputSchema,
2236
+ ObjectDetectionInputSchema,
2237
+ ObjectDetection,
1697
2238
  ModelSchema,
1698
2239
  ModelRepository,
1699
2240
  ModelPrimaryKeyNames,
1700
2241
  MODEL_REPOSITORY,
1701
2242
  InMemoryModelRepository,
2243
+ ImageToTextTask,
2244
+ ImageToTextOutputSchema,
2245
+ ImageToTextInputSchema,
2246
+ ImageToText,
2247
+ ImageSegmentationTask,
2248
+ ImageSegmentationOutputSchema,
2249
+ ImageSegmentationInputSchema,
2250
+ ImageSegmentation,
1702
2251
  ImageFragment,
2252
+ ImageEmbeddingTask,
2253
+ ImageEmbeddingOutputSchema,
2254
+ ImageEmbeddingInputSchema,
2255
+ ImageEmbedding,
2256
+ ImageClassificationTask,
2257
+ ImageClassificationOutputSchema,
2258
+ ImageClassificationInputSchema,
2259
+ ImageClassification,
1703
2260
  DownloadModelTask,
1704
2261
  DownloadModel,
1705
2262
  DocumentSplitterTask,
@@ -1709,9 +2266,13 @@ export {
1709
2266
  DocumentConverterMarkdown,
1710
2267
  DocumentBaseFragment,
1711
2268
  Document,
2269
+ BackgroundRemovalTask,
2270
+ BackgroundRemovalOutputSchema,
2271
+ BackgroundRemovalInputSchema,
2272
+ BackgroundRemoval,
1712
2273
  AiTask,
1713
2274
  AiProviderRegistry,
1714
2275
  AiJob
1715
2276
  };
1716
2277
 
1717
- //# debugId=B028A393AC9B8DFF64756E2164756E21
2278
+ //# debugId=7B9E2A3103106B9D64756E2164756E21