@workglow/ai 0.1.1 → 0.2.0

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 (137) hide show
  1. package/README.md +8 -7
  2. package/dist/browser.js +1436 -397
  3. package/dist/browser.js.map +64 -58
  4. package/dist/bun.js +1436 -397
  5. package/dist/bun.js.map +64 -58
  6. package/dist/common.d.ts +1 -0
  7. package/dist/common.d.ts.map +1 -1
  8. package/dist/execution/DirectExecutionStrategy.d.ts +1 -1
  9. package/dist/execution/DirectExecutionStrategy.d.ts.map +1 -1
  10. package/dist/execution/QueuedExecutionStrategy.d.ts +2 -2
  11. package/dist/execution/QueuedExecutionStrategy.d.ts.map +1 -1
  12. package/dist/job/AiJob.d.ts +2 -1
  13. package/dist/job/AiJob.d.ts.map +1 -1
  14. package/dist/model/ModelRegistry.d.ts.map +1 -1
  15. package/dist/model/ModelRepository.d.ts +11 -15
  16. package/dist/model/ModelRepository.d.ts.map +1 -1
  17. package/dist/model/ModelSchema.d.ts.map +1 -1
  18. package/dist/node.js +1436 -397
  19. package/dist/node.js.map +64 -58
  20. package/dist/provider/AiProvider.d.ts +2 -2
  21. package/dist/provider/AiProvider.d.ts.map +1 -1
  22. package/dist/provider/AiProviderRegistry.d.ts +3 -2
  23. package/dist/provider/AiProviderRegistry.d.ts.map +1 -1
  24. package/dist/provider/QueuedAiProvider.d.ts +2 -1
  25. package/dist/provider/QueuedAiProvider.d.ts.map +1 -1
  26. package/dist/task/AgentTask.d.ts +525 -0
  27. package/dist/task/AgentTask.d.ts.map +1 -0
  28. package/dist/task/AgentTypes.d.ts +183 -0
  29. package/dist/task/AgentTypes.d.ts.map +1 -0
  30. package/dist/task/AgentUtils.d.ts +55 -0
  31. package/dist/task/AgentUtils.d.ts.map +1 -0
  32. package/dist/task/BackgroundRemovalTask.d.ts +6 -34
  33. package/dist/task/BackgroundRemovalTask.d.ts.map +1 -1
  34. package/dist/task/ChunkRetrievalTask.d.ts +6 -4
  35. package/dist/task/ChunkRetrievalTask.d.ts.map +1 -1
  36. package/dist/task/ChunkToVectorTask.d.ts +6 -26
  37. package/dist/task/ChunkToVectorTask.d.ts.map +1 -1
  38. package/dist/task/ChunkVectorHybridSearchTask.d.ts +6 -25
  39. package/dist/task/ChunkVectorHybridSearchTask.d.ts.map +1 -1
  40. package/dist/task/ChunkVectorSearchTask.d.ts +6 -12
  41. package/dist/task/ChunkVectorSearchTask.d.ts.map +1 -1
  42. package/dist/task/ChunkVectorUpsertTask.d.ts +6 -13
  43. package/dist/task/ChunkVectorUpsertTask.d.ts.map +1 -1
  44. package/dist/task/ContextBuilderTask.d.ts +6 -30
  45. package/dist/task/ContextBuilderTask.d.ts.map +1 -1
  46. package/dist/task/CountTokensTask.d.ts +6 -21
  47. package/dist/task/CountTokensTask.d.ts.map +1 -1
  48. package/dist/task/DocumentEnricherTask.d.ts +6 -40
  49. package/dist/task/DocumentEnricherTask.d.ts.map +1 -1
  50. package/dist/task/DownloadModelTask.d.ts +7 -21
  51. package/dist/task/DownloadModelTask.d.ts.map +1 -1
  52. package/dist/task/FaceDetectorTask.d.ts +6 -36
  53. package/dist/task/FaceDetectorTask.d.ts.map +1 -1
  54. package/dist/task/FaceLandmarkerTask.d.ts +6 -40
  55. package/dist/task/FaceLandmarkerTask.d.ts.map +1 -1
  56. package/dist/task/GestureRecognizerTask.d.ts +6 -38
  57. package/dist/task/GestureRecognizerTask.d.ts.map +1 -1
  58. package/dist/task/HandLandmarkerTask.d.ts +6 -38
  59. package/dist/task/HandLandmarkerTask.d.ts.map +1 -1
  60. package/dist/task/HierarchicalChunkerTask.d.ts +6 -26
  61. package/dist/task/HierarchicalChunkerTask.d.ts.map +1 -1
  62. package/dist/task/HierarchyJoinTask.d.ts +6 -29
  63. package/dist/task/HierarchyJoinTask.d.ts.map +1 -1
  64. package/dist/task/ImageClassificationTask.d.ts +6 -36
  65. package/dist/task/ImageClassificationTask.d.ts.map +1 -1
  66. package/dist/task/ImageEmbeddingTask.d.ts +6 -47
  67. package/dist/task/ImageEmbeddingTask.d.ts.map +1 -1
  68. package/dist/task/ImageSegmentationTask.d.ts +6 -36
  69. package/dist/task/ImageSegmentationTask.d.ts.map +1 -1
  70. package/dist/task/ImageToTextTask.d.ts +6 -35
  71. package/dist/task/ImageToTextTask.d.ts.map +1 -1
  72. package/dist/task/MessageConversion.d.ts +52 -0
  73. package/dist/task/MessageConversion.d.ts.map +1 -0
  74. package/dist/task/ModelInfoTask.d.ts +7 -22
  75. package/dist/task/ModelInfoTask.d.ts.map +1 -1
  76. package/dist/task/ModelSearchTask.d.ts +6 -7
  77. package/dist/task/ModelSearchTask.d.ts.map +1 -1
  78. package/dist/task/ObjectDetectionTask.d.ts +6 -36
  79. package/dist/task/ObjectDetectionTask.d.ts.map +1 -1
  80. package/dist/task/PoseLandmarkerTask.d.ts +6 -39
  81. package/dist/task/PoseLandmarkerTask.d.ts.map +1 -1
  82. package/dist/task/QueryExpanderTask.d.ts +6 -9
  83. package/dist/task/QueryExpanderTask.d.ts.map +1 -1
  84. package/dist/task/RerankerTask.d.ts +6 -28
  85. package/dist/task/RerankerTask.d.ts.map +1 -1
  86. package/dist/task/StructuralParserTask.d.ts +6 -10
  87. package/dist/task/StructuralParserTask.d.ts.map +1 -1
  88. package/dist/task/StructuredGenerationTask.d.ts +6 -26
  89. package/dist/task/StructuredGenerationTask.d.ts.map +1 -1
  90. package/dist/task/TextChunkerTask.d.ts +6 -9
  91. package/dist/task/TextChunkerTask.d.ts.map +1 -1
  92. package/dist/task/TextClassificationTask.d.ts +6 -23
  93. package/dist/task/TextClassificationTask.d.ts.map +1 -1
  94. package/dist/task/TextEmbeddingTask.d.ts +6 -21
  95. package/dist/task/TextEmbeddingTask.d.ts.map +1 -1
  96. package/dist/task/TextFillMaskTask.d.ts +6 -21
  97. package/dist/task/TextFillMaskTask.d.ts.map +1 -1
  98. package/dist/task/TextGenerationTask.d.ts +6 -26
  99. package/dist/task/TextGenerationTask.d.ts.map +1 -1
  100. package/dist/task/TextLanguageDetectionTask.d.ts +6 -22
  101. package/dist/task/TextLanguageDetectionTask.d.ts.map +1 -1
  102. package/dist/task/TextNamedEntityRecognitionTask.d.ts +6 -22
  103. package/dist/task/TextNamedEntityRecognitionTask.d.ts.map +1 -1
  104. package/dist/task/TextQuestionAnswerTask.d.ts +6 -22
  105. package/dist/task/TextQuestionAnswerTask.d.ts.map +1 -1
  106. package/dist/task/TextRewriterTask.d.ts +6 -22
  107. package/dist/task/TextRewriterTask.d.ts.map +1 -1
  108. package/dist/task/TextSummaryTask.d.ts +6 -21
  109. package/dist/task/TextSummaryTask.d.ts.map +1 -1
  110. package/dist/task/TextTranslationTask.d.ts +6 -23
  111. package/dist/task/TextTranslationTask.d.ts.map +1 -1
  112. package/dist/task/ToolCallingTask.d.ts +348 -0
  113. package/dist/task/ToolCallingTask.d.ts.map +1 -0
  114. package/dist/task/ToolCallingUtils.d.ts +75 -0
  115. package/dist/task/ToolCallingUtils.d.ts.map +1 -0
  116. package/dist/task/TopicSegmenterTask.d.ts +6 -10
  117. package/dist/task/TopicSegmenterTask.d.ts.map +1 -1
  118. package/dist/task/UnloadModelTask.d.ts +6 -20
  119. package/dist/task/UnloadModelTask.d.ts.map +1 -1
  120. package/dist/task/VectorQuantizeTask.d.ts +6 -8
  121. package/dist/task/VectorQuantizeTask.d.ts.map +1 -1
  122. package/dist/task/VectorSimilarityTask.d.ts +7 -10
  123. package/dist/task/VectorSimilarityTask.d.ts.map +1 -1
  124. package/dist/task/base/AiTask.d.ts +8 -5
  125. package/dist/task/base/AiTask.d.ts.map +1 -1
  126. package/dist/task/base/AiTaskSchemas.d.ts.map +1 -1
  127. package/dist/task/base/AiVisionTask.d.ts +3 -7
  128. package/dist/task/base/AiVisionTask.d.ts.map +1 -1
  129. package/dist/task/base/StreamingAiTask.d.ts +4 -7
  130. package/dist/task/base/StreamingAiTask.d.ts.map +1 -1
  131. package/dist/task/index.d.ts +9 -1
  132. package/dist/task/index.d.ts.map +1 -1
  133. package/dist/worker.d.ts +2 -0
  134. package/dist/worker.d.ts.map +1 -1
  135. package/dist/worker.js +247 -25
  136. package/dist/worker.js.map +9 -7
  137. package/package.json +16 -11
@@ -3,7 +3,8 @@
3
3
  * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { CreateWorkflow, TaskConfig } from "@workglow/task-graph";
6
+ import { CreateWorkflow } from "@workglow/task-graph";
7
+ import type { TaskConfig } from "@workglow/task-graph";
7
8
  import { DataPortSchema, FromSchema } from "@workglow/util/schema";
8
9
  import { AiVisionTask } from "./base/AiVisionTask";
9
10
  export declare const HandLandmarkerInputSchema: {
@@ -380,11 +381,12 @@ export declare const HandLandmarkerOutputSchema: {
380
381
  };
381
382
  export type HandLandmarkerTaskInput = FromSchema<typeof HandLandmarkerInputSchema>;
382
383
  export type HandLandmarkerTaskOutput = FromSchema<typeof HandLandmarkerOutputSchema>;
384
+ export type HandLandmarkerTaskConfig = TaskConfig<HandLandmarkerTaskInput>;
383
385
  /**
384
386
  * Detects hand landmarks in images using MediaPipe Hand Landmarker.
385
387
  * Identifies 21 hand landmarks and classifies left vs. right hands.
386
388
  */
387
- export declare class HandLandmarkerTask extends AiVisionTask<HandLandmarkerTaskInput, HandLandmarkerTaskOutput, TaskConfig> {
389
+ export declare class HandLandmarkerTask extends AiVisionTask<HandLandmarkerTaskInput, HandLandmarkerTaskOutput, HandLandmarkerTaskConfig> {
388
390
  static type: string;
389
391
  static category: string;
390
392
  static title: string;
@@ -398,41 +400,7 @@ export declare class HandLandmarkerTask extends AiVisionTask<HandLandmarkerTaskI
398
400
  * @param input The input parameters for hand landmark detection (image, model, and optional configuration)
399
401
  * @returns Promise resolving to the detected hand landmarks and handedness
400
402
  */
401
- export declare const handLandmarker: (input: {
402
- image: string | {
403
- channels: number;
404
- data: {
405
- [x: string]: unknown;
406
- } | {
407
- channels: number;
408
- data: number[];
409
- height: number;
410
- rawChannels?: number | undefined;
411
- width: number;
412
- };
413
- height: number;
414
- width: number;
415
- };
416
- minHandDetectionConfidence?: number | undefined;
417
- minHandPresenceConfidence?: number | undefined;
418
- minTrackingConfidence?: number | undefined;
419
- model: string | {
420
- [x: string]: unknown;
421
- description?: string | undefined;
422
- metadata?: {
423
- [x: string]: unknown;
424
- } | undefined;
425
- model_id?: string | undefined;
426
- provider: string;
427
- provider_config: {
428
- [x: string]: unknown;
429
- credential_key?: string | undefined;
430
- };
431
- tasks?: string[] | undefined;
432
- title?: string | undefined;
433
- };
434
- numHands?: number | undefined;
435
- }, config?: TaskConfig | undefined) => Promise<{
403
+ export declare const handLandmarker: (input: HandLandmarkerTaskInput, config?: HandLandmarkerTaskConfig) => Promise<{
436
404
  hands: {
437
405
  handedness: {
438
406
  label: string;
@@ -467,7 +435,7 @@ export declare const handLandmarker: (input: {
467
435
  }>;
468
436
  declare module "@workglow/task-graph" {
469
437
  interface Workflow {
470
- handLandmarker: CreateWorkflow<HandLandmarkerTaskInput, HandLandmarkerTaskOutput, TaskConfig>;
438
+ handLandmarker: CreateWorkflow<HandLandmarkerTaskInput, HandLandmarkerTaskOutput, HandLandmarkerTaskConfig>;
471
439
  }
472
440
  }
473
441
  //# sourceMappingURL=HandLandmarkerTask.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HandLandmarkerTask.d.ts","sourceRoot":"","sources":["../../src/task/HandLandmarkerTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,UAAU,EAAY,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAgFnD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CH,CAAC;AAEpC,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAcJ,CAAC;AAEpC,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC;AACnF,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAErF;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,YAAY,CAClD,uBAAuB,EACvB,wBAAwB,EACxB,UAAU,CACX;IACC,OAAuB,IAAI,SAAwB;IACnD,OAAuB,QAAQ,SAAqB;IACpD,OAAuB,KAAK,SAAqB;IACjD,OAAuB,WAAW,SACsE;IACxG,OAAuB,WAAW,IAAI,cAAc,CAEnD;IACD,OAAuB,YAAY,IAAI,cAAc,CAEpD;CACF;AAED;;;;;GAKG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE1B,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC,CAAC;IACrC,UAAU,QAAQ;QAChB,cAAc,EAAE,cAAc,CAAC,uBAAuB,EAAE,wBAAwB,EAAE,UAAU,CAAC,CAAC;KAC/F;CACF"}
1
+ {"version":3,"file":"HandLandmarkerTask.d.ts","sourceRoot":"","sources":["../../src/task/HandLandmarkerTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAY,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAgFnD,eAAO,MAAM,yBAAyB;mBAC9B,QAAQ;;iBAEZ,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBACL,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBACL,QAAQ;qBACN,IAAI,EAAE,QAAQ;qBACd,OAAO,EAAE,CAAC;qBACV,OAAO,EAAE,EAAE;qBACX,OAAO,EAAE,CAAC;qBACV,KAAK,EAAE,iBAAiB;qBACxB,WAAW,EAAE,uCAAuC;qBACpD,YAAY,EAAE,eAAe;;iBAE/B,0BAA0B;qBACxB,IAAI,EAAE,QAAQ;qBACd,OAAO,EAAE,CAAC;qBACV,OAAO,EAAE,CAAC;qBACV,OAAO,EAAE,GAAG;qBACZ,KAAK,EAAE,+BAA+B;qBACtC,WAAW,EAAE,6CAA6C;qBAC1D,YAAY,EAAE,eAAe;;iBAE/B,yBAAyB;qBACvB,IAAI,EAAE,QAAQ;qBACd,OAAO,EAAE,CAAC;qBACV,OAAO,EAAE,CAAC;qBACV,OAAO,EAAE,GAAG;qBACZ,KAAK,EAAE,8BAA8B;qBACrC,WAAW,EAAE,4CAA4C;qBACzD,YAAY,EAAE,eAAe;;iBAE/B,qBAAqB;qBACnB,IAAI,EAAE,QAAQ;qBACd,OAAO,EAAE,CAAC;qBACV,OAAO,EAAE,CAAC;qBACV,OAAO,EAAE,GAAG;qBACZ,KAAK,EAAE,yBAAyB;qBAChC,WAAW,EAAE,4CAA4C;qBACzD,YAAY,EAAE,eAAe;;;;;CAKA,CAAC;AAEpC,eAAO,MAAM,0BAA0B;mBAC/B,QAAQ;;;;+BAIA,OAAO;;mCA5Ef,QAAQ;;iCAEZ,UAAU;qCACR,IAAI,EAAE,OAAO;qCACb,KAAK;+CAzBH,QAAQ;;6CAEZ,KAAK;iDACH,IAAI,EAAE,QAAQ;iDACd,KAAK,EAAE,YAAY;iDACnB,WAAW,EAAE,uCAAuC;;6CAEtD,KAAK;iDACH,IAAI,EAAE,QAAQ;iDACd,KAAK,EAAE,kBAAkB;iDACzB,WAAW,EAAE,oDAAoD;;;6DAG1D,OAAO,EAAE,OAAO;;;qCAavB,KAAK,EAAE,YAAY;qCACnB,WAAW,EAAE,wCAAwC;;iCAEvD,SAAS;qCACP,IAAI,EAAE,OAAO;qCACb,KAAK;+CAzDH,QAAQ;;6CAEZ,CAAC;iDACC,IAAI,EAAE,QAAQ;iDACd,KAAK,EAAE,cAAc;iDACrB,WAAW,EAAE,uCAAuC;;6CAEtD,CAAC;iDACC,IAAI,EAAE,QAAQ;iDACd,KAAK,EAAE,cAAc;iDACrB,WAAW,EAAE,uCAAuC;;6CAEtD,CAAC;iDACC,IAAI,EAAE,QAAQ;iDACd,KAAK,EAAE,cAAc;iDACrB,WAAW,EAAE,sBAAsB;;;6DAG5B,GAAG,EAAE,GAAG,EAAE,GAAG;;;qCAwCpB,KAAK,EAAE,WAAW;qCAClB,WAAW,EAAE,wCAAwC;;iCAEvD,cAAc;qCACZ,IAAI,EAAE,OAAO;qCACb,KAAK;;;;;;;;;;;;;;;;;;;;;;qCACL,KAAK,EAAE,iBAAiB;qCACxB,WAAW,EAAE,oDAAoD;;;iDAG1D,YAAY,EAAE,WAAW,EAAE,gBAAgB;;;;+BAwDxC,OAAO;;6BAAW,IAAI,EAAE,OAAO;6BAAE,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAEzC,iBAAiB;kCACX,8CAA8C;;;;;CAK9B,CAAC;AAEpC,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC;AACnF,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC;AACrF,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,uBAAuB,CAAC,CAAC;AAE3E;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,YAAY,CAClD,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,CACzB;IACC,OAAuB,IAAI,SAAwB;IACnD,OAAuB,QAAQ,SAAqB;IACpD,OAAuB,KAAK,SAAqB;IACjD,OAAuB,WAAW,SACsE;IACxG,OAAuB,WAAW,IAAI,cAAc,CAEnD;IACD,OAAuB,YAAY,IAAI,cAAc,CAEpD;CACF;AAED;;;;;GAKG;AACH,eAAO,MAAM,cAAc,UAClB,uBAAuB,WACrB,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGlC,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC,CAAC;IACrC,UAAU,QAAQ;QAChB,cAAc,EAAE,cAAc,CAC5B,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,CACzB,CAAC;KACH;CACF"}
@@ -3,7 +3,8 @@
3
3
  * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { CreateWorkflow, IExecuteContext, TaskConfig, Task } from "@workglow/task-graph";
6
+ import { CreateWorkflow, IExecuteContext, Task } from "@workglow/task-graph";
7
+ import type { TaskConfig } from "@workglow/task-graph";
7
8
  import { DataPortSchema, FromSchema } from "@workglow/util/schema";
8
9
  declare const inputSchema: {
9
10
  readonly type: "object";
@@ -240,13 +241,14 @@ declare const outputSchema: {
240
241
  };
241
242
  export type HierarchicalChunkerTaskInput = FromSchema<typeof inputSchema>;
242
243
  export type HierarchicalChunkerTaskOutput = FromSchema<typeof outputSchema>;
244
+ export type HierarchicalChunkerTaskConfig = TaskConfig<HierarchicalChunkerTaskInput>;
243
245
  /**
244
246
  * Task for hierarchical chunking that respects token budgets and document structure.
245
247
  * Pass a `model` in the input to use {@link CountTokensTask} for accurate token
246
248
  * counting; when omitted, the task falls back to the character-based estimate
247
249
  * provided by {@link estimateTokens}.
248
250
  */
249
- export declare class HierarchicalChunkerTask extends Task<HierarchicalChunkerTaskInput, HierarchicalChunkerTaskOutput, TaskConfig> {
251
+ export declare class HierarchicalChunkerTask extends Task<HierarchicalChunkerTaskInput, HierarchicalChunkerTaskOutput, HierarchicalChunkerTaskConfig> {
250
252
  static type: string;
251
253
  static category: string;
252
254
  static title: string;
@@ -263,29 +265,7 @@ export declare class HierarchicalChunkerTask extends Task<HierarchicalChunkerTas
263
265
  */
264
266
  private collectAllText;
265
267
  }
266
- export declare const hierarchicalChunker: (input: {
267
- doc_id: string;
268
- documentTree: unknown;
269
- maxTokens?: number | undefined;
270
- model?: string | {
271
- [x: string]: unknown;
272
- description?: string | undefined;
273
- metadata?: {
274
- [x: string]: unknown;
275
- } | undefined;
276
- model_id?: string | undefined;
277
- provider: string;
278
- provider_config: {
279
- [x: string]: unknown;
280
- credential_key?: string | undefined;
281
- };
282
- tasks?: string[] | undefined;
283
- title?: string | undefined;
284
- } | undefined;
285
- overlap?: number | undefined;
286
- reservedTokens?: number | undefined;
287
- strategy?: "flat" | "hierarchical" | "sentence" | undefined;
288
- }, config?: TaskConfig | undefined) => Promise<{
268
+ export declare const hierarchicalChunker: (input: HierarchicalChunkerTaskInput, config?: HierarchicalChunkerTaskConfig) => Promise<{
289
269
  chunks: {
290
270
  [x: string]: unknown;
291
271
  chunkId: string;
@@ -310,7 +290,7 @@ export declare const hierarchicalChunker: (input: {
310
290
  }>;
311
291
  declare module "@workglow/task-graph" {
312
292
  interface Workflow {
313
- hierarchicalChunker: CreateWorkflow<HierarchicalChunkerTaskInput, HierarchicalChunkerTaskOutput, TaskConfig>;
293
+ hierarchicalChunker: CreateWorkflow<HierarchicalChunkerTaskInput, HierarchicalChunkerTaskOutput, HierarchicalChunkerTaskConfig>;
314
294
  }
315
295
  }
316
296
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"HierarchicalChunkerTask.d.ts","sourceRoot":"","sources":["../../src/task/HierarchicalChunkerTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,IAAI,EAAY,MAAM,sBAAsB,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAUnE,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CkB,CAAC;AAEpC,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BiB,CAAC;AAEpC,MAAM,MAAM,4BAA4B,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAC1E,MAAM,MAAM,6BAA6B,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;AAE5E;;;;;GAKG;AACH,qBAAa,uBAAwB,SAAQ,IAAI,CAC/C,4BAA4B,EAC5B,6BAA6B,EAC7B,UAAU,CACX;IACC,OAAuB,IAAI,SAA6B;IACxD,OAAuB,QAAQ,SAAc;IAC7C,OAAuB,KAAK,SAA0B;IACtD,OAAuB,WAAW,SAA6D;IAC/F,OAAuB,SAAS,UAAQ;IAExC,OAAuB,WAAW,IAAI,cAAc,CAEnD;IAED,OAAuB,YAAY,IAAI,cAAc,CAEpD;IAEc,OAAO,CACpB,KAAK,EAAE,4BAA4B,EACnC,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,6BAA6B,CAAC,CAmDxC;YAKa,mBAAmB;YAkCnB,SAAS;YAkFT,SAAS;IAWvB;;OAEG;IACH,OAAO,CAAC,cAAc;CAgBvB;AAED,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE/B,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC,CAAC;IACrC,UAAU,QAAQ;QAChB,mBAAmB,EAAE,cAAc,CACjC,4BAA4B,EAC5B,6BAA6B,EAC7B,UAAU,CACX,CAAC;KACH;CACF"}
1
+ {"version":3,"file":"HierarchicalChunkerTask.d.ts","sourceRoot":"","sources":["../../src/task/HierarchicalChunkerTask.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,8 @@
3
3
  * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { CreateWorkflow, IExecuteContext, TaskConfig, Task } from "@workglow/task-graph";
6
+ import { CreateWorkflow, IExecuteContext, Task } from "@workglow/task-graph";
7
+ import type { TaskConfig } from "@workglow/task-graph";
7
8
  import { DataPortSchema, FromSchema } from "@workglow/util/schema";
8
9
  declare const inputSchema: {
9
10
  readonly type: "object";
@@ -298,11 +299,12 @@ declare const outputSchema: {
298
299
  };
299
300
  export type HierarchyJoinTaskInput = FromSchema<typeof inputSchema>;
300
301
  export type HierarchyJoinTaskOutput = FromSchema<typeof outputSchema>;
302
+ export type HierarchyJoinTaskConfig = TaskConfig<HierarchyJoinTaskInput>;
301
303
  /**
302
304
  * Task for enriching search results with hierarchy information
303
305
  * Joins chunk IDs back to knowledge base to get parent summaries and entities
304
306
  */
305
- export declare class HierarchyJoinTask extends Task<HierarchyJoinTaskInput, HierarchyJoinTaskOutput, TaskConfig> {
307
+ export declare class HierarchyJoinTask extends Task<HierarchyJoinTaskInput, HierarchyJoinTaskOutput, HierarchyJoinTaskConfig> {
306
308
  static type: string;
307
309
  static category: string;
308
310
  static title: string;
@@ -312,32 +314,7 @@ export declare class HierarchyJoinTask extends Task<HierarchyJoinTaskInput, Hier
312
314
  static outputSchema(): DataPortSchema;
313
315
  execute(input: HierarchyJoinTaskInput, context: IExecuteContext): Promise<HierarchyJoinTaskOutput>;
314
316
  }
315
- export declare const hierarchyJoin: (input: {
316
- chunk_ids: string[];
317
- chunks: string[];
318
- includeEntities?: boolean | undefined;
319
- includeParentSummaries?: boolean | undefined;
320
- knowledgeBase: unknown;
321
- metadata: {
322
- [x: string]: unknown;
323
- chunkId: string;
324
- depth: number;
325
- doc_id: string;
326
- doc_title?: string | undefined;
327
- entities?: {
328
- score: number;
329
- text: string;
330
- type: string;
331
- }[] | undefined;
332
- leafNodeId?: string | undefined;
333
- nodePath: string[];
334
- parentSummaries?: string[] | undefined;
335
- sectionTitles?: string[] | undefined;
336
- summary?: string | undefined;
337
- text: string;
338
- }[];
339
- scores: number[];
340
- }, config?: TaskConfig | undefined) => Promise<{
317
+ export declare const hierarchyJoin: (input: HierarchyJoinTaskInput, config?: HierarchyJoinTaskConfig) => Promise<{
341
318
  chunk_ids: string[];
342
319
  chunks: string[];
343
320
  count: number;
@@ -363,7 +340,7 @@ export declare const hierarchyJoin: (input: {
363
340
  }>;
364
341
  declare module "@workglow/task-graph" {
365
342
  interface Workflow {
366
- hierarchyJoin: CreateWorkflow<HierarchyJoinTaskInput, HierarchyJoinTaskOutput, TaskConfig>;
343
+ hierarchyJoin: CreateWorkflow<HierarchyJoinTaskInput, HierarchyJoinTaskOutput, HierarchyJoinTaskConfig>;
367
344
  }
368
345
  }
369
346
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"HierarchyJoinTask.d.ts","sourceRoot":"","sources":["../../src/task/HierarchyJoinTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,IAAI,EAAY,MAAM,sBAAsB,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnE,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyCkB,CAAC;AAEpC,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BiB,CAAC;AAEpC,MAAM,MAAM,sBAAsB,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AACpE,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;AAEtE;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,IAAI,CACzC,sBAAsB,EACtB,uBAAuB,EACvB,UAAU,CACX;IACC,OAAuB,IAAI,SAAuB;IAClD,OAAuB,QAAQ,SAAS;IACxC,OAAuB,KAAK,SAAoB;IAChD,OAAuB,WAAW,SAA2D;IAC7F,OAAuB,SAAS,UAAS;IAEzC,OAAuB,WAAW,IAAI,cAAc,CAEnD;IAED,OAAuB,YAAY,IAAI,cAAc,CAEpD;IAEc,OAAO,CACpB,KAAK,EAAE,sBAAsB,EAC7B,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,uBAAuB,CAAC,CA6FlC;CACF;AAED,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEzB,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC,CAAC;IACrC,UAAU,QAAQ;QAChB,aAAa,EAAE,cAAc,CAAC,sBAAsB,EAAE,uBAAuB,EAAE,UAAU,CAAC,CAAC;KAC5F;CACF"}
1
+ {"version":3,"file":"HierarchyJoinTask.d.ts","sourceRoot":"","sources":["../../src/task/HierarchyJoinTask.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,8 @@
3
3
  * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { CreateWorkflow, TaskConfig } from "@workglow/task-graph";
6
+ import { CreateWorkflow } from "@workglow/task-graph";
7
+ import type { TaskConfig } from "@workglow/task-graph";
7
8
  import { DataPortSchema, FromSchema } from "@workglow/util/schema";
8
9
  import { AiVisionTask } from "./base/AiVisionTask";
9
10
  export declare const ImageClassificationInputSchema: {
@@ -238,11 +239,12 @@ export declare const ImageClassificationOutputSchema: {
238
239
  };
239
240
  export type ImageClassificationTaskInput = FromSchema<typeof ImageClassificationInputSchema>;
240
241
  export type ImageClassificationTaskOutput = FromSchema<typeof ImageClassificationOutputSchema>;
242
+ export type ImageClassificationTaskConfig = TaskConfig<ImageClassificationTaskInput>;
241
243
  /**
242
244
  * Classifies images into categories using vision models.
243
245
  * Automatically selects between regular and zero-shot classification based on whether categories are provided.
244
246
  */
245
- export declare class ImageClassificationTask extends AiVisionTask<ImageClassificationTaskInput, ImageClassificationTaskOutput, TaskConfig> {
247
+ export declare class ImageClassificationTask extends AiVisionTask<ImageClassificationTaskInput, ImageClassificationTaskOutput, ImageClassificationTaskConfig> {
246
248
  static type: string;
247
249
  static category: string;
248
250
  static title: string;
@@ -256,39 +258,7 @@ export declare class ImageClassificationTask extends AiVisionTask<ImageClassific
256
258
  * @param input The input parameters for image classification (image, model, and optional categories)
257
259
  * @returns Promise resolving to the classification categories with scores
258
260
  */
259
- export declare const imageClassification: (input: {
260
- categories?: string[] | undefined;
261
- image: string | {
262
- channels: number;
263
- data: {
264
- [x: string]: unknown;
265
- } | {
266
- channels: number;
267
- data: number[];
268
- height: number;
269
- rawChannels?: number | undefined;
270
- width: number;
271
- };
272
- height: number;
273
- width: number;
274
- };
275
- maxCategories?: number | undefined;
276
- model: string | {
277
- [x: string]: unknown;
278
- description?: string | undefined;
279
- metadata?: {
280
- [x: string]: unknown;
281
- } | undefined;
282
- model_id?: string | undefined;
283
- provider: string;
284
- provider_config: {
285
- [x: string]: unknown;
286
- credential_key?: string | undefined;
287
- };
288
- tasks?: string[] | undefined;
289
- title?: string | undefined;
290
- };
291
- }, config?: TaskConfig | undefined) => Promise<{
261
+ export declare const imageClassification: (input: ImageClassificationTaskInput, config?: ImageClassificationTaskConfig) => Promise<{
292
262
  categories: {
293
263
  label: string;
294
264
  score: number;
@@ -299,7 +269,7 @@ export declare const imageClassification: (input: {
299
269
  }>;
300
270
  declare module "@workglow/task-graph" {
301
271
  interface Workflow {
302
- imageClassification: CreateWorkflow<ImageClassificationTaskInput, ImageClassificationTaskOutput, TaskConfig>;
272
+ imageClassification: CreateWorkflow<ImageClassificationTaskInput, ImageClassificationTaskOutput, ImageClassificationTaskConfig>;
303
273
  }
304
274
  }
305
275
  //# sourceMappingURL=ImageClassificationTask.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ImageClassificationTask.d.ts","sourceRoot":"","sources":["../../src/task/ImageClassificationTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,UAAU,EAAY,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAInD,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BR,CAAC;AAEpC,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAcT,CAAC;AAEpC,MAAM,MAAM,4BAA4B,GAAG,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAC7F,MAAM,MAAM,6BAA6B,GAAG,UAAU,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAE/F;;;GAGG;AACH,qBAAa,uBAAwB,SAAQ,YAAY,CACvD,4BAA4B,EAC5B,6BAA6B,EAC7B,UAAU,CACX;IACC,OAAuB,IAAI,SAA6B;IACxD,OAAuB,QAAQ,SAAqB;IACpD,OAAuB,KAAK,SAA0B;IACtD,OAAuB,WAAW,SACyF;IAC3H,OAAuB,WAAW,IAAI,cAAc,CAEnD;IACD,OAAuB,YAAY,IAAI,cAAc,CAEpD;CACF;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE/B,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC,CAAC;IACrC,UAAU,QAAQ;QAChB,mBAAmB,EAAE,cAAc,CACjC,4BAA4B,EAC5B,6BAA6B,EAC7B,UAAU,CACX,CAAC;KACH;CACF"}
1
+ {"version":3,"file":"ImageClassificationTask.d.ts","sourceRoot":"","sources":["../../src/task/ImageClassificationTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAY,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAInD,eAAO,MAAM,8BAA8B;mBACnC,QAAQ;;iBAEZ,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBACL,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBACL,UAAU;qBACR,IAAI,EAAE,OAAO;qBACb,KAAK;yBACH,IAAI,EAAE,QAAQ;;qBAEhB,KAAK,EAAE,YAAY;qBACnB,WAAW,EACT,oFAAoF;qBACtF,YAAY,EAAE,eAAe;;iBAE/B,aAAa;qBACX,IAAI,EAAE,QAAQ;qBACd,OAAO,EAAE,CAAC;qBACV,OAAO,EAAE,IAAI;qBACb,OAAO,EAAE,CAAC;qBACV,KAAK,EAAE,gBAAgB;qBACvB,WAAW,EAAE,4CAA4C;qBACzD,YAAY,EAAE,eAAe;;;;;CAKA,CAAC;AAEpC,eAAO,MAAM,+BAA+B;mBACpC,QAAQ;;;;+BAIA,OAAO;;;;;;;;;;;;;;;;;;;;;;;+BACP,OAAO;;6BAAW,IAAI,EAAE,OAAO;6BAAE,KAAK;;;;;;;;;;;;;;;;;;;;;;;4BAEzC,YAAY;kCACN,iDAAiD;;;;;CAKjC,CAAC;AAEpC,MAAM,MAAM,4BAA4B,GAAG,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAC7F,MAAM,MAAM,6BAA6B,GAAG,UAAU,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAC/F,MAAM,MAAM,6BAA6B,GAAG,UAAU,CAAC,4BAA4B,CAAC,CAAC;AAErF;;;GAGG;AACH,qBAAa,uBAAwB,SAAQ,YAAY,CACvD,4BAA4B,EAC5B,6BAA6B,EAC7B,6BAA6B,CAC9B;IACC,OAAuB,IAAI,SAA6B;IACxD,OAAuB,QAAQ,SAAqB;IACpD,OAAuB,KAAK,SAA0B;IACtD,OAAuB,WAAW,SACyF;IAC3H,OAAuB,WAAW,IAAI,cAAc,CAEnD;IACD,OAAuB,YAAY,IAAI,cAAc,CAEpD;CACF;AAED;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,UACvB,4BAA4B,WAC1B,6BAA6B;;;;;;;;EAGvC,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC,CAAC;IACrC,UAAU,QAAQ;QAChB,mBAAmB,EAAE,cAAc,CACjC,4BAA4B,EAC5B,6BAA6B,EAC7B,6BAA6B,CAC9B,CAAC;KACH;CACF"}
@@ -3,7 +3,8 @@
3
3
  * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { CreateWorkflow, TaskConfig } from "@workglow/task-graph";
6
+ import { CreateWorkflow } from "@workglow/task-graph";
7
+ import type { TaskConfig } from "@workglow/task-graph";
7
8
  import { DataPortSchema, FromSchema, TypedArraySchemaOptions } from "@workglow/util/schema";
8
9
  import { AiVisionTask } from "./base/AiVisionTask";
9
10
  export declare const ImageEmbeddingInputSchema: {
@@ -273,10 +274,11 @@ export declare const ImageEmbeddingOutputSchema: {
273
274
  };
274
275
  export type ImageEmbeddingTaskInput = FromSchema<typeof ImageEmbeddingInputSchema, TypedArraySchemaOptions>;
275
276
  export type ImageEmbeddingTaskOutput = FromSchema<typeof ImageEmbeddingOutputSchema, TypedArraySchemaOptions>;
277
+ export type ImageEmbeddingTaskConfig = TaskConfig<ImageEmbeddingTaskInput>;
276
278
  /**
277
279
  * Generates embeddings from images using vision models
278
280
  */
279
- export declare class ImageEmbeddingTask extends AiVisionTask<ImageEmbeddingTaskInput, ImageEmbeddingTaskOutput, TaskConfig> {
281
+ export declare class ImageEmbeddingTask extends AiVisionTask<ImageEmbeddingTaskInput, ImageEmbeddingTaskOutput, ImageEmbeddingTaskConfig> {
280
282
  static type: string;
281
283
  static category: string;
282
284
  static title: string;
@@ -290,55 +292,12 @@ export declare class ImageEmbeddingTask extends AiVisionTask<ImageEmbeddingTaskI
290
292
  * @param input The input parameters for image embedding (image and model)
291
293
  * @returns Promise resolving to the image embedding vector
292
294
  */
293
- export declare const imageEmbedding: (input: {
294
- image: string | (string | {
295
- channels: number;
296
- data: {
297
- [x: string]: unknown;
298
- } | {
299
- channels: number;
300
- data: number[];
301
- height: number;
302
- rawChannels?: number | undefined;
303
- width: number;
304
- };
305
- height: number;
306
- width: number;
307
- })[] | {
308
- channels: number;
309
- data: {
310
- [x: string]: unknown;
311
- } | {
312
- channels: number;
313
- data: number[];
314
- height: number;
315
- rawChannels?: number | undefined;
316
- width: number;
317
- };
318
- height: number;
319
- width: number;
320
- };
321
- model: string | {
322
- [x: string]: unknown;
323
- description?: string | undefined;
324
- metadata?: {
325
- [x: string]: unknown;
326
- } | undefined;
327
- model_id?: string | undefined;
328
- provider: string;
329
- provider_config: {
330
- [x: string]: unknown;
331
- credential_key?: string | undefined;
332
- };
333
- tasks?: string[] | undefined;
334
- title?: string | undefined;
335
- };
336
- }, config?: TaskConfig | undefined) => Promise<{
295
+ export declare const imageEmbedding: (input: ImageEmbeddingTaskInput, config?: ImageEmbeddingTaskConfig) => Promise<{
337
296
  vector: import("@workglow/util/schema").TypedArray[] | import("@workglow/util/schema").TypedArray;
338
297
  }>;
339
298
  declare module "@workglow/task-graph" {
340
299
  interface Workflow {
341
- imageEmbedding: CreateWorkflow<ImageEmbeddingTaskInput, ImageEmbeddingTaskOutput, TaskConfig>;
300
+ imageEmbedding: CreateWorkflow<ImageEmbeddingTaskInput, ImageEmbeddingTaskOutput, ImageEmbeddingTaskConfig>;
342
301
  }
343
302
  }
344
303
  //# sourceMappingURL=ImageEmbeddingTask.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ImageEmbeddingTask.d.ts","sourceRoot":"","sources":["../../src/task/ImageEmbeddingTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,UAAU,EAAY,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EACL,cAAc,EACd,UAAU,EAEV,uBAAuB,EACxB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAInD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQH,CAAC;AAEpC,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;CAYJ,CAAC;AAEpC,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAC9C,OAAO,yBAAyB,EAChC,uBAAuB,CACxB,CAAC;AACF,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAC/C,OAAO,0BAA0B,EACjC,uBAAuB,CACxB,CAAC;AAEF;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,YAAY,CAClD,uBAAuB,EACvB,wBAAwB,EACxB,UAAU,CACX;IACC,OAAuB,IAAI,SAAwB;IACnD,OAAuB,QAAQ,SAAqB;IACpD,OAAuB,KAAK,SAAqB;IACjD,OAAuB,WAAW,SAA0D;IAC5F,OAAuB,WAAW,IAAI,cAAc,CAEnD;IACD,OAAuB,YAAY,IAAI,cAAc,CAEpD;CACF;AAED;;;;;GAKG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE1B,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC,CAAC;IACrC,UAAU,QAAQ;QAChB,cAAc,EAAE,cAAc,CAAC,uBAAuB,EAAE,wBAAwB,EAAE,UAAU,CAAC,CAAC;KAC/F;CACF"}
1
+ {"version":3,"file":"ImageEmbeddingTask.d.ts","sourceRoot":"","sources":["../../src/task/ImageEmbeddingTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAY,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EACL,cAAc,EACd,UAAU,EAEV,uBAAuB,EACxB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAInD,eAAO,MAAM,yBAAyB;mBAC9B,QAAQ;;iBAEZ,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBACL,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAI0B,CAAC;AAEpC,eAAO,MAAM,0BAA0B;mBAC/B,QAAQ;;iBAEZ,MAAM;;;;;;;;;;;;;;;;;;;CASyB,CAAC;AAEpC,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAC9C,OAAO,yBAAyB,EAChC,uBAAuB,CACxB,CAAC;AACF,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAC/C,OAAO,0BAA0B,EACjC,uBAAuB,CACxB,CAAC;AACF,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,uBAAuB,CAAC,CAAC;AAE3E;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,YAAY,CAClD,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,CACzB;IACC,OAAuB,IAAI,SAAwB;IACnD,OAAuB,QAAQ,SAAqB;IACpD,OAAuB,KAAK,SAAqB;IACjD,OAAuB,WAAW,SAA0D;IAC5F,OAAuB,WAAW,IAAI,cAAc,CAEnD;IACD,OAAuB,YAAY,IAAI,cAAc,CAEpD;CACF;AAED;;;;;GAKG;AACH,eAAO,MAAM,cAAc,UAClB,uBAAuB,WACrB,wBAAwB;;EAGlC,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC,CAAC;IACrC,UAAU,QAAQ;QAChB,cAAc,EAAE,cAAc,CAC5B,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,CACzB,CAAC;KACH;CACF"}
@@ -3,7 +3,8 @@
3
3
  * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { CreateWorkflow, TaskConfig } from "@workglow/task-graph";
6
+ import { CreateWorkflow } from "@workglow/task-graph";
7
+ import type { TaskConfig } from "@workglow/task-graph";
7
8
  import { DataPortSchema, FromSchema } from "@workglow/util/schema";
8
9
  import { AiVisionTask } from "./base/AiVisionTask";
9
10
  export declare const ImageSegmentationInputSchema: {
@@ -246,10 +247,11 @@ export declare const ImageSegmentationOutputSchema: {
246
247
  };
247
248
  export type ImageSegmentationTaskInput = FromSchema<typeof ImageSegmentationInputSchema>;
248
249
  export type ImageSegmentationTaskOutput = FromSchema<typeof ImageSegmentationOutputSchema>;
250
+ export type ImageSegmentationTaskConfig = TaskConfig<ImageSegmentationTaskInput>;
249
251
  /**
250
252
  * Segments images into regions using computer vision models
251
253
  */
252
- export declare class ImageSegmentationTask extends AiVisionTask<ImageSegmentationTaskInput, ImageSegmentationTaskOutput, TaskConfig> {
254
+ export declare class ImageSegmentationTask extends AiVisionTask<ImageSegmentationTaskInput, ImageSegmentationTaskOutput, ImageSegmentationTaskConfig> {
253
255
  static type: string;
254
256
  static category: string;
255
257
  static title: string;
@@ -263,39 +265,7 @@ export declare class ImageSegmentationTask extends AiVisionTask<ImageSegmentatio
263
265
  * @param input The input parameters for image segmentation (image and model)
264
266
  * @returns Promise resolving to the segmentation masks with labels and scores
265
267
  */
266
- export declare const imageSegmentation: (input: {
267
- image: string | {
268
- channels: number;
269
- data: {
270
- [x: string]: unknown;
271
- } | {
272
- channels: number;
273
- data: number[];
274
- height: number;
275
- rawChannels?: number | undefined;
276
- width: number;
277
- };
278
- height: number;
279
- width: number;
280
- };
281
- maskThreshold?: number | undefined;
282
- model: string | {
283
- [x: string]: unknown;
284
- description?: string | undefined;
285
- metadata?: {
286
- [x: string]: unknown;
287
- } | undefined;
288
- model_id?: string | undefined;
289
- provider: string;
290
- provider_config: {
291
- [x: string]: unknown;
292
- credential_key?: string | undefined;
293
- };
294
- tasks?: string[] | undefined;
295
- title?: string | undefined;
296
- };
297
- threshold?: number | undefined;
298
- }, config?: TaskConfig | undefined) => Promise<{
268
+ export declare const imageSegmentation: (input: ImageSegmentationTaskInput, config?: ImageSegmentationTaskConfig) => Promise<{
299
269
  masks: {
300
270
  label: string;
301
271
  mask: {
@@ -312,7 +282,7 @@ export declare const imageSegmentation: (input: {
312
282
  }>;
313
283
  declare module "@workglow/task-graph" {
314
284
  interface Workflow {
315
- imageSegmentation: CreateWorkflow<ImageSegmentationTaskInput, ImageSegmentationTaskOutput, TaskConfig>;
285
+ imageSegmentation: CreateWorkflow<ImageSegmentationTaskInput, ImageSegmentationTaskOutput, ImageSegmentationTaskConfig>;
316
286
  }
317
287
  }
318
288
  //# sourceMappingURL=ImageSegmentationTask.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ImageSegmentationTask.d.ts","sourceRoot":"","sources":["../../src/task/ImageSegmentationTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,UAAU,EAAY,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAInD,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BN,CAAC;AA4BpC,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAcP,CAAC;AAEpC,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,OAAO,4BAA4B,CAAC,CAAC;AACzF,MAAM,MAAM,2BAA2B,GAAG,UAAU,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAE3F;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,YAAY,CACrD,0BAA0B,EAC1B,2BAA2B,EAC3B,UAAU,CACX;IACC,OAAuB,IAAI,SAA2B;IACtD,OAAuB,QAAQ,SAAqB;IACpD,OAAuB,KAAK,SAAwB;IACpD,OAAuB,WAAW,SACwC;IAC1E,OAAuB,WAAW,IAAI,cAAc,CAEnD;IACD,OAAuB,YAAY,IAAI,cAAc,CAEpD;CACF;AAED;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE7B,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC,CAAC;IACrC,UAAU,QAAQ;QAChB,iBAAiB,EAAE,cAAc,CAC/B,0BAA0B,EAC1B,2BAA2B,EAC3B,UAAU,CACX,CAAC;KACH;CACF"}
1
+ {"version":3,"file":"ImageSegmentationTask.d.ts","sourceRoot":"","sources":["../../src/task/ImageSegmentationTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAY,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAInD,eAAO,MAAM,4BAA4B;mBACjC,QAAQ;;iBAEZ,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBACL,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBACL,SAAS;qBACP,IAAI,EAAE,QAAQ;qBACd,KAAK,EAAE,WAAW;qBAClB,WAAW,EAAE,4CAA4C;qBACzD,OAAO,EAAE,CAAC;qBACV,OAAO,EAAE,CAAC;qBACV,OAAO,EAAE,GAAG;qBACZ,YAAY,EAAE,eAAe;;iBAE/B,aAAa;qBACX,IAAI,EAAE,QAAQ;qBACd,KAAK,EAAE,gBAAgB;qBACvB,WAAW,EAAE,kEAAkE;qBAC/E,OAAO,EAAE,CAAC;qBACV,OAAO,EAAE,CAAC;qBACV,OAAO,EAAE,GAAG;qBACZ,YAAY,EAAE,eAAe;;;;;CAKA,CAAC;AA4BpC,eAAO,MAAM,6BAA6B;mBAClC,QAAQ;;;;+BAIA,OAAO;;mCA9Bf,QAAQ;;iCAEZ,KAAK;qCACH,IAAI,EAAE,QAAQ;qCACd,KAAK,EAAE,OAAO;qCACd,WAAW,EAAE,mCAAmC;;iCAElD,KAAK;qCACH,IAAI,EAAE,QAAQ;qCACd,KAAK,EAAE,OAAO;qCACd,WAAW,EAAE,4CAA4C;qCACzD,OAAO,EAAE,CAAC;qCACV,OAAO,EAAE,CAAC;;iCAEZ,IAAI;qCACF,IAAI,EAAE,QAAQ;qCACd,MAAM,EAAE,OAAO;qCACf,KAAK,EAAE,MAAM;qCACb,WAAW,EAAE,YAAY;;;iDAGlB,OAAO,EAAE,OAAO,EAAE,MAAM;;;;+BAUrB,OAAO;;6BAAW,IAAI,EAAE,OAAO;6BAAE,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAEzC,oBAAoB;kCACd,4DAA4D;;;;;CAK5C,CAAC;AAEpC,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,OAAO,4BAA4B,CAAC,CAAC;AACzF,MAAM,MAAM,2BAA2B,GAAG,UAAU,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAC3F,MAAM,MAAM,2BAA2B,GAAG,UAAU,CAAC,0BAA0B,CAAC,CAAC;AAEjF;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,YAAY,CACrD,0BAA0B,EAC1B,2BAA2B,EAC3B,2BAA2B,CAC5B;IACC,OAAuB,IAAI,SAA2B;IACtD,OAAuB,QAAQ,SAAqB;IACpD,OAAuB,KAAK,SAAwB;IACpD,OAAuB,WAAW,SACwC;IAC1E,OAAuB,WAAW,IAAI,cAAc,CAEnD;IACD,OAAuB,YAAY,IAAI,cAAc,CAEpD;CACF;AAED;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,UACrB,0BAA0B,WACxB,2BAA2B;;;;;;;;;;;;;;EAGrC,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC,CAAC;IACrC,UAAU,QAAQ;QAChB,iBAAiB,EAAE,cAAc,CAC/B,0BAA0B,EAC1B,2BAA2B,EAC3B,2BAA2B,CAC5B,CAAC;KACH;CACF"}
@@ -3,7 +3,8 @@
3
3
  * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { CreateWorkflow, TaskConfig } from "@workglow/task-graph";
6
+ import { CreateWorkflow } from "@workglow/task-graph";
7
+ import type { TaskConfig } from "@workglow/task-graph";
7
8
  import { DataPortSchema, FromSchema } from "@workglow/util/schema";
8
9
  import { AiVisionTask } from "./base/AiVisionTask";
9
10
  export declare const ImageToTextInputSchema: {
@@ -190,10 +191,11 @@ export declare const ImageToTextOutputSchema: {
190
191
  };
191
192
  export type ImageToTextTaskInput = FromSchema<typeof ImageToTextInputSchema>;
192
193
  export type ImageToTextTaskOutput = FromSchema<typeof ImageToTextOutputSchema>;
194
+ export type ImageToTextTaskConfig = TaskConfig<ImageToTextTaskInput>;
193
195
  /**
194
196
  * Generates text descriptions from images using vision-language models
195
197
  */
196
- export declare class ImageToTextTask extends AiVisionTask<ImageToTextTaskInput, ImageToTextTaskOutput, TaskConfig> {
198
+ export declare class ImageToTextTask extends AiVisionTask<ImageToTextTaskInput, ImageToTextTaskOutput, ImageToTextTaskConfig> {
197
199
  static type: string;
198
200
  static category: string;
199
201
  static title: string;
@@ -207,43 +209,12 @@ export declare class ImageToTextTask extends AiVisionTask<ImageToTextTaskInput,
207
209
  * @param input The input parameters for image to text (image and model)
208
210
  * @returns Promise resolving to the generated text description
209
211
  */
210
- export declare const imageToText: (input: {
211
- image: string | {
212
- channels: number;
213
- data: {
214
- [x: string]: unknown;
215
- } | {
216
- channels: number;
217
- data: number[];
218
- height: number;
219
- rawChannels?: number | undefined;
220
- width: number;
221
- };
222
- height: number;
223
- width: number;
224
- };
225
- maxTokens?: number | undefined;
226
- model: string | {
227
- [x: string]: unknown;
228
- description?: string | undefined;
229
- metadata?: {
230
- [x: string]: unknown;
231
- } | undefined;
232
- model_id?: string | undefined;
233
- provider: string;
234
- provider_config: {
235
- [x: string]: unknown;
236
- credential_key?: string | undefined;
237
- };
238
- tasks?: string[] | undefined;
239
- title?: string | undefined;
240
- };
241
- }, config?: TaskConfig | undefined) => Promise<{
212
+ export declare const imageToText: (input: ImageToTextTaskInput, config?: ImageToTextTaskConfig) => Promise<{
242
213
  text: string | string[];
243
214
  }>;
244
215
  declare module "@workglow/task-graph" {
245
216
  interface Workflow {
246
- imageToText: CreateWorkflow<ImageToTextTaskInput, ImageToTextTaskOutput, TaskConfig>;
217
+ imageToText: CreateWorkflow<ImageToTextTaskInput, ImageToTextTaskOutput, ImageToTextTaskConfig>;
247
218
  }
248
219
  }
249
220
  //# sourceMappingURL=ImageToTextTask.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ImageToTextTask.d.ts","sourceRoot":"","sources":["../../src/task/ImageToTextTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,UAAU,EAAY,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAUnD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgBA,CAAC;AAEpC,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;CAWD,CAAC;AAEpC,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAC7E,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE/E;;GAEG;AACH,qBAAa,eAAgB,SAAQ,YAAY,CAC/C,oBAAoB,EACpB,qBAAqB,EACrB,UAAU,CACX;IACC,OAAuB,IAAI,SAAqB;IAChD,OAAuB,QAAQ,SAAqB;IACpD,OAAuB,KAAK,SAAmB;IAC/C,OAAuB,WAAW,SACuC;IACzE,OAAuB,WAAW,IAAI,cAAc,CAEnD;IACD,OAAuB,YAAY,IAAI,cAAc,CAEpD;CACF;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEvB,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC,CAAC;IACrC,UAAU,QAAQ;QAChB,WAAW,EAAE,cAAc,CAAC,oBAAoB,EAAE,qBAAqB,EAAE,UAAU,CAAC,CAAC;KACtF;CACF"}
1
+ {"version":3,"file":"ImageToTextTask.d.ts","sourceRoot":"","sources":["../../src/task/ImageToTextTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAY,MAAM,sBAAsB,CAAC;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAUnD,eAAO,MAAM,sBAAsB;mBAC3B,QAAQ;;iBAEZ,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBACL,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBACL,SAAS;qBACP,IAAI,EAAE,QAAQ;qBACd,KAAK,EAAE,YAAY;qBACnB,WAAW,EAAE,0CAA0C;qBACvD,OAAO,EAAE,CAAC;qBACV,OAAO,EAAE,IAAI;qBACb,YAAY,EAAE,eAAe;;;;;CAKA,CAAC;AAEpC,eAAO,MAAM,uBAAuB;mBAC5B,QAAQ;;;;+BAxBR,QAAQ;gCACP,MAAM;sCACA,gCAAgC;;+BAyBJ,OAAO;;;;;;;;;;;;;CAOf,CAAC;AAEpC,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAC7E,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAC/E,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;AAErE;;GAEG;AACH,qBAAa,eAAgB,SAAQ,YAAY,CAC/C,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,CACtB;IACC,OAAuB,IAAI,SAAqB;IAChD,OAAuB,QAAQ,SAAqB;IACpD,OAAuB,KAAK,SAAmB;IAC/C,OAAuB,WAAW,SACuC;IACzE,OAAuB,WAAW,IAAI,cAAc,CAEnD;IACD,OAAuB,YAAY,IAAI,cAAc,CAEpD;CACF;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,UAAW,oBAAoB,WAAW,qBAAqB;;EAEtF,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC,CAAC;IACrC,UAAU,QAAQ;QAChB,WAAW,EAAE,cAAc,CAAC,oBAAoB,EAAE,qBAAqB,EAAE,qBAAqB,CAAC,CAAC;KACjG;CACF"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Shared message conversion utilities for converting provider-agnostic
8
+ * ChatMessage arrays to provider-specific formats.
9
+ *
10
+ * These are pure functions safe for both main-thread and worker contexts.
11
+ * Providers with unique requirements (Anthropic, Gemini, LlamaCpp)
12
+ * maintain their own conversion logic.
13
+ */
14
+ import type { ToolCallingTaskInput } from "./ToolCallingTask";
15
+ export interface OpenAICompatMessage {
16
+ role: string;
17
+ content: string | null | Array<{
18
+ type: string;
19
+ [key: string]: unknown;
20
+ }>;
21
+ tool_calls?: Array<{
22
+ id: string;
23
+ type: "function";
24
+ function: {
25
+ name: string;
26
+ arguments: string;
27
+ };
28
+ }>;
29
+ tool_call_id?: string;
30
+ }
31
+ /**
32
+ * Converts ToolCallingTaskInput to OpenAI-compatible message format.
33
+ * Used by OpenAI and HuggingFace Inference providers.
34
+ *
35
+ * Multi-turn capable: preserves full tool call metadata across turns.
36
+ */
37
+ export declare function toOpenAIMessages(input: ToolCallingTaskInput): OpenAICompatMessage[];
38
+ export interface TextFlatMessage {
39
+ role: string;
40
+ content: string;
41
+ }
42
+ /**
43
+ * Converts ToolCallingTaskInput to a simplified text-only message format.
44
+ * Used by providers that don't natively support structured multi-turn
45
+ * tool calling (Ollama, HuggingFace Transformers).
46
+ *
47
+ * NOTE: This format discards tool_use blocks from assistant messages.
48
+ * The LLM will not see what tools it previously called. Multi-turn tool
49
+ * calling will have degraded quality on these providers.
50
+ */
51
+ export declare function toTextFlatMessages(input: ToolCallingTaskInput): TextFlatMessage[];
52
+ //# sourceMappingURL=MessageConversion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MessageConversion.d.ts","sourceRoot":"","sources":["../../src/task/MessageConversion.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAsB9D,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC,CAAC;IACzE,UAAU,CAAC,EAAE,KAAK,CAAC;QACjB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,UAAU,CAAC;QACjB,QAAQ,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC;KAC/C,CAAC,CAAC;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,oBAAoB,GAAG,mBAAmB,EAAE,CAuInF;AAMD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,oBAAoB,GAAG,eAAe,EAAE,CAqFjF"}