@workglow/ai 0.0.90 → 0.0.92

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.
@@ -0,0 +1,140 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { TaskInput, TaskOutput } from "@workglow/task-graph";
7
+ import { type WorkerServer } from "@workglow/util";
8
+ import type { ModelConfig } from "../model/ModelSchema";
9
+ import { type AiProviderRunFn, type AiProviderStreamFn } from "./AiProviderRegistry";
10
+ /**
11
+ * Execution mode for an AI provider.
12
+ * - "inline": run functions execute directly in the current thread
13
+ * - "worker": run functions are proxied to a Web Worker via WorkerManager
14
+ */
15
+ export type AiProviderMode = "inline" | "worker";
16
+ /**
17
+ * Options for registering an AI provider.
18
+ */
19
+ export interface AiProviderRegisterOptions {
20
+ /** Execution mode: "inline" (same thread) or "worker" (Web Worker) */
21
+ mode: AiProviderMode;
22
+ /** The Web Worker instance. Required when mode is "worker". */
23
+ worker?: Worker;
24
+ /** Job queue configuration */
25
+ queue?: {
26
+ /** Maximum number of concurrent jobs. Defaults to 1. */
27
+ concurrency?: number;
28
+ /** Set to false to skip automatic queue creation. Defaults to true. */
29
+ autoCreate?: boolean;
30
+ };
31
+ }
32
+ /**
33
+ * Abstract base class for AI providers.
34
+ *
35
+ * Each provider subclass declares a `taskTypes` array listing the task type
36
+ * names it supports. The actual run function implementations (`tasks` record)
37
+ * are **injected via the constructor** so that heavy ML library imports remain
38
+ * at the call site. This allows the provider class to be imported on the main
39
+ * thread without pulling in heavy dependencies when running in worker mode.
40
+ *
41
+ * The base class handles:
42
+ * - Registering run functions with the AiProviderRegistry (inline or worker mode)
43
+ * - Creating a default job queue
44
+ * - Registering functions on a WorkerServer (for worker-side code)
45
+ * - Lifecycle management (initialize / dispose)
46
+ *
47
+ * @example
48
+ * ```typescript
49
+ * // Worker mode (main thread) -- lightweight, no heavy imports:
50
+ * await new MyProvider().register({
51
+ * mode: "worker",
52
+ * worker: new Worker(new URL("./worker.ts", import.meta.url), { type: "module" }),
53
+ * });
54
+ *
55
+ * // Inline mode -- caller provides the tasks (imports heavy library):
56
+ * import { MY_TASKS } from "./MyJobRunFns";
57
+ * await new MyProvider(MY_TASKS).register({ mode: "inline" });
58
+ *
59
+ * // Worker side -- caller provides the tasks:
60
+ * import { MY_TASKS } from "./MyJobRunFns";
61
+ * new MyProvider(MY_TASKS).registerOnWorkerServer(workerServer);
62
+ * ```
63
+ */
64
+ export declare abstract class AiProvider<TModelConfig extends ModelConfig = ModelConfig> {
65
+ /** Unique provider identifier (e.g., "HF_TRANSFORMERS_ONNX") */
66
+ abstract readonly name: string;
67
+ /**
68
+ * List of task type names this provider supports.
69
+ * This is lightweight metadata -- no heavy library imports needed.
70
+ */
71
+ abstract readonly taskTypes: readonly string[];
72
+ /**
73
+ * Map of task type names to their run functions.
74
+ * Injected via constructor. Required for inline mode and worker-server
75
+ * registration; not needed for worker-mode registration on the main thread.
76
+ */
77
+ protected readonly tasks?: Record<string, AiProviderRunFn<any, any, TModelConfig>>;
78
+ /**
79
+ * Map of task type names to their streaming run functions.
80
+ * Injected via constructor alongside `tasks`. Only needed for tasks that
81
+ * support streaming output (e.g., text generation, summarization).
82
+ */
83
+ protected readonly streamTasks?: Record<string, AiProviderStreamFn<any, any, TModelConfig>>;
84
+ constructor(tasks?: Record<string, AiProviderRunFn<any, any, TModelConfig>>, streamTasks?: Record<string, AiProviderStreamFn<any, any, TModelConfig>>);
85
+ /** Get all task type names this provider supports */
86
+ get supportedTaskTypes(): readonly string[];
87
+ /**
88
+ * Get the run function for a specific task type.
89
+ * @param taskType - The task type name (e.g., "TextEmbeddingTask")
90
+ * @returns The run function, or undefined if the task type is not supported or tasks not provided
91
+ */
92
+ getRunFn<I extends TaskInput = TaskInput, O extends TaskOutput = TaskOutput>(taskType: string): AiProviderRunFn<I, O, TModelConfig> | undefined;
93
+ /**
94
+ * Get the streaming function for a specific task type.
95
+ * @param taskType - The task type name (e.g., "TextGenerationTask")
96
+ * @returns The stream function, or undefined if streaming is not supported for this task type
97
+ */
98
+ getStreamFn<I extends TaskInput = TaskInput, O extends TaskOutput = TaskOutput>(taskType: string): AiProviderStreamFn<I, O, TModelConfig> | undefined;
99
+ /**
100
+ * Register this provider on the main thread.
101
+ *
102
+ * In "inline" mode, registers direct run functions with the AiProviderRegistry.
103
+ * Requires `tasks` to have been provided via the constructor.
104
+ *
105
+ * In "worker" mode, registers the worker with WorkerManager and creates proxy
106
+ * functions that delegate to the worker. Does NOT require `tasks`.
107
+ *
108
+ * Both modes create a job queue unless `queue.autoCreate` is set to false.
109
+ *
110
+ * @param options - Registration options (mode, worker, queue config)
111
+ */
112
+ register(options?: AiProviderRegisterOptions): Promise<void>;
113
+ /**
114
+ * Register this provider's run functions on a WorkerServer.
115
+ * Call this inside a Web Worker to make the provider's functions
116
+ * available for remote invocation from the main thread.
117
+ *
118
+ * Requires `tasks` to have been provided via the constructor.
119
+ *
120
+ * @param workerServer - The WorkerServer instance to register on
121
+ */
122
+ registerOnWorkerServer(workerServer: WorkerServer): void;
123
+ /**
124
+ * Hook for provider-specific initialization.
125
+ * Called at the start of `register()`, before any functions are registered.
126
+ * Override in subclasses to perform setup (e.g., configuring WASM backends).
127
+ */
128
+ protected onInitialize(_options: AiProviderRegisterOptions): Promise<void>;
129
+ /**
130
+ * Dispose of provider resources.
131
+ * Override in subclasses to clean up (e.g., clearing pipeline caches).
132
+ */
133
+ dispose(): Promise<void>;
134
+ /**
135
+ * Create and register a default job queue for this provider.
136
+ * Uses InMemoryQueueStorage with a ConcurrencyLimiter.
137
+ */
138
+ protected createQueue(concurrency: number): Promise<void>;
139
+ }
140
+ //# sourceMappingURL=AiProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AiProvider.d.ts","sourceRoot":"","sources":["../../src/provider/AiProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAyC,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC1F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,kBAAkB,EAExB,MAAM,sBAAsB,CAAC;AAE9B;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEjD;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,sEAAsE;IACtE,IAAI,EAAE,cAAc,CAAC;IACrB,+DAA+D;IAC/D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,KAAK,CAAC,EAAE;QACN,wDAAwD;QACxD,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,uEAAuE;QACvE,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB,CAAC;CACH;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,8BAAsB,UAAU,CAAC,YAAY,SAAS,WAAW,GAAG,WAAW;IAC7E,gEAAgE;IAChE,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAE/B;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAE/C;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC;IAEnF;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC;gBAG1F,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC,EAC/D,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;IAM1E,qDAAqD;IACrD,IAAI,kBAAkB,IAAI,SAAS,MAAM,EAAE,CAE1C;IAED;;;;OAIG;IACH,QAAQ,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAAE,CAAC,SAAS,UAAU,GAAG,UAAU,EACzE,QAAQ,EAAE,MAAM,GACf,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,GAAG,SAAS;IAIlD;;;;OAIG;IACH,WAAW,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAAE,CAAC,SAAS,UAAU,GAAG,UAAU,EAC5E,QAAQ,EAAE,MAAM,GACf,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,CAAC,GAAG,SAAS;IAIrD;;;;;;;;;;;;OAYG;IACG,QAAQ,CAAC,OAAO,GAAE,yBAA8C,GAAG,OAAO,CAAC,IAAI,CAAC;IA+CtF;;;;;;;;OAQG;IACH,sBAAsB,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI;IAiBxD;;;;OAIG;cACa,YAAY,CAAC,QAAQ,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IAEhF;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAE9B;;;OAGG;cACa,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGhE"}
@@ -3,12 +3,19 @@
3
3
  * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { TaskInput, TaskOutput } from "@workglow/task-graph";
6
+ import { TaskInput, TaskOutput, type StreamEvent } from "@workglow/task-graph";
7
7
  import type { ModelConfig } from "../model/ModelSchema";
8
+ import type { AiProvider } from "./AiProvider";
8
9
  /**
9
10
  * Type for the run function for the AiJob
10
11
  */
11
12
  export type AiProviderRunFn<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput, Model extends ModelConfig = ModelConfig> = (input: Input, model: Model | undefined, update_progress: (progress: number, message?: string, details?: any) => void, signal: AbortSignal) => Promise<Output>;
13
+ /**
14
+ * Type for the streaming run function for the AiJob.
15
+ * Returns an AsyncIterable of StreamEvents instead of a Promise.
16
+ * No `update_progress` callback -- for streaming providers, the stream itself IS the progress signal.
17
+ */
18
+ export type AiProviderStreamFn<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput, Model extends ModelConfig = ModelConfig> = (input: Input, model: Model | undefined, signal: AbortSignal) => AsyncIterable<StreamEvent<Output>>;
12
19
  /**
13
20
  * Registry that manages provider-specific task execution functions and job queues.
14
21
  * Handles the registration, retrieval, and execution of task processing functions
@@ -16,6 +23,23 @@ export type AiProviderRunFn<Input extends TaskInput = TaskInput, Output extends
16
23
  */
17
24
  export declare class AiProviderRegistry {
18
25
  runFnRegistry: Map<string, Map<string, AiProviderRunFn<any, any>>>;
26
+ streamFnRegistry: Map<string, Map<string, AiProviderStreamFn<any, any>>>;
27
+ private providers;
28
+ /**
29
+ * Registers an AiProvider instance for lifecycle management and introspection.
30
+ * @param provider - The provider instance to register
31
+ */
32
+ registerProvider(provider: AiProvider<any>): void;
33
+ /**
34
+ * Retrieves a registered AiProvider instance by name.
35
+ * @param name - The provider name (e.g., "HF_TRANSFORMERS_ONNX")
36
+ * @returns The provider instance, or undefined if not found
37
+ */
38
+ getProvider(name: string): AiProvider<any> | undefined;
39
+ /**
40
+ * Returns all registered AiProvider instances.
41
+ */
42
+ getProviders(): Map<string, AiProvider<any>>;
19
43
  /**
20
44
  * Registers a task execution function for a specific task type and model provider
21
45
  * @param taskType - The type of task (e.g., 'text-generation', 'embedding')
@@ -24,6 +48,25 @@ export declare class AiProviderRegistry {
24
48
  */
25
49
  registerRunFn<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput>(modelProvider: string, taskType: string, runFn: AiProviderRunFn<Input, Output>): void;
26
50
  registerAsWorkerRunFn<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput>(modelProvider: string, taskType: string): void;
51
+ /**
52
+ * Registers a streaming execution function for a specific task type and model provider.
53
+ * @param modelProvider - The provider of the model (e.g., 'openai', 'anthropic', etc.)
54
+ * @param taskType - The type of task (e.g., 'TextGenerationTask')
55
+ * @param streamFn - The async generator function that yields StreamEvents
56
+ */
57
+ registerStreamFn<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput>(modelProvider: string, taskType: string, streamFn: AiProviderStreamFn<Input, Output>): void;
58
+ /**
59
+ * Registers a worker-proxied streaming function for a specific task type and model provider.
60
+ * Creates a proxy that delegates streaming to a Web Worker via WorkerManager.
61
+ * The proxy calls `callWorkerStreamFunction()` which sends a `stream: true` call message
62
+ * and yields `stream_chunk` messages from the worker as an AsyncIterable.
63
+ */
64
+ registerAsWorkerStreamFn<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput>(modelProvider: string, taskType: string): void;
65
+ /**
66
+ * Retrieves the streaming execution function for a task type and model provider.
67
+ * Returns undefined if no streaming function is registered (fallback to non-streaming).
68
+ */
69
+ getStreamFn<Input extends TaskInput = TaskInput, Output extends TaskOutput = TaskOutput>(modelProvider: string, taskType: string): AiProviderStreamFn<Input, Output> | undefined;
27
70
  /**
28
71
  * Retrieves the direct execution function for a task type and model
29
72
  * Bypasses the job queue system for immediate execution
@@ -1 +1 @@
1
- {"version":3,"file":"AiProviderRegistry.d.ts","sourceRoot":"","sources":["../../src/provider/AiProviderRegistry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAE7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD;;GAEG;AACH,MAAM,MAAM,eAAe,CACzB,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,KAAK,SAAS,WAAW,GAAG,WAAW,IACrC,CACF,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,GAAG,SAAS,EACxB,eAAe,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,EAC5E,MAAM,EAAE,WAAW,KAChB,OAAO,CAAC,MAAM,CAAC,CAAC;AAErB;;;;GAIG;AACH,qBAAa,kBAAkB;IAC7B,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAa;IAE/E;;;;;OAKG;IACH,aAAa,CAAC,KAAK,SAAS,SAAS,GAAG,SAAS,EAAE,MAAM,SAAS,UAAU,GAAG,UAAU,EACvF,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC;IAQvC,qBAAqB,CACnB,KAAK,SAAS,SAAS,GAAG,SAAS,EACnC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAsBzC;;;OAGG;IACH,cAAc,CAAC,KAAK,SAAS,SAAS,GAAG,SAAS,EAAE,MAAM,SAAS,UAAU,GAAG,UAAU,EACxF,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM;;;;;;;;;;;;;;CAWnB;AAID,wBAAgB,qBAAqB,uBAGpC;AACD,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,kBAAkB,QAE3D"}
1
+ {"version":3,"file":"AiProviderRegistry.d.ts","sourceRoot":"","sources":["../../src/provider/AiProviderRegistry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Create and register a default job queue for an AI provider.
8
+ * Uses InMemoryQueueStorage with a ConcurrencyLimiter.
9
+ *
10
+ * Extracted to a separate module to avoid circular dependencies between
11
+ * AiProvider, AiJob, and the storage/job-queue/task-graph packages.
12
+ *
13
+ * @param providerName - Unique provider identifier (used as queue name)
14
+ * @param concurrency - Maximum number of concurrent jobs
15
+ */
16
+ export declare function createDefaultQueue(providerName: string, concurrency: number): Promise<void>;
17
+ //# sourceMappingURL=createDefaultQueue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createDefaultQueue.d.ts","sourceRoot":"","sources":["../../src/queue/createDefaultQueue.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH;;;;;;;;;GASG;AACH,wBAAsB,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBjG"}
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { CreateWorkflow, JobQueueTaskConfig } from "@workglow/task-graph";
7
7
  import { DataPortSchema, FromSchema } from "@workglow/util";
8
- import { AiTask } from "./base/AiTask";
8
+ import { StreamingAiTask } from "./base/StreamingAiTask";
9
9
  export declare const TextGenerationInputSchema: {
10
10
  readonly type: "object";
11
11
  readonly properties: {
@@ -114,6 +114,7 @@ export declare const TextGenerationOutputSchema: {
114
114
  readonly type: "string";
115
115
  readonly title: "Text";
116
116
  readonly description: "The generated text";
117
+ readonly "x-stream": "append";
117
118
  };
118
119
  };
119
120
  readonly required: readonly ["text"];
@@ -121,7 +122,7 @@ export declare const TextGenerationOutputSchema: {
121
122
  };
122
123
  export type TextGenerationTaskInput = FromSchema<typeof TextGenerationInputSchema>;
123
124
  export type TextGenerationTaskOutput = FromSchema<typeof TextGenerationOutputSchema>;
124
- export declare class TextGenerationTask extends AiTask<TextGenerationTaskInput, TextGenerationTaskOutput, JobQueueTaskConfig> {
125
+ export declare class TextGenerationTask extends StreamingAiTask<TextGenerationTaskInput, TextGenerationTaskOutput, JobQueueTaskConfig> {
125
126
  static type: string;
126
127
  static category: string;
127
128
  static title: string;
@@ -1 +1 @@
1
- {"version":3,"file":"TextGenerationTask.d.ts","sourceRoot":"","sources":["../../src/task/TextGenerationTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAY,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAWvC,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoDH,CAAC;AAEpC,eAAO,MAAM,0BAA0B;;;;;;;;;;;CAOJ,CAAC;AAEpC,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC;AACnF,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAErF,qBAAa,kBAAmB,SAAQ,MAAM,CAC5C,uBAAuB,EACvB,wBAAwB,EACxB,kBAAkB,CACnB;IACC,OAAc,IAAI,SAAwB;IAC1C,OAAc,QAAQ,SAAmB;IACzC,OAAc,KAAK,SAAqB;IACxC,OAAc,WAAW,SAC2D;WACtE,WAAW,IAAI,cAAc;WAG7B,YAAY,IAAI,cAAc;CAG7C;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,OAAO,uBAAuB,EAAE,SAAS,kBAAkB;;EAEzF,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,QAAQ;QAChB,cAAc,EAAE,cAAc,CAC5B,uBAAuB,EACvB,wBAAwB,EACxB,kBAAkB,CACnB,CAAC;KACH;CACF"}
1
+ {"version":3,"file":"TextGenerationTask.d.ts","sourceRoot":"","sources":["../../src/task/TextGenerationTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAY,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAWzD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoDH,CAAC;AAEpC,eAAO,MAAM,0BAA0B;;;;;;;;;;;;CAOJ,CAAC;AAEpC,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC;AACnF,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAErF,qBAAa,kBAAmB,SAAQ,eAAe,CACrD,uBAAuB,EACvB,wBAAwB,EACxB,kBAAkB,CACnB;IACC,OAAc,IAAI,SAAwB;IAC1C,OAAc,QAAQ,SAAmB;IACzC,OAAc,KAAK,SAAqB;IACxC,OAAc,WAAW,SAC2D;WACtE,WAAW,IAAI,cAAc;WAG7B,YAAY,IAAI,cAAc;CAG7C;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,OAAO,uBAAuB,EAAE,SAAS,kBAAkB;;EAEzF,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,QAAQ;QAChB,cAAc,EAAE,cAAc,CAC5B,uBAAuB,EACvB,wBAAwB,EACxB,kBAAkB,CACnB,CAAC;KACH;CACF"}
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { CreateWorkflow, JobQueueTaskConfig } from "@workglow/task-graph";
7
7
  import { DataPortSchema, FromSchema } from "@workglow/util";
8
- import { AiTask } from "./base/AiTask";
8
+ import { StreamingAiTask } from "./base/StreamingAiTask";
9
9
  export declare const TextQuestionAnswerInputSchema: {
10
10
  readonly type: "object";
11
11
  readonly properties: {
@@ -79,6 +79,7 @@ export declare const TextQuestionAnswerOutputSchema: {
79
79
  readonly type: "string";
80
80
  readonly title: "Text";
81
81
  readonly description: "The generated text";
82
+ readonly "x-stream": "append";
82
83
  };
83
84
  };
84
85
  readonly required: readonly ["text"];
@@ -89,7 +90,7 @@ export type TextQuestionAnswerTaskOutput = FromSchema<typeof TextQuestionAnswerO
89
90
  /**
90
91
  * This is a special case of text generation that takes a context and a question
91
92
  */
92
- export declare class TextQuestionAnswerTask extends AiTask<TextQuestionAnswerTaskInput, TextQuestionAnswerTaskOutput, JobQueueTaskConfig> {
93
+ export declare class TextQuestionAnswerTask extends StreamingAiTask<TextQuestionAnswerTaskInput, TextQuestionAnswerTaskOutput, JobQueueTaskConfig> {
93
94
  static type: string;
94
95
  static category: string;
95
96
  static title: string;
@@ -1 +1 @@
1
- {"version":3,"file":"TextQuestionAnswerTask.d.ts","sourceRoot":"","sources":["../../src/task/TextQuestionAnswerTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAY,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAuBvC,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASP,CAAC;AAEpC,eAAO,MAAM,8BAA8B;;;;;;;;;;;CAOR,CAAC;AAEpC,MAAM,MAAM,2BAA2B,GAAG,UAAU,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAC3F,MAAM,MAAM,4BAA4B,GAAG,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAE7F;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,MAAM,CAChD,2BAA2B,EAC3B,4BAA4B,EAC5B,kBAAkB,CACnB;IACC,OAAc,IAAI,SAA4B;IAC9C,OAAc,QAAQ,SAAmB;IACzC,OAAc,KAAK,SAA0B;IAC7C,OAAc,WAAW,SAAuE;WAClF,WAAW,IAAI,cAAc;WAG7B,YAAY,IAAI,cAAc;CAG7C;AAED;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAC7B,OAAO,2BAA2B,EAClC,SAAS,kBAAkB;;EAG5B,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,QAAQ;QAChB,kBAAkB,EAAE,cAAc,CAChC,2BAA2B,EAC3B,4BAA4B,EAC5B,kBAAkB,CACnB,CAAC;KACH;CACF"}
1
+ {"version":3,"file":"TextQuestionAnswerTask.d.ts","sourceRoot":"","sources":["../../src/task/TextQuestionAnswerTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAY,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAuBzD,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASP,CAAC;AAEpC,eAAO,MAAM,8BAA8B;;;;;;;;;;;;CAOR,CAAC;AAEpC,MAAM,MAAM,2BAA2B,GAAG,UAAU,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAC3F,MAAM,MAAM,4BAA4B,GAAG,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAE7F;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,eAAe,CACzD,2BAA2B,EAC3B,4BAA4B,EAC5B,kBAAkB,CACnB;IACC,OAAc,IAAI,SAA4B;IAC9C,OAAc,QAAQ,SAAmB;IACzC,OAAc,KAAK,SAA0B;IAC7C,OAAc,WAAW,SAAuE;WAClF,WAAW,IAAI,cAAc;WAG7B,YAAY,IAAI,cAAc;CAG7C;AAED;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAC7B,OAAO,2BAA2B,EAClC,SAAS,kBAAkB;;EAG5B,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,QAAQ;QAChB,kBAAkB,EAAE,cAAc,CAChC,2BAA2B,EAC3B,4BAA4B,EAC5B,kBAAkB,CACnB,CAAC;KACH;CACF"}
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { CreateWorkflow, JobQueueTaskConfig } from "@workglow/task-graph";
7
7
  import { DataPortSchema, FromSchema } from "@workglow/util";
8
- import { AiTask } from "./base/AiTask";
8
+ import { StreamingAiTask } from "./base/StreamingAiTask";
9
9
  export declare const TextRewriterInputSchema: {
10
10
  readonly type: "object";
11
11
  readonly properties: {
@@ -79,6 +79,7 @@ export declare const TextRewriterOutputSchema: {
79
79
  readonly type: "string";
80
80
  readonly title: "Text";
81
81
  readonly description: "The rewritten text";
82
+ readonly "x-stream": "append";
82
83
  };
83
84
  };
84
85
  readonly required: readonly ["text"];
@@ -89,7 +90,7 @@ export type TextRewriterTaskOutput = FromSchema<typeof TextRewriterOutputSchema>
89
90
  /**
90
91
  * This is a special case of text generation that takes a prompt and text to rewrite
91
92
  */
92
- export declare class TextRewriterTask extends AiTask<TextRewriterTaskInput, TextRewriterTaskOutput> {
93
+ export declare class TextRewriterTask extends StreamingAiTask<TextRewriterTaskInput, TextRewriterTaskOutput> {
93
94
  static type: string;
94
95
  static category: string;
95
96
  static title: string;
@@ -1 +1 @@
1
- {"version":3,"file":"TextRewriterTask.d.ts","sourceRoot":"","sources":["../../src/task/TextRewriterTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAY,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAKvC,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiBD,CAAC;AAEpC,eAAO,MAAM,wBAAwB;;;;;;;;;;;CAWF,CAAC;AAEpC,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAC/E,MAAM,MAAM,sBAAsB,GAAG,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAEjF;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,MAAM,CAAC,qBAAqB,EAAE,sBAAsB,CAAC;IACzF,OAAc,IAAI,SAAsB;IACxC,OAAc,QAAQ,SAAmB;IACzC,OAAc,KAAK,SAAmB;IACtC,OAAc,WAAW,SAAqE;WAChF,WAAW,IAAI,cAAc;WAG7B,YAAY,IAAI,cAAc;CAG7C;AAED;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,qBAAqB,EAAE,SAAS,kBAAkB;;EAErF,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,QAAQ;QAChB,YAAY,EAAE,cAAc,CAAC,qBAAqB,EAAE,sBAAsB,EAAE,kBAAkB,CAAC,CAAC;KACjG;CACF"}
1
+ {"version":3,"file":"TextRewriterTask.d.ts","sourceRoot":"","sources":["../../src/task/TextRewriterTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAY,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAIzD,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiBD,CAAC;AAEpC,eAAO,MAAM,wBAAwB;;;;;;;;;;;;CAYF,CAAC;AAEpC,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAC/E,MAAM,MAAM,sBAAsB,GAAG,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAEjF;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,eAAe,CACnD,qBAAqB,EACrB,sBAAsB,CACvB;IACC,OAAc,IAAI,SAAsB;IACxC,OAAc,QAAQ,SAAmB;IACzC,OAAc,KAAK,SAAmB;IACtC,OAAc,WAAW,SAAqE;WAChF,WAAW,IAAI,cAAc;WAG7B,YAAY,IAAI,cAAc;CAG7C;AAED;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,qBAAqB,EAAE,SAAS,kBAAkB;;EAErF,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,QAAQ;QAChB,YAAY,EAAE,cAAc,CAAC,qBAAqB,EAAE,sBAAsB,EAAE,kBAAkB,CAAC,CAAC;KACjG;CACF"}
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { CreateWorkflow, JobQueueTaskConfig } from "@workglow/task-graph";
7
7
  import { DataPortSchema, FromSchema } from "@workglow/util";
8
- import { AiTask } from "./base/AiTask";
8
+ import { StreamingAiTask } from "./base/StreamingAiTask";
9
9
  export declare const TextSummaryInputSchema: {
10
10
  readonly type: "object";
11
11
  readonly properties: {
@@ -74,6 +74,7 @@ export declare const TextSummaryOutputSchema: {
74
74
  readonly type: "string";
75
75
  readonly title: "Text";
76
76
  readonly description: "The summarized text";
77
+ readonly "x-stream": "append";
77
78
  };
78
79
  };
79
80
  readonly required: readonly ["text"];
@@ -84,7 +85,7 @@ export type TextSummaryTaskOutput = FromSchema<typeof TextSummaryOutputSchema>;
84
85
  /**
85
86
  * This summarizes a piece of text
86
87
  */
87
- export declare class TextSummaryTask extends AiTask<TextSummaryTaskInput, TextSummaryTaskOutput> {
88
+ export declare class TextSummaryTask extends StreamingAiTask<TextSummaryTaskInput, TextSummaryTaskOutput> {
88
89
  static type: string;
89
90
  static category: string;
90
91
  static title: string;
@@ -1 +1 @@
1
- {"version":3,"file":"TextSummaryTask.d.ts","sourceRoot":"","sources":["../../src/task/TextSummaryTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAY,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAKvC,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAYA,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;AAEH,qBAAa,eAAgB,SAAQ,MAAM,CAAC,oBAAoB,EAAE,qBAAqB,CAAC;IACtF,OAAc,IAAI,SAAqB;IACvC,OAAc,QAAQ,SAAmB;IACzC,OAAc,KAAK,SAAkB;IACrC,OAAc,WAAW,SACgD;WAC3D,WAAW,IAAI,cAAc;WAG7B,YAAY,IAAI,cAAc;CAG7C;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,GAAU,OAAO,oBAAoB,EAAE,SAAS,kBAAkB;;EAEzF,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,QAAQ;QAChB,WAAW,EAAE,cAAc,CAAC,oBAAoB,EAAE,qBAAqB,EAAE,kBAAkB,CAAC,CAAC;KAC9F;CACF"}
1
+ {"version":3,"file":"TextSummaryTask.d.ts","sourceRoot":"","sources":["../../src/task/TextSummaryTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAY,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAIzD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAYA,CAAC;AAEpC,eAAO,MAAM,uBAAuB;;;;;;;;;;;;CAYD,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;AAEH,qBAAa,eAAgB,SAAQ,eAAe,CAAC,oBAAoB,EAAE,qBAAqB,CAAC;IAC/F,OAAc,IAAI,SAAqB;IACvC,OAAc,QAAQ,SAAmB;IACzC,OAAc,KAAK,SAAkB;IACrC,OAAc,WAAW,SACgD;WAC3D,WAAW,IAAI,cAAc;WAG7B,YAAY,IAAI,cAAc;CAG7C;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,GAAU,OAAO,oBAAoB,EAAE,SAAS,kBAAkB;;EAEzF,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,QAAQ;QAChB,WAAW,EAAE,cAAc,CAAC,oBAAoB,EAAE,qBAAqB,EAAE,kBAAkB,CAAC,CAAC;KAC9F;CACF"}
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { CreateWorkflow, JobQueueTaskConfig } from "@workglow/task-graph";
7
7
  import { DataPortSchema, FromSchema } from "@workglow/util";
8
- import { AiTask } from "./base/AiTask";
8
+ import { StreamingAiTask } from "./base/StreamingAiTask";
9
9
  export declare const TextTranslationInputSchema: {
10
10
  readonly type: "object";
11
11
  readonly properties: {
@@ -88,6 +88,7 @@ export declare const TextTranslationOutputSchema: {
88
88
  readonly type: "string";
89
89
  readonly title: "Text";
90
90
  readonly description: "The translated text";
91
+ readonly "x-stream": "replace";
91
92
  };
92
93
  readonly target_lang: {
93
94
  readonly type: "string";
@@ -105,7 +106,7 @@ export type TextTranslationTaskOutput = FromSchema<typeof TextTranslationOutputS
105
106
  /**
106
107
  * This translates text from one language to another
107
108
  */
108
- export declare class TextTranslationTask extends AiTask<TextTranslationTaskInput, TextTranslationTaskOutput> {
109
+ export declare class TextTranslationTask extends StreamingAiTask<TextTranslationTaskInput, TextTranslationTaskOutput> {
109
110
  static type: string;
110
111
  static category: string;
111
112
  static title: string;
@@ -1 +1 @@
1
- {"version":3,"file":"TextTranslationTask.d.ts","sourceRoot":"","sources":["../../src/task/TextTranslationTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAY,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAWvC,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwBJ,CAAC;AAEpC,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;CAaL,CAAC;AAEpC,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC;AACrF,MAAM,MAAM,yBAAyB,GAAG,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEvF;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,MAAM,CAC7C,wBAAwB,EACxB,yBAAyB,CAC1B;IACC,OAAc,IAAI,SAAyB;IAC3C,OAAc,QAAQ,SAAmB;IACzC,OAAc,KAAK,SAAsB;IACzC,OAAc,WAAW,SAAwE;WACnF,WAAW,IAAI,cAAc;WAG7B,YAAY,IAAI,cAAc;CAG7C;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAI,OAAO,wBAAwB,EAAE,SAAS,kBAAkB;;;EAE3F,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,QAAQ;QAChB,eAAe,EAAE,cAAc,CAC7B,wBAAwB,EACxB,yBAAyB,EACzB,kBAAkB,CACnB,CAAC;KACH;CACF"}
1
+ {"version":3,"file":"TextTranslationTask.d.ts","sourceRoot":"","sources":["../../src/task/TextTranslationTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAY,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAWzD,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwBJ,CAAC;AAEpC,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;CAaL,CAAC;AAEpC,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC;AACrF,MAAM,MAAM,yBAAyB,GAAG,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEvF;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,eAAe,CACtD,wBAAwB,EACxB,yBAAyB,CAC1B;IACC,OAAc,IAAI,SAAyB;IAC3C,OAAc,QAAQ,SAAmB;IACzC,OAAc,KAAK,SAAsB;IACzC,OAAc,WAAW,SAAwE;WACnF,WAAW,IAAI,cAAc;WAG7B,YAAY,IAAI,cAAc;CAG7C;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAI,OAAO,wBAAwB,EAAE,SAAS,kBAAkB;;;EAE3F,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,QAAQ;QAChB,eAAe,EAAE,cAAc,CAC7B,wBAAwB,EACxB,yBAAyB,EACzB,kBAAkB,CACnB,CAAC;KACH;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"VectorQuantizeTask.d.ts","sourceRoot":"","sources":["../../src/task/VectorQuantizeTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,IAAI,EAAY,MAAM,sBAAsB,CAAC;AAC1F,OAAO,EACL,cAAc,EACd,UAAU,EAGV,UAAU,EAEV,uBAAuB,EACxB,MAAM,gBAAgB,CAAC;AAExB,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCkB,CAAC;AAEpC,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmCiB,CAAC;AAEpC,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAAC,OAAO,WAAW,EAAE,uBAAuB,CAAC,CAAC;AAC9F,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,OAAO,YAAY,EAAE,uBAAuB,CAAC,CAAC;AAEhG;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,IAAI,CAC1C,uBAAuB,EACvB,wBAAwB,EACxB,kBAAkB,CACnB;IACC,OAAc,IAAI,SAAwB;IAC1C,OAAc,QAAQ,SAAuB;IAC7C,OAAc,KAAK,SAAqB;IACxC,OAAc,WAAW,SAAgE;IACzF,OAAc,SAAS,UAAQ;WAEjB,WAAW,IAAI,cAAc;WAI7B,YAAY,IAAI,cAAc;IAItC,eAAe,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAexF,OAAO,CAAC,aAAa;IAWrB,OAAO,CAAC,cAAc;IAuCtB;;OAEG;IACH,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,gBAAgB;CAQzB;AAED,eAAO,MAAM,cAAc,GAAI,OAAO,uBAAuB,EAAE,SAAS,kBAAkB;;;;EAEzF,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,QAAQ;QAChB,cAAc,EAAE,cAAc,CAC5B,uBAAuB,EACvB,wBAAwB,EACxB,kBAAkB,CACnB,CAAC;KACH;CACF"}
1
+ {"version":3,"file":"VectorQuantizeTask.d.ts","sourceRoot":"","sources":["../../src/task/VectorQuantizeTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,IAAI,EAAY,MAAM,sBAAsB,CAAC;AAC1F,OAAO,EACL,cAAc,EACd,UAAU,EAGV,UAAU,EAEV,uBAAuB,EACxB,MAAM,gBAAgB,CAAC;AAExB,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCkB,CAAC;AAEpC,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmCiB,CAAC;AAEpC,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAAC,OAAO,WAAW,EAAE,uBAAuB,CAAC,CAAC;AAC9F,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,OAAO,YAAY,EAAE,uBAAuB,CAAC,CAAC;AAEhG;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,IAAI,CAC1C,uBAAuB,EACvB,wBAAwB,EACxB,kBAAkB,CACnB;IACC,OAAc,IAAI,SAAwB;IAC1C,OAAc,QAAQ,SAAY;IAClC,OAAc,KAAK,SAAc;IACjC,OAAc,WAAW,SAAgE;IACzF,OAAc,SAAS,UAAQ;WAEjB,WAAW,IAAI,cAAc;WAI7B,YAAY,IAAI,cAAc;IAItC,eAAe,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAexF,OAAO,CAAC,aAAa;IAWrB,OAAO,CAAC,cAAc;IAuCtB;;OAEG;IACH,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,gBAAgB;CAQzB;AAED,eAAO,MAAM,cAAc,GAAI,OAAO,uBAAuB,EAAE,SAAS,kBAAkB;;;;EAEzF,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,QAAQ;QAChB,cAAc,EAAE,cAAc,CAC5B,uBAAuB,EACvB,wBAAwB,EACxB,kBAAkB,CACnB,CAAC;KACH;CACF"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * @description Base class for AI tasks that support streaming output.
8
+ * Extends AiTask with executeStream() that yields StreamEvents from the provider.
9
+ */
10
+ import { JobQueueTaskConfig, type IExecuteContext, type StreamEvent, type TaskOutput } from "@workglow/task-graph";
11
+ import { AiSingleTaskInput, AiTask } from "./AiTask";
12
+ /**
13
+ * A base class for streaming AI tasks.
14
+ * Extends AiTask to provide streaming output via executeStream().
15
+ *
16
+ * Subclasses set `streamMode` to control streaming behavior:
17
+ * - 'append': each chunk is a delta (e.g., new token). Default for text generation.
18
+ * - 'replace': each chunk is a revised full snapshot of the output.
19
+ *
20
+ * The standard execute() method is preserved as a fallback that internally
21
+ * consumes the stream to completion (so non-streaming callers get the same result).
22
+ */
23
+ export declare class StreamingAiTask<Input extends AiSingleTaskInput = AiSingleTaskInput, Output extends TaskOutput = TaskOutput, Config extends JobQueueTaskConfig = JobQueueTaskConfig> extends AiTask<Input, Output, Config> {
24
+ static type: string;
25
+ /**
26
+ * Streaming execution: creates an AiJob and yields StreamEvents from it.
27
+ * This is the primary execution path for streaming tasks.
28
+ */
29
+ executeStream(input: Input, context: IExecuteContext): AsyncIterable<StreamEvent<Output>>;
30
+ }
31
+ //# sourceMappingURL=StreamingAiTask.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StreamingAiTask.d.ts","sourceRoot":"","sources":["../../../src/task/base/StreamingAiTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;GAGG;AAEH,OAAO,EACL,kBAAkB,EAClB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,UAAU,EAChB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAErD;;;;;;;;;;GAUG;AACH,qBAAa,eAAe,CAC1B,KAAK,SAAS,iBAAiB,GAAG,iBAAiB,EACnD,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,kBAAkB,GAAG,kBAAkB,CACtD,SAAQ,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IACrC,OAAc,IAAI,EAAE,MAAM,CAAqB;IAE/C;;;OAGG;IACI,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe,GAAG,aAAa,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;CAejG"}
@@ -45,6 +45,7 @@ export declare const registerAiTasks: () => (typeof BackgroundRemovalTask | type
45
45
  export * from "./BackgroundRemovalTask";
46
46
  export * from "./base/AiTask";
47
47
  export * from "./base/AiTaskSchemas";
48
+ export * from "./base/StreamingAiTask";
48
49
  export * from "./ChunkRetrievalTask";
49
50
  export * from "./ChunkToVectorTask";
50
51
  export * from "./ChunkVectorHybridSearchTask";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/task/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/task/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@workglow/ai",
3
3
  "type": "module",
4
- "version": "0.0.90",
4
+ "version": "0.0.92",
5
5
  "description": "Core AI functionality for Workglow, including task execution, model management, and AI pipeline orchestration.",
6
6
  "scripts": {
7
7
  "watch": "concurrently -c 'auto' 'bun:watch-*'",
@@ -36,11 +36,11 @@
36
36
  "access": "public"
37
37
  },
38
38
  "peerDependencies": {
39
- "@workglow/dataset": "0.0.90",
40
- "@workglow/job-queue": "0.0.90",
41
- "@workglow/storage": "0.0.90",
42
- "@workglow/task-graph": "0.0.90",
43
- "@workglow/util": "0.0.90"
39
+ "@workglow/dataset": "0.0.92",
40
+ "@workglow/job-queue": "0.0.92",
41
+ "@workglow/storage": "0.0.92",
42
+ "@workglow/task-graph": "0.0.92",
43
+ "@workglow/util": "0.0.92"
44
44
  },
45
45
  "peerDependenciesMeta": {
46
46
  "@workglow/dataset": {
@@ -60,10 +60,10 @@
60
60
  }
61
61
  },
62
62
  "devDependencies": {
63
- "@workglow/dataset": "0.0.90",
64
- "@workglow/job-queue": "0.0.90",
65
- "@workglow/storage": "0.0.90",
66
- "@workglow/task-graph": "0.0.90",
67
- "@workglow/util": "0.0.90"
63
+ "@workglow/dataset": "0.0.92",
64
+ "@workglow/job-queue": "0.0.92",
65
+ "@workglow/storage": "0.0.92",
66
+ "@workglow/task-graph": "0.0.92",
67
+ "@workglow/util": "0.0.92"
68
68
  }
69
69
  }