@workglow/ai 0.0.121 → 0.0.122
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -27
- package/dist/browser.js +234 -124
- package/dist/browser.js.map +18 -15
- package/dist/bun.js +234 -124
- package/dist/bun.js.map +18 -15
- package/dist/common.d.ts +2 -0
- package/dist/common.d.ts.map +1 -1
- package/dist/job/AiJob.d.ts.map +1 -1
- package/dist/model/InMemoryModelRepository.d.ts.map +1 -1
- package/dist/model/ModelRepository.d.ts +10 -10
- package/dist/model/ModelRepository.d.ts.map +1 -1
- package/dist/model/ModelSchema.d.ts +1 -1
- package/dist/model/ModelSchema.d.ts.map +1 -1
- package/dist/node.js +234 -124
- package/dist/node.js.map +18 -15
- package/dist/provider/AiProvider.d.ts +33 -30
- package/dist/provider/AiProvider.d.ts.map +1 -1
- package/dist/provider/AiProviderRegistry.d.ts +4 -4
- package/dist/provider/AiProviderRegistry.d.ts.map +1 -1
- package/dist/provider/QueuedAiProvider.d.ts +18 -0
- package/dist/provider/QueuedAiProvider.d.ts.map +1 -0
- package/dist/task/AgentTask.d.ts +2 -2
- package/dist/task/AgentTask.d.ts.map +1 -1
- package/dist/task/AgentTypes.d.ts +1 -1
- package/dist/task/AgentTypes.d.ts.map +1 -1
- package/dist/task/AgentUtils.d.ts +1 -1
- package/dist/task/AgentUtils.d.ts.map +1 -1
- package/dist/task/BackgroundRemovalTask.d.ts +31 -1
- package/dist/task/BackgroundRemovalTask.d.ts.map +1 -1
- package/dist/task/ChunkRetrievalTask.d.ts +6 -6
- package/dist/task/ChunkRetrievalTask.d.ts.map +1 -1
- package/dist/task/ChunkToVectorTask.d.ts +25 -3
- package/dist/task/ChunkToVectorTask.d.ts.map +1 -1
- package/dist/task/ChunkVectorHybridSearchTask.d.ts +22 -1
- package/dist/task/ChunkVectorHybridSearchTask.d.ts.map +1 -1
- package/dist/task/ChunkVectorSearchTask.d.ts +12 -4
- package/dist/task/ChunkVectorSearchTask.d.ts.map +1 -1
- package/dist/task/ChunkVectorUpsertTask.d.ts +11 -2
- package/dist/task/ChunkVectorUpsertTask.d.ts.map +1 -1
- package/dist/task/ContextBuilderTask.d.ts +29 -3
- package/dist/task/ContextBuilderTask.d.ts.map +1 -1
- package/dist/task/CountTokensTask.d.ts +18 -1
- package/dist/task/CountTokensTask.d.ts.map +1 -1
- package/dist/task/DocumentEnricherTask.d.ts +38 -17
- package/dist/task/DocumentEnricherTask.d.ts.map +1 -1
- package/dist/task/DownloadModelTask.d.ts +24 -3
- package/dist/task/DownloadModelTask.d.ts.map +1 -1
- package/dist/task/FaceDetectorTask.d.ts +38 -6
- package/dist/task/FaceDetectorTask.d.ts.map +1 -1
- package/dist/task/FaceLandmarkerTask.d.ts +43 -7
- package/dist/task/FaceLandmarkerTask.d.ts.map +1 -1
- package/dist/task/GestureRecognizerTask.d.ts +48 -14
- package/dist/task/GestureRecognizerTask.d.ts.map +1 -1
- package/dist/task/HandLandmarkerTask.d.ts +45 -11
- package/dist/task/HandLandmarkerTask.d.ts.map +1 -1
- package/dist/task/HierarchicalChunkerTask.d.ts +32 -21
- package/dist/task/HierarchicalChunkerTask.d.ts.map +1 -1
- package/dist/task/HierarchyJoinTask.d.ts +35 -10
- package/dist/task/HierarchyJoinTask.d.ts.map +1 -1
- package/dist/task/ImageClassificationTask.d.ts +36 -4
- package/dist/task/ImageClassificationTask.d.ts.map +1 -1
- package/dist/task/ImageEmbeddingTask.d.ts +31 -1
- package/dist/task/ImageEmbeddingTask.d.ts.map +1 -1
- package/dist/task/ImageSegmentationTask.d.ts +36 -4
- package/dist/task/ImageSegmentationTask.d.ts.map +1 -1
- package/dist/task/ImageToTextTask.d.ts +32 -1
- package/dist/task/ImageToTextTask.d.ts.map +1 -1
- package/dist/task/ModelInfoTask.d.ts +35 -9
- package/dist/task/ModelInfoTask.d.ts.map +1 -1
- package/dist/task/ModelSearchTask.d.ts +66 -0
- package/dist/task/ModelSearchTask.d.ts.map +1 -0
- package/dist/task/ObjectDetectionTask.d.ts +38 -6
- package/dist/task/ObjectDetectionTask.d.ts.map +1 -1
- package/dist/task/PoseLandmarkerTask.d.ts +52 -17
- package/dist/task/PoseLandmarkerTask.d.ts.map +1 -1
- package/dist/task/QueryExpanderTask.d.ts +8 -3
- package/dist/task/QueryExpanderTask.d.ts.map +1 -1
- package/dist/task/RerankerTask.d.ts +26 -2
- package/dist/task/RerankerTask.d.ts.map +1 -1
- package/dist/task/StructuralParserTask.d.ts +7 -1
- package/dist/task/StructuralParserTask.d.ts.map +1 -1
- package/dist/task/StructuredGenerationTask.d.ts +23 -1
- package/dist/task/StructuredGenerationTask.d.ts.map +1 -1
- package/dist/task/TextChunkerTask.d.ts +10 -5
- package/dist/task/TextChunkerTask.d.ts.map +1 -1
- package/dist/task/TextClassificationTask.d.ts +23 -4
- package/dist/task/TextClassificationTask.d.ts.map +1 -1
- package/dist/task/TextEmbeddingTask.d.ts +19 -2
- package/dist/task/TextEmbeddingTask.d.ts.map +1 -1
- package/dist/task/TextFillMaskTask.d.ts +22 -5
- package/dist/task/TextFillMaskTask.d.ts.map +1 -1
- package/dist/task/TextGenerationTask.d.ts +23 -1
- package/dist/task/TextGenerationTask.d.ts.map +1 -1
- package/dist/task/TextLanguageDetectionTask.d.ts +22 -4
- package/dist/task/TextLanguageDetectionTask.d.ts.map +1 -1
- package/dist/task/TextNamedEntityRecognitionTask.d.ts +23 -5
- package/dist/task/TextNamedEntityRecognitionTask.d.ts.map +1 -1
- package/dist/task/TextQuestionAnswerTask.d.ts +19 -1
- package/dist/task/TextQuestionAnswerTask.d.ts.map +1 -1
- package/dist/task/TextRewriterTask.d.ts +19 -1
- package/dist/task/TextRewriterTask.d.ts.map +1 -1
- package/dist/task/TextSummaryTask.d.ts +18 -1
- package/dist/task/TextSummaryTask.d.ts.map +1 -1
- package/dist/task/TextTranslationTask.d.ts +20 -1
- package/dist/task/TextTranslationTask.d.ts.map +1 -1
- package/dist/task/ToolCallingTask.d.ts +9 -66
- package/dist/task/ToolCallingTask.d.ts.map +1 -1
- package/dist/task/ToolCallingUtils.d.ts +65 -0
- package/dist/task/ToolCallingUtils.d.ts.map +1 -0
- package/dist/task/TopicSegmenterTask.d.ts +10 -4
- package/dist/task/TopicSegmenterTask.d.ts.map +1 -1
- package/dist/task/UnloadModelTask.d.ts +18 -2
- package/dist/task/UnloadModelTask.d.ts.map +1 -1
- package/dist/task/VectorQuantizeTask.d.ts +11 -7
- package/dist/task/VectorQuantizeTask.d.ts.map +1 -1
- package/dist/task/VectorSimilarityTask.d.ts +8 -3
- package/dist/task/VectorSimilarityTask.d.ts.map +1 -1
- package/dist/task/base/AiTask.d.ts.map +1 -1
- package/dist/task/base/AiTaskSchemas.d.ts.map +1 -1
- package/dist/task/base/AiVisionTask.d.ts.map +1 -1
- package/dist/task/base/StreamingAiTask.d.ts.map +1 -1
- package/dist/task/index.d.ts +4 -1
- package/dist/task/index.d.ts.map +1 -1
- package/dist/worker.d.ts +21 -0
- package/dist/worker.d.ts.map +1 -0
- package/dist/worker.js +460 -0
- package/dist/worker.js.map +14 -0
- package/package.json +28 -21
package/README.md
CHANGED
|
@@ -37,7 +37,8 @@ import {
|
|
|
37
37
|
import { Workflow, getTaskQueueRegistry, TaskInput, TaskOutput } from "@workglow/task-graph";
|
|
38
38
|
import { ConcurrencyLimiter, JobQueueClient, JobQueueServer } from "@workglow/job-queue";
|
|
39
39
|
import { InMemoryQueueStorage } from "@workglow/storage";
|
|
40
|
-
import {
|
|
40
|
+
import { HF_TRANSFORMERS_ONNX } from "@workglow/ai-provider/hf-transformers";
|
|
41
|
+
import { registerHuggingFaceTransformersInline } from "@workglow/ai-provider/hf-transformers/runtime";
|
|
41
42
|
|
|
42
43
|
// 1. Set up a model repository
|
|
43
44
|
const modelRepo = new InMemoryModelRepository();
|
|
@@ -55,8 +56,8 @@ await modelRepo.addModel({
|
|
|
55
56
|
model_path: "Xenova/LaMini-Flan-T5-783M"
|
|
56
57
|
});
|
|
57
58
|
|
|
58
|
-
// 3. Register provider (inline
|
|
59
|
-
await
|
|
59
|
+
// 3. Register provider (inline: full ONNX stack in this bundle; creates queue automatically)
|
|
60
|
+
await registerHuggingFaceTransformersInline();
|
|
60
61
|
|
|
61
62
|
// 4. Or manually set up job queue (when queue.autoCreate: false)
|
|
62
63
|
const queueName = HF_TRANSFORMERS_ONNX;
|
|
@@ -225,7 +226,7 @@ Downloads and prepares AI models for use.
|
|
|
225
226
|
```typescript
|
|
226
227
|
import { DownloadModelTask } from "@workglow/ai";
|
|
227
228
|
|
|
228
|
-
import { HF_TRANSFORMERS_ONNX } from "@workglow/ai-provider";
|
|
229
|
+
import { HF_TRANSFORMERS_ONNX } from "@workglow/ai-provider/hf-transformers";
|
|
229
230
|
|
|
230
231
|
const task = new DownloadModelTask({
|
|
231
232
|
modelName: "onnx:Xenova/LaMini-Flan-T5-783M:q8",
|
|
@@ -292,7 +293,7 @@ setGlobalModelRepository(modelRepo);
|
|
|
292
293
|
|
|
293
294
|
```typescript
|
|
294
295
|
import { getGlobalModelRepository } from "@workglow/ai";
|
|
295
|
-
import { HF_TRANSFORMERS_ONNX } from "@workglow/ai-provider";
|
|
296
|
+
import { HF_TRANSFORMERS_ONNX } from "@workglow/ai-provider/hf-transformers";
|
|
296
297
|
|
|
297
298
|
const modelRepo = getGlobalModelRepository();
|
|
298
299
|
|
|
@@ -320,17 +321,10 @@ AI providers handle the actual execution of AI tasks. You need to register provi
|
|
|
320
321
|
### Basic Provider Registration
|
|
321
322
|
|
|
322
323
|
```typescript
|
|
323
|
-
import {
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
HuggingFaceTransformersProvider,
|
|
328
|
-
} from "@workglow/ai-provider";
|
|
329
|
-
|
|
330
|
-
// Registers run functions for all supported AI tasks on the current thread (inline mode requires HFT_TASKS)
|
|
331
|
-
await new HuggingFaceTransformersProvider(HFT_TASKS, HFT_STREAM_TASKS, HFT_REACTIVE_TASKS).register(
|
|
332
|
-
{ mode: "inline" }
|
|
333
|
-
);
|
|
324
|
+
import { registerHuggingFaceTransformersInline } from "@workglow/ai-provider/hf-transformers/runtime";
|
|
325
|
+
|
|
326
|
+
// Inline: run functions registered on the current thread (tasks wired inside the provider)
|
|
327
|
+
await registerHuggingFaceTransformersInline();
|
|
334
328
|
```
|
|
335
329
|
|
|
336
330
|
### Worker-Based Provider Registration
|
|
@@ -338,13 +332,12 @@ await new HuggingFaceTransformersProvider(HFT_TASKS, HFT_STREAM_TASKS, HFT_REACT
|
|
|
338
332
|
For compute-intensive tasks that should run in workers:
|
|
339
333
|
|
|
340
334
|
```typescript
|
|
341
|
-
import {
|
|
335
|
+
import { registerHuggingFaceTransformers } from "@workglow/ai-provider/hf-transformers";
|
|
342
336
|
|
|
343
|
-
await
|
|
344
|
-
|
|
345
|
-
worker: new Worker(new URL("./worker_hft.ts", import.meta.url), { type: "module" }),
|
|
337
|
+
await registerHuggingFaceTransformers({
|
|
338
|
+
worker: () => new Worker(new URL("./worker_hft.ts", import.meta.url), { type: "module" }),
|
|
346
339
|
});
|
|
347
|
-
// Worker file must call
|
|
340
|
+
// Worker file must call registerHuggingFaceTransformersWorker() from @workglow/ai-provider/hf-transformers/runtime
|
|
348
341
|
```
|
|
349
342
|
|
|
350
343
|
### Job Queue Setup
|
|
@@ -356,7 +349,7 @@ import { getTaskQueueRegistry, TaskInput, TaskOutput } from "@workglow/task-grap
|
|
|
356
349
|
import { ConcurrencyLimiter, JobQueueClient, JobQueueServer } from "@workglow/job-queue";
|
|
357
350
|
import { InMemoryQueueStorage } from "@workglow/storage";
|
|
358
351
|
import { AiJob, AiJobInput } from "@workglow/ai";
|
|
359
|
-
import { HF_TRANSFORMERS_ONNX } from "@workglow/ai-provider";
|
|
352
|
+
import { HF_TRANSFORMERS_ONNX } from "@workglow/ai-provider/hf-transformers";
|
|
360
353
|
|
|
361
354
|
const queueName = HF_TRANSFORMERS_ONNX;
|
|
362
355
|
const storage = new InMemoryQueueStorage<AiJobInput<TaskInput>, TaskOutput>(queueName);
|
|
@@ -423,12 +416,12 @@ The AI package provides a comprehensive set of tasks for building RAG pipelines.
|
|
|
423
416
|
|
|
424
417
|
### Vector and Storage Tasks
|
|
425
418
|
|
|
426
|
-
| Task | Description
|
|
427
|
-
| ----------------------- |
|
|
419
|
+
| Task | Description |
|
|
420
|
+
| ----------------------- | ---------------------------------------------------------------------------------------- |
|
|
428
421
|
| `ChunkToVectorTask` | Transforms chunks to vector store format (input: `vector` + `chunks`, output: `vectors`) |
|
|
429
|
-
| `ChunkVectorUpsertTask` | Stores vectors in a KnowledgeBase (input: `knowledgeBase` + `vectors`)
|
|
430
|
-
| `ChunkVectorSearchTask` | Searches vectors by similarity
|
|
431
|
-
| `VectorQuantizeTask` | Quantizes vectors for storage efficiency
|
|
422
|
+
| `ChunkVectorUpsertTask` | Stores vectors in a KnowledgeBase (input: `knowledgeBase` + `vectors`) |
|
|
423
|
+
| `ChunkVectorSearchTask` | Searches vectors by similarity |
|
|
424
|
+
| `VectorQuantizeTask` | Quantizes vectors for storage efficiency |
|
|
432
425
|
|
|
433
426
|
### Retrieval and Generation Tasks
|
|
434
427
|
|