@workglow/ai-provider 0.0.126 → 0.1.1
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/dist/provider-anthropic/AnthropicProvider.d.ts +1 -1
- package/dist/provider-anthropic/AnthropicProvider.d.ts.map +1 -1
- package/dist/provider-anthropic/AnthropicQueuedProvider.d.ts +4 -4
- package/dist/provider-anthropic/AnthropicQueuedProvider.d.ts.map +1 -1
- package/dist/provider-anthropic/common/Anthropic_Client.d.ts.map +1 -1
- package/dist/provider-anthropic/common/Anthropic_CountTokens.d.ts.map +1 -1
- package/dist/provider-anthropic/common/Anthropic_JobRunFns.d.ts.map +1 -1
- package/dist/provider-anthropic/common/Anthropic_TextGeneration.d.ts.map +1 -1
- package/dist/provider-anthropic/common/Anthropic_TextRewriter.d.ts.map +1 -1
- package/dist/provider-anthropic/common/Anthropic_TextSummary.d.ts.map +1 -1
- package/dist/provider-anthropic/index.js +3 -4
- package/dist/provider-anthropic/index.js.map +3 -3
- package/dist/provider-anthropic/runtime.js +19 -291
- package/dist/provider-anthropic/runtime.js.map +11 -12
- package/dist/provider-chrome/common/WebBrowser_TextGeneration.d.ts.map +1 -1
- package/dist/provider-chrome/common/WebBrowser_TextLanguageDetection.d.ts.map +1 -1
- package/dist/provider-chrome/common/WebBrowser_TextRewriter.d.ts.map +1 -1
- package/dist/provider-chrome/common/WebBrowser_TextSummary.d.ts.map +1 -1
- package/dist/provider-chrome/common/WebBrowser_TextTranslation.d.ts.map +1 -1
- package/dist/provider-chrome/runtime.js +3 -97
- package/dist/provider-chrome/runtime.js.map +8 -8
- package/dist/provider-gemini/GoogleGeminiProvider.d.ts +1 -1
- package/dist/provider-gemini/GoogleGeminiProvider.d.ts.map +1 -1
- package/dist/provider-gemini/GoogleGeminiQueuedProvider.d.ts +4 -4
- package/dist/provider-gemini/GoogleGeminiQueuedProvider.d.ts.map +1 -1
- package/dist/provider-gemini/common/Gemini_CountTokens.d.ts.map +1 -1
- package/dist/provider-gemini/common/Gemini_JobRunFns.d.ts.map +1 -1
- package/dist/provider-gemini/common/Gemini_TextEmbedding.d.ts.map +1 -1
- package/dist/provider-gemini/common/Gemini_TextGeneration.d.ts.map +1 -1
- package/dist/provider-gemini/common/Gemini_TextRewriter.d.ts.map +1 -1
- package/dist/provider-gemini/common/Gemini_TextSummary.d.ts.map +1 -1
- package/dist/provider-gemini/index.js +3 -4
- package/dist/provider-gemini/index.js.map +3 -3
- package/dist/provider-gemini/runtime.js +12 -257
- package/dist/provider-gemini/runtime.js.map +11 -12
- package/dist/provider-hf-inference/HfInferenceProvider.d.ts +1 -1
- package/dist/provider-hf-inference/HfInferenceProvider.d.ts.map +1 -1
- package/dist/provider-hf-inference/HfInferenceQueuedProvider.d.ts +4 -4
- package/dist/provider-hf-inference/HfInferenceQueuedProvider.d.ts.map +1 -1
- package/dist/provider-hf-inference/common/HFI_Client.d.ts.map +1 -1
- package/dist/provider-hf-inference/common/HFI_JobRunFns.d.ts.map +1 -1
- package/dist/provider-hf-inference/common/HFI_TextEmbedding.d.ts.map +1 -1
- package/dist/provider-hf-inference/common/HFI_TextGeneration.d.ts.map +1 -1
- package/dist/provider-hf-inference/common/HFI_TextRewriter.d.ts.map +1 -1
- package/dist/provider-hf-inference/common/HFI_TextSummary.d.ts.map +1 -1
- package/dist/provider-hf-inference/index.js +3 -4
- package/dist/provider-hf-inference/index.js.map +3 -3
- package/dist/provider-hf-inference/runtime.js +13 -206
- package/dist/provider-hf-inference/runtime.js.map +11 -12
- package/dist/provider-hf-transformers/HuggingFaceTransformersProvider.d.ts +1 -1
- package/dist/provider-hf-transformers/HuggingFaceTransformersProvider.d.ts.map +1 -1
- package/dist/provider-hf-transformers/HuggingFaceTransformersQueuedProvider.d.ts +13 -3
- package/dist/provider-hf-transformers/HuggingFaceTransformersQueuedProvider.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_Constants.d.ts +4 -0
- package/dist/provider-hf-transformers/common/HFT_Constants.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_CountTokens.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_Download.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_ImageEmbedding.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_JobRunFns.d.ts +116 -87
- package/dist/provider-hf-transformers/common/HFT_JobRunFns.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_ModelInfo.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_ModelSchema.d.ts +30 -0
- package/dist/provider-hf-transformers/common/HFT_ModelSchema.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_OnnxDtypes.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_Pipeline.d.ts +9 -2
- package/dist/provider-hf-transformers/common/HFT_Pipeline.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_Streaming.d.ts +2 -2
- package/dist/provider-hf-transformers/common/HFT_Streaming.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_TextClassification.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_TextFillMask.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_TextGeneration.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_TextLanguageDetection.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_TextNamedEntityRecognition.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_TextQuestionAnswer.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_TextRewriter.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_TextSummary.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_TextTranslation.d.ts.map +1 -1
- package/dist/provider-hf-transformers/index.d.ts +0 -1
- package/dist/provider-hf-transformers/index.d.ts.map +1 -1
- package/dist/provider-hf-transformers/index.js +49 -177
- package/dist/provider-hf-transformers/index.js.map +8 -9
- package/dist/provider-hf-transformers/registerHuggingFaceTransformersWorker.d.ts.map +1 -1
- package/dist/provider-hf-transformers/runtime.d.ts +0 -1
- package/dist/provider-hf-transformers/runtime.d.ts.map +1 -1
- package/dist/provider-hf-transformers/runtime.js +226 -515
- package/dist/provider-hf-transformers/runtime.js.map +27 -29
- package/dist/provider-llamacpp/LlamaCppProvider.d.ts +1 -1
- package/dist/provider-llamacpp/LlamaCppProvider.d.ts.map +1 -1
- package/dist/provider-llamacpp/LlamaCppQueuedProvider.d.ts +1 -1
- package/dist/provider-llamacpp/LlamaCppQueuedProvider.d.ts.map +1 -1
- package/dist/provider-llamacpp/common/LlamaCpp_CountTokens.d.ts.map +1 -1
- package/dist/provider-llamacpp/common/LlamaCpp_JobRunFns.d.ts.map +1 -1
- package/dist/provider-llamacpp/common/LlamaCpp_ModelSchema.d.ts +15 -0
- package/dist/provider-llamacpp/common/LlamaCpp_ModelSchema.d.ts.map +1 -1
- package/dist/provider-llamacpp/common/LlamaCpp_Runtime.d.ts +10 -0
- package/dist/provider-llamacpp/common/LlamaCpp_Runtime.d.ts.map +1 -1
- package/dist/provider-llamacpp/common/LlamaCpp_StructuredGeneration.d.ts.map +1 -1
- package/dist/provider-llamacpp/common/LlamaCpp_TextEmbedding.d.ts.map +1 -1
- package/dist/provider-llamacpp/common/LlamaCpp_TextGeneration.d.ts.map +1 -1
- package/dist/provider-llamacpp/common/LlamaCpp_TextRewriter.d.ts.map +1 -1
- package/dist/provider-llamacpp/common/LlamaCpp_TextSummary.d.ts.map +1 -1
- package/dist/provider-llamacpp/index.js +6 -2
- package/dist/provider-llamacpp/index.js.map +4 -4
- package/dist/provider-llamacpp/runtime.js +82 -230
- package/dist/provider-llamacpp/runtime.js.map +13 -14
- package/dist/provider-ollama/OllamaProvider.d.ts +1 -1
- package/dist/provider-ollama/OllamaProvider.d.ts.map +1 -1
- package/dist/provider-ollama/OllamaQueuedProvider.d.ts +4 -4
- package/dist/provider-ollama/OllamaQueuedProvider.d.ts.map +1 -1
- package/dist/provider-ollama/common/Ollama_JobRunFns.browser.d.ts +13 -71
- package/dist/provider-ollama/common/Ollama_JobRunFns.browser.d.ts.map +1 -1
- package/dist/provider-ollama/common/Ollama_JobRunFns.d.ts +13 -71
- package/dist/provider-ollama/common/Ollama_JobRunFns.d.ts.map +1 -1
- package/dist/provider-ollama/common/Ollama_TextGeneration.d.ts.map +1 -1
- package/dist/provider-ollama/common/Ollama_TextRewriter.d.ts.map +1 -1
- package/dist/provider-ollama/common/Ollama_TextSummary.d.ts.map +1 -1
- package/dist/provider-ollama/index.browser.js +3 -4
- package/dist/provider-ollama/index.browser.js.map +3 -3
- package/dist/provider-ollama/index.js +3 -4
- package/dist/provider-ollama/index.js.map +3 -3
- package/dist/provider-ollama/runtime.browser.js +8 -179
- package/dist/provider-ollama/runtime.browser.js.map +9 -10
- package/dist/provider-ollama/runtime.js +8 -174
- package/dist/provider-ollama/runtime.js.map +9 -10
- package/dist/provider-openai/OpenAiProvider.d.ts +1 -1
- package/dist/provider-openai/OpenAiProvider.d.ts.map +1 -1
- package/dist/provider-openai/OpenAiQueuedProvider.d.ts +4 -4
- package/dist/provider-openai/OpenAiQueuedProvider.d.ts.map +1 -1
- package/dist/provider-openai/common/OpenAI_Client.d.ts.map +1 -1
- package/dist/provider-openai/common/OpenAI_CountTokens.browser.d.ts.map +1 -1
- package/dist/provider-openai/common/OpenAI_CountTokens.d.ts.map +1 -1
- package/dist/provider-openai/common/OpenAI_JobRunFns.browser.d.ts.map +1 -1
- package/dist/provider-openai/common/OpenAI_JobRunFns.d.ts.map +1 -1
- package/dist/provider-openai/common/OpenAI_TextEmbedding.d.ts.map +1 -1
- package/dist/provider-openai/common/OpenAI_TextGeneration.d.ts.map +1 -1
- package/dist/provider-openai/common/OpenAI_TextRewriter.d.ts.map +1 -1
- package/dist/provider-openai/common/OpenAI_TextSummary.d.ts.map +1 -1
- package/dist/provider-openai/index.browser.js +3 -4
- package/dist/provider-openai/index.browser.js.map +3 -3
- package/dist/provider-openai/index.js +3 -4
- package/dist/provider-openai/index.js.map +3 -3
- package/dist/provider-openai/runtime.browser.js +22 -224
- package/dist/provider-openai/runtime.browser.js.map +12 -13
- package/dist/provider-openai/runtime.js +22 -224
- package/dist/provider-openai/runtime.js.map +12 -13
- package/dist/provider-tf-mediapipe/TensorFlowMediaPipeQueuedProvider.d.ts +3 -3
- package/dist/provider-tf-mediapipe/TensorFlowMediaPipeQueuedProvider.d.ts.map +1 -1
- package/dist/provider-tf-mediapipe/common/TFMP_ImageEmbedding.d.ts.map +1 -1
- package/dist/provider-tf-mediapipe/common/TFMP_JobRunFns.d.ts +17 -10
- package/dist/provider-tf-mediapipe/common/TFMP_JobRunFns.d.ts.map +1 -1
- package/dist/provider-tf-mediapipe/common/TFMP_Unload.d.ts.map +1 -1
- package/dist/provider-tf-mediapipe/index.js +3 -3
- package/dist/provider-tf-mediapipe/index.js.map +3 -3
- package/dist/provider-tf-mediapipe/runtime.js +16 -5
- package/dist/provider-tf-mediapipe/runtime.js.map +5 -5
- package/package.json +19 -19
- package/dist/provider-anthropic/common/Anthropic_ToolCalling.d.ts +0 -10
- package/dist/provider-anthropic/common/Anthropic_ToolCalling.d.ts.map +0 -1
- package/dist/provider-gemini/common/Gemini_ToolCalling.d.ts +0 -10
- package/dist/provider-gemini/common/Gemini_ToolCalling.d.ts.map +0 -1
- package/dist/provider-hf-inference/common/HFI_ToolCalling.d.ts +0 -10
- package/dist/provider-hf-inference/common/HFI_ToolCalling.d.ts.map +0 -1
- package/dist/provider-hf-transformers/common/HFT_ToolCalling.d.ts +0 -10
- package/dist/provider-hf-transformers/common/HFT_ToolCalling.d.ts.map +0 -1
- package/dist/provider-hf-transformers/common/HFT_ToolMarkup.d.ts +0 -40
- package/dist/provider-hf-transformers/common/HFT_ToolMarkup.d.ts.map +0 -1
- package/dist/provider-llamacpp/common/LlamaCpp_ToolCalling.d.ts +0 -10
- package/dist/provider-llamacpp/common/LlamaCpp_ToolCalling.d.ts.map +0 -1
- package/dist/provider-ollama/common/Ollama_ToolCalling.d.ts +0 -16
- package/dist/provider-ollama/common/Ollama_ToolCalling.d.ts.map +0 -1
- package/dist/provider-openai/common/OpenAI_ToolCalling.d.ts +0 -10
- package/dist/provider-openai/common/OpenAI_ToolCalling.d.ts.map +0 -1
|
@@ -24,7 +24,7 @@ export declare class AnthropicProvider extends AiProvider<AnthropicModelConfig>
|
|
|
24
24
|
readonly displayName = "Anthropic";
|
|
25
25
|
readonly isLocal = false;
|
|
26
26
|
readonly supportsBrowser = true;
|
|
27
|
-
readonly taskTypes: readonly ["CountTokensTask", "ModelInfoTask", "TextGenerationTask", "TextRewriterTask", "TextSummaryTask", "StructuredGenerationTask", "
|
|
27
|
+
readonly taskTypes: readonly ["CountTokensTask", "ModelInfoTask", "TextGenerationTask", "TextRewriterTask", "TextSummaryTask", "StructuredGenerationTask", "ModelSearchTask"];
|
|
28
28
|
constructor(tasks?: Record<string, AiProviderRunFn<any, any, AnthropicModelConfig>>, streamTasks?: Record<string, AiProviderStreamFn<any, any, AnthropicModelConfig>>, reactiveTasks?: Record<string, AiProviderReactiveRunFn<any, any, AnthropicModelConfig>>);
|
|
29
29
|
}
|
|
30
30
|
//# sourceMappingURL=AnthropicProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AnthropicProvider.d.ts","sourceRoot":"","sources":["../../src/provider-anthropic/AnthropicProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,UAAU,EACV,KAAK,uBAAuB,EAC5B,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACxB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAE3E;;;;;;;;;;;;;GAaG;AACH,qBAAa,iBAAkB,SAAQ,UAAU,CAAC,oBAAoB,CAAC;IACrE,QAAQ,CAAC,IAAI,eAAa;IAC1B,QAAQ,CAAC,WAAW,eAAe;IACnC,QAAQ,CAAC,OAAO,SAAS;IACzB,QAAQ,CAAC,eAAe,QAAQ;IAEhC,QAAQ,CAAC,SAAS
|
|
1
|
+
{"version":3,"file":"AnthropicProvider.d.ts","sourceRoot":"","sources":["../../src/provider-anthropic/AnthropicProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,UAAU,EACV,KAAK,uBAAuB,EAC5B,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACxB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAE3E;;;;;;;;;;;;;GAaG;AACH,qBAAa,iBAAkB,SAAQ,UAAU,CAAC,oBAAoB,CAAC;IACrE,QAAQ,CAAC,IAAI,eAAa;IAC1B,QAAQ,CAAC,WAAW,eAAe;IACnC,QAAQ,CAAC,OAAO,SAAS;IACzB,QAAQ,CAAC,eAAe,QAAQ;IAEhC,QAAQ,CAAC,SAAS,4JAQP;IAEX,YACE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAAC,EACvE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAAC,EAChF,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAAC,EAGxF;CACF"}
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
* Copyright 2025 Steven Roussey <sroussey@gmail.com>
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import {
|
|
6
|
+
import { AiProvider, type AiProviderReactiveRunFn, type AiProviderRunFn, type AiProviderStreamFn } from "@workglow/ai";
|
|
7
7
|
import type { AnthropicModelConfig } from "./common/Anthropic_ModelSchema";
|
|
8
|
-
/** Main-thread registration (inline or worker-backed)
|
|
9
|
-
export declare class AnthropicQueuedProvider extends
|
|
8
|
+
/** Main-thread registration (inline or worker-backed). No queue — uses direct execution. */
|
|
9
|
+
export declare class AnthropicQueuedProvider extends AiProvider<AnthropicModelConfig> {
|
|
10
10
|
readonly name = "ANTHROPIC";
|
|
11
11
|
readonly displayName = "Anthropic";
|
|
12
12
|
readonly isLocal = false;
|
|
13
13
|
readonly supportsBrowser = true;
|
|
14
|
-
readonly taskTypes: readonly ["CountTokensTask", "ModelInfoTask", "TextGenerationTask", "TextRewriterTask", "TextSummaryTask", "StructuredGenerationTask", "
|
|
14
|
+
readonly taskTypes: readonly ["CountTokensTask", "ModelInfoTask", "TextGenerationTask", "TextRewriterTask", "TextSummaryTask", "StructuredGenerationTask", "ModelSearchTask"];
|
|
15
15
|
constructor(tasks?: Record<string, AiProviderRunFn<any, any, AnthropicModelConfig>>, streamTasks?: Record<string, AiProviderStreamFn<any, any, AnthropicModelConfig>>, reactiveTasks?: Record<string, AiProviderReactiveRunFn<any, any, AnthropicModelConfig>>);
|
|
16
16
|
}
|
|
17
17
|
//# sourceMappingURL=AnthropicQueuedProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AnthropicQueuedProvider.d.ts","sourceRoot":"","sources":["../../src/provider-anthropic/AnthropicQueuedProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"AnthropicQueuedProvider.d.ts","sourceRoot":"","sources":["../../src/provider-anthropic/AnthropicQueuedProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,UAAU,EACV,KAAK,uBAAuB,EAC5B,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACxB,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,4FAA4F;AAC5F,qBAAa,uBAAwB,SAAQ,UAAU,CAAC,oBAAoB,CAAC;IAC3E,QAAQ,CAAC,IAAI,eAAa;IAC1B,QAAQ,CAAC,WAAW,eAAe;IACnC,QAAQ,CAAC,OAAO,SAAS;IACzB,QAAQ,CAAC,eAAe,QAAQ;IAEhC,QAAQ,CAAC,SAAS,4JAQP;IAEX,YACE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAAC,EACvE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAAC,EAChF,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAAC,EAGxF;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Anthropic_Client.d.ts","sourceRoot":"","sources":["../../../src/provider-anthropic/common/Anthropic_Client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAIpE,wBAAsB,gBAAgB,0DAWrC;AAUD,wBAAsB,SAAS,CAAC,KAAK,EAAE,oBAAoB,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"Anthropic_Client.d.ts","sourceRoot":"","sources":["../../../src/provider-anthropic/common/Anthropic_Client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAIpE,wBAAsB,gBAAgB,0DAWrC;AAUD,wBAAsB,SAAS,CAAC,KAAK,EAAE,oBAAoB,GAAG,SAAS,kDAyBtE;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,oBAAoB,GAAG,SAAS,GAAG,MAAM,CAM5E;AAED,wBAAgB,YAAY,CAC1B,KAAK,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,EAC7B,KAAK,EAAE,oBAAoB,GAAG,SAAS,GACtC,MAAM,CAER"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Anthropic_CountTokens.d.ts","sourceRoot":"","sources":["../../../src/provider-anthropic/common/Anthropic_CountTokens.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,uBAAuB,EACvB,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAGpE,eAAO,MAAM,qBAAqB,EAAE,eAAe,CACjD,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"Anthropic_CountTokens.d.ts","sourceRoot":"","sources":["../../../src/provider-anthropic/common/Anthropic_CountTokens.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,uBAAuB,EACvB,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAGpE,eAAO,MAAM,qBAAqB,EAAE,eAAe,CACjD,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,CAQrB,CAAC;AAEF,eAAO,MAAM,8BAA8B,EAAE,uBAAuB,CAClE,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,CAGrB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Anthropic_JobRunFns.d.ts","sourceRoot":"","sources":["../../../src/provider-anthropic/common/Anthropic_JobRunFns.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACjG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAGpE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"Anthropic_JobRunFns.d.ts","sourceRoot":"","sources":["../../../src/provider-anthropic/common/Anthropic_JobRunFns.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACjG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAGpE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAc7F,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAQ3F,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,MAAM,CACzC,MAAM,EACN,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAMnD,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,MAAM,CAC3C,MAAM,EACN,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAGxD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Anthropic_TextGeneration.d.ts","sourceRoot":"","sources":["../../../src/provider-anthropic/common/Anthropic_TextGeneration.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Anthropic_TextGeneration.d.ts","sourceRoot":"","sources":["../../../src/provider-anthropic/common/Anthropic_TextGeneration.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,cAAc,CAAC;AAGtB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAGpE,eAAO,MAAM,wBAAwB,EAAE,eAAe,CACpD,uBAAuB,EACvB,wBAAwB,EACxB,oBAAoB,CA0BrB,CAAC;AAEF,eAAO,MAAM,+BAA+B,EAAE,kBAAkB,CAC9D,uBAAuB,EACvB,wBAAwB,EACxB,oBAAoB,CAsBrB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Anthropic_TextRewriter.d.ts","sourceRoot":"","sources":["../../../src/provider-anthropic/common/Anthropic_TextRewriter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Anthropic_TextRewriter.d.ts","sourceRoot":"","sources":["../../../src/provider-anthropic/common/Anthropic_TextRewriter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,cAAc,CAAC;AAGtB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAGpE,eAAO,MAAM,sBAAsB,EAAE,eAAe,CAClD,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,CAoBrB,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,kBAAkB,CAC5D,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,CAqBrB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Anthropic_TextSummary.d.ts","sourceRoot":"","sources":["../../../src/provider-anthropic/common/Anthropic_TextSummary.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Anthropic_TextSummary.d.ts","sourceRoot":"","sources":["../../../src/provider-anthropic/common/Anthropic_TextSummary.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,cAAc,CAAC;AAGtB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAGpE,eAAO,MAAM,qBAAqB,EAAE,eAAe,CACjD,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,CAoBrB,CAAC;AAEF,eAAO,MAAM,4BAA4B,EAAE,kBAAkB,CAC3D,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,CAqBrB,CAAC"}
|
|
@@ -84,9 +84,9 @@ var AnthropicModelConfigSchema = {
|
|
|
84
84
|
};
|
|
85
85
|
// src/provider-anthropic/AnthropicQueuedProvider.ts
|
|
86
86
|
import {
|
|
87
|
-
|
|
87
|
+
AiProvider
|
|
88
88
|
} from "@workglow/ai";
|
|
89
|
-
class AnthropicQueuedProvider extends
|
|
89
|
+
class AnthropicQueuedProvider extends AiProvider {
|
|
90
90
|
name = ANTHROPIC;
|
|
91
91
|
displayName = "Anthropic";
|
|
92
92
|
isLocal = false;
|
|
@@ -98,7 +98,6 @@ class AnthropicQueuedProvider extends QueuedAiProvider {
|
|
|
98
98
|
"TextRewriterTask",
|
|
99
99
|
"TextSummaryTask",
|
|
100
100
|
"StructuredGenerationTask",
|
|
101
|
-
"ToolCallingTask",
|
|
102
101
|
"ModelSearchTask"
|
|
103
102
|
];
|
|
104
103
|
constructor(tasks, streamTasks, reactiveTasks) {
|
|
@@ -118,4 +117,4 @@ export {
|
|
|
118
117
|
ANTHROPIC
|
|
119
118
|
};
|
|
120
119
|
|
|
121
|
-
//# debugId=
|
|
120
|
+
//# debugId=729AF72B327830F464756E2164756E21
|
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
"sourcesContent": [
|
|
5
5
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nexport const ANTHROPIC = \"ANTHROPIC\";\n",
|
|
6
6
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { ModelConfigSchema, ModelRecordSchema } from \"@workglow/ai/worker\";\nimport { DataPortSchemaObject, FromSchema } from \"@workglow/util/worker\";\nimport { ANTHROPIC } from \"./Anthropic_Constants\";\n\nexport const AnthropicModelSchema = {\n type: \"object\",\n properties: {\n provider: {\n const: ANTHROPIC,\n description: \"Discriminator: Anthropic cloud provider.\",\n },\n provider_config: {\n type: \"object\",\n description: \"Anthropic-specific configuration.\",\n properties: {\n model_name: {\n type: \"string\",\n description:\n \"The Anthropic model identifier (e.g., 'claude-sonnet-4-20250514', 'claude-3-5-haiku-20241022').\",\n },\n credential_key: {\n type: \"string\",\n format: \"credential\",\n description: \"Key to look up in the credential store for the API key.\",\n \"x-ui-hidden\": true,\n },\n base_url: {\n type: \"string\",\n description: \"Base URL for the Anthropic API (optional).\",\n },\n max_tokens: {\n type: \"integer\",\n description: \"Default max tokens for responses. Anthropic requires this parameter.\",\n default: 1024,\n minimum: 1,\n },\n },\n required: [\"model_name\"],\n additionalProperties: false,\n },\n },\n required: [\"provider\", \"provider_config\"],\n additionalProperties: true,\n} as const satisfies DataPortSchemaObject;\n\nexport const AnthropicModelRecordSchema = {\n type: \"object\",\n properties: {\n ...ModelRecordSchema.properties,\n ...AnthropicModelSchema.properties,\n },\n required: [...ModelRecordSchema.required, ...AnthropicModelSchema.required],\n additionalProperties: false,\n} as const satisfies DataPortSchemaObject;\n\nexport type AnthropicModelRecord = FromSchema<typeof AnthropicModelRecordSchema>;\n\nexport const AnthropicModelConfigSchema = {\n type: \"object\",\n properties: {\n ...ModelConfigSchema.properties,\n ...AnthropicModelSchema.properties,\n },\n required: [...ModelConfigSchema.required, ...AnthropicModelSchema.required],\n additionalProperties: false,\n} as const satisfies DataPortSchemaObject;\n\nexport type AnthropicModelConfig = FromSchema<typeof AnthropicModelConfigSchema>;\n",
|
|
7
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\n
|
|
7
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\n AiProvider,\n type AiProviderReactiveRunFn,\n type AiProviderRunFn,\n type AiProviderStreamFn,\n} from \"@workglow/ai\";\nimport { ANTHROPIC } from \"./common/Anthropic_Constants\";\nimport type { AnthropicModelConfig } from \"./common/Anthropic_ModelSchema\";\n\n/** Main-thread registration (inline or worker-backed). No queue — uses direct execution. */\nexport class AnthropicQueuedProvider extends AiProvider<AnthropicModelConfig> {\n readonly name = ANTHROPIC;\n readonly displayName = \"Anthropic\";\n readonly isLocal = false;\n readonly supportsBrowser = true;\n\n readonly taskTypes = [\n \"CountTokensTask\",\n \"ModelInfoTask\",\n \"TextGenerationTask\",\n \"TextRewriterTask\",\n \"TextSummaryTask\",\n \"StructuredGenerationTask\",\n \"ModelSearchTask\",\n ] as const;\n\n constructor(\n tasks?: Record<string, AiProviderRunFn<any, any, AnthropicModelConfig>>,\n streamTasks?: Record<string, AiProviderStreamFn<any, any, AnthropicModelConfig>>,\n reactiveTasks?: Record<string, AiProviderReactiveRunFn<any, any, AnthropicModelConfig>>\n ) {\n super(tasks, streamTasks, reactiveTasks);\n }\n}\n",
|
|
8
8
|
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { AiProviderRegisterOptions } from \"@workglow/ai\";\nimport { AnthropicQueuedProvider } from \"./AnthropicQueuedProvider\";\n\nexport async function registerAnthropic(\n options: AiProviderRegisterOptions & {\n worker: Worker | (() => Worker);\n }\n): Promise<void> {\n await new AnthropicQueuedProvider().register(options);\n}\n"
|
|
9
9
|
],
|
|
10
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAMO,IAAM,YAAY;;ACAzB;AAIO,IAAM,uBAAuB;AAAA,EAClC,MAAM;AAAA,EACN,YAAY;AAAA,IACV,UAAU;AAAA,MACR,OAAO;AAAA,MACP,aAAa;AAAA,IACf;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,aAAa;AAAA,MACb,YAAY;AAAA,QACV,YAAY;AAAA,UACV,MAAM;AAAA,UACN,aACE;AAAA,QACJ;AAAA,QACA,gBAAgB;AAAA,UACd,MAAM;AAAA,UACN,QAAQ;AAAA,UACR,aAAa;AAAA,UACb,eAAe;AAAA,QACjB;AAAA,QACA,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,YAAY;AAAA,UACV,MAAM;AAAA,UACN,aAAa;AAAA,UACb,SAAS;AAAA,UACT,SAAS;AAAA,QACX;AAAA,MACF;AAAA,MACA,UAAU,CAAC,YAAY;AAAA,MACvB,sBAAsB;AAAA,IACxB;AAAA,EACF;AAAA,EACA,UAAU,CAAC,YAAY,iBAAiB;AAAA,EACxC,sBAAsB;AACxB;AAEO,IAAM,6BAA6B;AAAA,EACxC,MAAM;AAAA,EACN,YAAY;AAAA,OACP,kBAAkB;AAAA,OAClB,qBAAqB;AAAA,EAC1B;AAAA,EACA,UAAU,CAAC,GAAG,kBAAkB,UAAU,GAAG,qBAAqB,QAAQ;AAAA,EAC1E,sBAAsB;AACxB;AAIO,IAAM,6BAA6B;AAAA,EACxC,MAAM;AAAA,EACN,YAAY;AAAA,OACP,kBAAkB;AAAA,OAClB,qBAAqB;AAAA,EAC1B;AAAA,EACA,UAAU,CAAC,GAAG,kBAAkB,UAAU,GAAG,qBAAqB,QAAQ;AAAA,EAC1E,sBAAsB;AACxB;;ACjEA;AAAA;AAAA;AAUO,MAAM,gCAAgC,
|
|
11
|
-
"debugId": "
|
|
10
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAMO,IAAM,YAAY;;ACAzB;AAIO,IAAM,uBAAuB;AAAA,EAClC,MAAM;AAAA,EACN,YAAY;AAAA,IACV,UAAU;AAAA,MACR,OAAO;AAAA,MACP,aAAa;AAAA,IACf;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,aAAa;AAAA,MACb,YAAY;AAAA,QACV,YAAY;AAAA,UACV,MAAM;AAAA,UACN,aACE;AAAA,QACJ;AAAA,QACA,gBAAgB;AAAA,UACd,MAAM;AAAA,UACN,QAAQ;AAAA,UACR,aAAa;AAAA,UACb,eAAe;AAAA,QACjB;AAAA,QACA,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,QACf;AAAA,QACA,YAAY;AAAA,UACV,MAAM;AAAA,UACN,aAAa;AAAA,UACb,SAAS;AAAA,UACT,SAAS;AAAA,QACX;AAAA,MACF;AAAA,MACA,UAAU,CAAC,YAAY;AAAA,MACvB,sBAAsB;AAAA,IACxB;AAAA,EACF;AAAA,EACA,UAAU,CAAC,YAAY,iBAAiB;AAAA,EACxC,sBAAsB;AACxB;AAEO,IAAM,6BAA6B;AAAA,EACxC,MAAM;AAAA,EACN,YAAY;AAAA,OACP,kBAAkB;AAAA,OAClB,qBAAqB;AAAA,EAC1B;AAAA,EACA,UAAU,CAAC,GAAG,kBAAkB,UAAU,GAAG,qBAAqB,QAAQ;AAAA,EAC1E,sBAAsB;AACxB;AAIO,IAAM,6BAA6B;AAAA,EACxC,MAAM;AAAA,EACN,YAAY;AAAA,OACP,kBAAkB;AAAA,OAClB,qBAAqB;AAAA,EAC1B;AAAA,EACA,UAAU,CAAC,GAAG,kBAAkB,UAAU,GAAG,qBAAqB,QAAQ;AAAA,EAC1E,sBAAsB;AACxB;;ACjEA;AAAA;AAAA;AAUO,MAAM,gCAAgC,WAAiC;AAAA,EACnE,OAAO;AAAA,EACP,cAAc;AAAA,EACd,UAAU;AAAA,EACV,kBAAkB;AAAA,EAElB,YAAY;AAAA,IACnB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EAEA,WAAW,CACT,OACA,aACA,eACA;AAAA,IACA,MAAM,OAAO,aAAa,aAAa;AAAA;AAE3C;;;AC9BA,eAAsB,iBAAiB,CACrC,SAGe;AAAA,EACf,MAAM,IAAI,wBAAwB,EAAE,SAAS,OAAO;AAAA;",
|
|
11
|
+
"debugId": "729AF72B327830F464756E2164756E21",
|
|
12
12
|
"names": []
|
|
13
13
|
}
|
|
@@ -40,11 +40,15 @@ async function getClient(model) {
|
|
|
40
40
|
if (!apiKey) {
|
|
41
41
|
throw new Error("Missing Anthropic API key: set provider_config.credential_key or the ANTHROPIC_API_KEY environment variable.");
|
|
42
42
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
43
|
+
try {
|
|
44
|
+
return new Anthropic({
|
|
45
|
+
apiKey,
|
|
46
|
+
baseURL: config?.base_url || undefined,
|
|
47
|
+
dangerouslyAllowBrowser: typeof globalThis.document !== "undefined" || "WorkerGlobalScope" in globalThis
|
|
48
|
+
});
|
|
49
|
+
} catch (err) {
|
|
50
|
+
throw new Error(`Failed to create Anthropic client: ${err instanceof Error ? err.message : "unknown error"}`);
|
|
51
|
+
}
|
|
48
52
|
}
|
|
49
53
|
function getModelName(model) {
|
|
50
54
|
const name = model?.provider_config?.model_name;
|
|
@@ -123,18 +127,7 @@ var Anthropic_ModelSearch = async (input) => {
|
|
|
123
127
|
};
|
|
124
128
|
|
|
125
129
|
// src/provider-anthropic/common/Anthropic_CountTokens.ts
|
|
126
|
-
import { getLogger } from "@workglow/util/worker";
|
|
127
130
|
var Anthropic_CountTokens = async (input, model, onProgress, signal) => {
|
|
128
|
-
if (Array.isArray(input.text)) {
|
|
129
|
-
getLogger().warn("Anthropic_CountTokens: array input received; processing sequentially (no native batch support)");
|
|
130
|
-
const texts = input.text;
|
|
131
|
-
const counts = [];
|
|
132
|
-
for (const item of texts) {
|
|
133
|
-
const r = await Anthropic_CountTokens({ ...input, text: item }, model, onProgress, signal);
|
|
134
|
-
counts.push(r.count);
|
|
135
|
-
}
|
|
136
|
-
return { count: counts };
|
|
137
|
-
}
|
|
138
131
|
const client = await getClient(model);
|
|
139
132
|
const result = await client.messages.countTokens({
|
|
140
133
|
model: getModelName(model),
|
|
@@ -143,9 +136,6 @@ var Anthropic_CountTokens = async (input, model, onProgress, signal) => {
|
|
|
143
136
|
return { count: result.input_tokens };
|
|
144
137
|
};
|
|
145
138
|
var Anthropic_CountTokens_Reactive = async (input, _output, _model) => {
|
|
146
|
-
if (Array.isArray(input.text)) {
|
|
147
|
-
return { count: input.text.map((t) => Math.ceil(t.length / 4)) };
|
|
148
|
-
}
|
|
149
139
|
return { count: Math.ceil(input.text.length / 4) };
|
|
150
140
|
};
|
|
151
141
|
|
|
@@ -225,19 +215,9 @@ var Anthropic_StructuredGeneration_Stream = async function* (input, model, signa
|
|
|
225
215
|
};
|
|
226
216
|
|
|
227
217
|
// src/provider-anthropic/common/Anthropic_TextGeneration.ts
|
|
228
|
-
import { getLogger
|
|
218
|
+
import { getLogger } from "@workglow/util/worker";
|
|
229
219
|
var Anthropic_TextGeneration = async (input, model, update_progress, signal) => {
|
|
230
|
-
|
|
231
|
-
getLogger2().warn("Anthropic_TextGeneration: array input received; processing sequentially (no native batch support)");
|
|
232
|
-
const prompts = input.prompt;
|
|
233
|
-
const results = [];
|
|
234
|
-
for (const item of prompts) {
|
|
235
|
-
const r = await Anthropic_TextGeneration({ ...input, prompt: item }, model, update_progress, signal);
|
|
236
|
-
results.push(r.text);
|
|
237
|
-
}
|
|
238
|
-
return { text: results };
|
|
239
|
-
}
|
|
240
|
-
const logger = getLogger2();
|
|
220
|
+
const logger = getLogger();
|
|
241
221
|
const timerLabel = `anthropic:TextGeneration:${model?.provider_config?.model_name}`;
|
|
242
222
|
logger.time(timerLabel, { model: model?.provider_config?.model_name });
|
|
243
223
|
update_progress(0, "Starting Anthropic text generation");
|
|
@@ -274,18 +254,7 @@ var Anthropic_TextGeneration_Stream = async function* (input, model, signal) {
|
|
|
274
254
|
};
|
|
275
255
|
|
|
276
256
|
// src/provider-anthropic/common/Anthropic_TextRewriter.ts
|
|
277
|
-
import { getLogger as getLogger3 } from "@workglow/util/worker";
|
|
278
257
|
var Anthropic_TextRewriter = async (input, model, update_progress, signal) => {
|
|
279
|
-
if (Array.isArray(input.text)) {
|
|
280
|
-
getLogger3().warn("Anthropic_TextRewriter: array input received; processing sequentially (no native batch support)");
|
|
281
|
-
const texts = input.text;
|
|
282
|
-
const results = [];
|
|
283
|
-
for (const item of texts) {
|
|
284
|
-
const r = await Anthropic_TextRewriter({ ...input, text: item }, model, update_progress, signal);
|
|
285
|
-
results.push(r.text);
|
|
286
|
-
}
|
|
287
|
-
return { text: results };
|
|
288
|
-
}
|
|
289
258
|
update_progress(0, "Starting Anthropic text rewriting");
|
|
290
259
|
const client = await getClient(model);
|
|
291
260
|
const modelName = getModelName(model);
|
|
@@ -317,18 +286,7 @@ var Anthropic_TextRewriter_Stream = async function* (input, model, signal) {
|
|
|
317
286
|
};
|
|
318
287
|
|
|
319
288
|
// src/provider-anthropic/common/Anthropic_TextSummary.ts
|
|
320
|
-
import { getLogger as getLogger4 } from "@workglow/util/worker";
|
|
321
289
|
var Anthropic_TextSummary = async (input, model, update_progress, signal) => {
|
|
322
|
-
if (Array.isArray(input.text)) {
|
|
323
|
-
getLogger4().warn("Anthropic_TextSummary: array input received; processing sequentially (no native batch support)");
|
|
324
|
-
const texts = input.text;
|
|
325
|
-
const results = [];
|
|
326
|
-
for (const item of texts) {
|
|
327
|
-
const r = await Anthropic_TextSummary({ ...input, text: item }, model, update_progress, signal);
|
|
328
|
-
results.push(r.text);
|
|
329
|
-
}
|
|
330
|
-
return { text: results };
|
|
331
|
-
}
|
|
332
290
|
update_progress(0, "Starting Anthropic text summarization");
|
|
333
291
|
const client = await getClient(model);
|
|
334
292
|
const modelName = getModelName(model);
|
|
@@ -359,232 +317,6 @@ var Anthropic_TextSummary_Stream = async function* (input, model, signal) {
|
|
|
359
317
|
yield { type: "finish", data: {} };
|
|
360
318
|
};
|
|
361
319
|
|
|
362
|
-
// src/provider-anthropic/common/Anthropic_ToolCalling.ts
|
|
363
|
-
import { buildToolDescription, filterValidToolCalls } from "@workglow/ai/worker";
|
|
364
|
-
import { getLogger as getLogger5, parsePartialJson as parsePartialJson2 } from "@workglow/util/worker";
|
|
365
|
-
function mapUserContentToAnthropic(content) {
|
|
366
|
-
if (typeof content === "string")
|
|
367
|
-
return content;
|
|
368
|
-
if (!Array.isArray(content))
|
|
369
|
-
return content;
|
|
370
|
-
const parts = [];
|
|
371
|
-
for (const block of content) {
|
|
372
|
-
if (block.type === "text") {
|
|
373
|
-
parts.push({ type: "text", text: block.text });
|
|
374
|
-
} else if (block.type === "image") {
|
|
375
|
-
parts.push({
|
|
376
|
-
type: "image",
|
|
377
|
-
source: {
|
|
378
|
-
type: "base64",
|
|
379
|
-
media_type: block.mimeType,
|
|
380
|
-
data: block.data
|
|
381
|
-
}
|
|
382
|
-
});
|
|
383
|
-
}
|
|
384
|
-
}
|
|
385
|
-
return parts;
|
|
386
|
-
}
|
|
387
|
-
function mapToolResultContentToAnthropic(content) {
|
|
388
|
-
if (typeof content === "string")
|
|
389
|
-
return content;
|
|
390
|
-
if (!Array.isArray(content))
|
|
391
|
-
return content;
|
|
392
|
-
const parts = [];
|
|
393
|
-
for (const block of content) {
|
|
394
|
-
if (block.type === "text") {
|
|
395
|
-
parts.push({ type: "text", text: block.text });
|
|
396
|
-
} else if (block.type === "image") {
|
|
397
|
-
parts.push({
|
|
398
|
-
type: "image",
|
|
399
|
-
source: {
|
|
400
|
-
type: "base64",
|
|
401
|
-
media_type: block.mimeType,
|
|
402
|
-
data: block.data
|
|
403
|
-
}
|
|
404
|
-
});
|
|
405
|
-
}
|
|
406
|
-
}
|
|
407
|
-
return parts;
|
|
408
|
-
}
|
|
409
|
-
function buildAnthropicMessages(input) {
|
|
410
|
-
const inputMessages = input.messages;
|
|
411
|
-
if (!inputMessages || inputMessages.length === 0) {
|
|
412
|
-
return [{ role: "user", content: input.prompt }];
|
|
413
|
-
}
|
|
414
|
-
const messages = [];
|
|
415
|
-
for (const msg of inputMessages) {
|
|
416
|
-
if (msg.role === "user") {
|
|
417
|
-
messages.push({ role: "user", content: mapUserContentToAnthropic(msg.content) });
|
|
418
|
-
} else if (msg.role === "assistant" && Array.isArray(msg.content)) {
|
|
419
|
-
const blocks = msg.content.map((block) => {
|
|
420
|
-
if (block.type === "text")
|
|
421
|
-
return { type: "text", text: block.text };
|
|
422
|
-
if (block.type === "tool_use") {
|
|
423
|
-
return { type: "tool_use", id: block.id, name: block.name, input: block.input };
|
|
424
|
-
}
|
|
425
|
-
return block;
|
|
426
|
-
});
|
|
427
|
-
messages.push({ role: "assistant", content: blocks });
|
|
428
|
-
} else if (msg.role === "tool" && Array.isArray(msg.content)) {
|
|
429
|
-
const blocks = msg.content.map((block) => ({
|
|
430
|
-
type: "tool_result",
|
|
431
|
-
tool_use_id: block.tool_use_id,
|
|
432
|
-
content: mapToolResultContentToAnthropic(block.content),
|
|
433
|
-
...block.is_error && { is_error: true }
|
|
434
|
-
}));
|
|
435
|
-
messages.push({ role: "user", content: blocks });
|
|
436
|
-
}
|
|
437
|
-
}
|
|
438
|
-
return messages;
|
|
439
|
-
}
|
|
440
|
-
function mapAnthropicToolChoice(toolChoice) {
|
|
441
|
-
if (!toolChoice || toolChoice === "auto")
|
|
442
|
-
return { type: "auto" };
|
|
443
|
-
if (toolChoice === "none")
|
|
444
|
-
return;
|
|
445
|
-
if (toolChoice === "required")
|
|
446
|
-
return { type: "any" };
|
|
447
|
-
return { type: "tool", name: toolChoice };
|
|
448
|
-
}
|
|
449
|
-
var Anthropic_ToolCalling = async (input, model, update_progress, signal) => {
|
|
450
|
-
if (Array.isArray(input.prompt)) {
|
|
451
|
-
getLogger5().warn("Anthropic_ToolCalling: array input received; processing sequentially (no native batch support)");
|
|
452
|
-
const prompts = input.prompt;
|
|
453
|
-
const texts = [];
|
|
454
|
-
const toolCallsList = [];
|
|
455
|
-
for (const item of prompts) {
|
|
456
|
-
const r = await Anthropic_ToolCalling({ ...input, prompt: item }, model, update_progress, signal);
|
|
457
|
-
texts.push(r.text);
|
|
458
|
-
toolCallsList.push(r.toolCalls);
|
|
459
|
-
}
|
|
460
|
-
return { text: texts, toolCalls: toolCallsList };
|
|
461
|
-
}
|
|
462
|
-
update_progress(0, "Starting Anthropic tool calling");
|
|
463
|
-
const client = await getClient(model);
|
|
464
|
-
const modelName = getModelName(model);
|
|
465
|
-
const tools = input.tools.map((t) => ({
|
|
466
|
-
name: t.name,
|
|
467
|
-
description: buildToolDescription(t),
|
|
468
|
-
input_schema: t.inputSchema
|
|
469
|
-
}));
|
|
470
|
-
const toolChoice = mapAnthropicToolChoice(input.toolChoice);
|
|
471
|
-
const messages = buildAnthropicMessages(input);
|
|
472
|
-
const params = {
|
|
473
|
-
model: modelName,
|
|
474
|
-
messages,
|
|
475
|
-
max_tokens: getMaxTokens(input, model),
|
|
476
|
-
temperature: input.temperature
|
|
477
|
-
};
|
|
478
|
-
if (input.systemPrompt) {
|
|
479
|
-
params.system = input.systemPrompt;
|
|
480
|
-
}
|
|
481
|
-
if (toolChoice !== undefined) {
|
|
482
|
-
params.tools = tools;
|
|
483
|
-
params.tool_choice = toolChoice;
|
|
484
|
-
}
|
|
485
|
-
const response = await client.messages.create(params, { signal });
|
|
486
|
-
const text = response.content.filter((b) => b.type === "text").map((b) => b.text).join("");
|
|
487
|
-
const toolCalls = [];
|
|
488
|
-
response.content.filter((b) => b.type === "tool_use").forEach((b) => {
|
|
489
|
-
toolCalls.push({
|
|
490
|
-
id: b.id,
|
|
491
|
-
name: b.name,
|
|
492
|
-
input: b.input ?? {}
|
|
493
|
-
});
|
|
494
|
-
});
|
|
495
|
-
update_progress(100, "Completed Anthropic tool calling");
|
|
496
|
-
return { text, toolCalls: filterValidToolCalls(toolCalls, input.tools) };
|
|
497
|
-
};
|
|
498
|
-
var Anthropic_ToolCalling_Stream = async function* (input, model, signal) {
|
|
499
|
-
const client = await getClient(model);
|
|
500
|
-
const modelName = getModelName(model);
|
|
501
|
-
const tools = input.tools.map((t) => ({
|
|
502
|
-
name: t.name,
|
|
503
|
-
description: buildToolDescription(t),
|
|
504
|
-
input_schema: t.inputSchema
|
|
505
|
-
}));
|
|
506
|
-
const toolChoice = mapAnthropicToolChoice(input.toolChoice);
|
|
507
|
-
const messages = buildAnthropicMessages(input);
|
|
508
|
-
const params = {
|
|
509
|
-
model: modelName,
|
|
510
|
-
messages,
|
|
511
|
-
max_tokens: getMaxTokens(input, model),
|
|
512
|
-
temperature: input.temperature
|
|
513
|
-
};
|
|
514
|
-
if (input.systemPrompt) {
|
|
515
|
-
params.system = input.systemPrompt;
|
|
516
|
-
}
|
|
517
|
-
if (toolChoice !== undefined) {
|
|
518
|
-
params.tools = tools;
|
|
519
|
-
params.tool_choice = toolChoice;
|
|
520
|
-
}
|
|
521
|
-
const stream = client.messages.stream(params, { signal });
|
|
522
|
-
const blockMeta = new Map;
|
|
523
|
-
let accumulatedText = "";
|
|
524
|
-
const toolCallMap = new Map;
|
|
525
|
-
for await (const event of stream) {
|
|
526
|
-
if (event.type === "content_block_start") {
|
|
527
|
-
const block = event.content_block;
|
|
528
|
-
const index = event.index;
|
|
529
|
-
if (block.type === "tool_use") {
|
|
530
|
-
blockMeta.set(index, {
|
|
531
|
-
type: "tool_use",
|
|
532
|
-
id: block.id,
|
|
533
|
-
name: block.name,
|
|
534
|
-
json: ""
|
|
535
|
-
});
|
|
536
|
-
} else if (block.type === "text") {
|
|
537
|
-
blockMeta.set(index, { type: "text", json: "" });
|
|
538
|
-
}
|
|
539
|
-
} else if (event.type === "content_block_delta") {
|
|
540
|
-
const index = event.index;
|
|
541
|
-
const delta = event.delta;
|
|
542
|
-
if (delta.type === "text_delta") {
|
|
543
|
-
accumulatedText += delta.text;
|
|
544
|
-
yield { type: "text-delta", port: "text", textDelta: delta.text };
|
|
545
|
-
} else if (delta.type === "input_json_delta") {
|
|
546
|
-
const meta = blockMeta.get(index);
|
|
547
|
-
if (meta) {
|
|
548
|
-
meta.json += delta.partial_json;
|
|
549
|
-
let parsedInput;
|
|
550
|
-
try {
|
|
551
|
-
parsedInput = JSON.parse(meta.json);
|
|
552
|
-
} catch {
|
|
553
|
-
const partial = parsePartialJson2(meta.json);
|
|
554
|
-
parsedInput = partial ?? {};
|
|
555
|
-
}
|
|
556
|
-
toolCallMap.set(meta.id ?? "", {
|
|
557
|
-
id: meta.id ?? "",
|
|
558
|
-
name: meta.name ?? "",
|
|
559
|
-
input: parsedInput
|
|
560
|
-
});
|
|
561
|
-
yield { type: "object-delta", port: "toolCalls", objectDelta: [...toolCallMap.values()] };
|
|
562
|
-
}
|
|
563
|
-
}
|
|
564
|
-
} else if (event.type === "content_block_stop") {
|
|
565
|
-
const index = event.index;
|
|
566
|
-
const meta = blockMeta.get(index);
|
|
567
|
-
if (meta?.type === "tool_use") {
|
|
568
|
-
let finalInput;
|
|
569
|
-
try {
|
|
570
|
-
finalInput = JSON.parse(meta.json);
|
|
571
|
-
} catch {
|
|
572
|
-
finalInput = parsePartialJson2(meta.json) ?? {};
|
|
573
|
-
}
|
|
574
|
-
const id = meta.id ?? "";
|
|
575
|
-
toolCallMap.set(id, { id, name: meta.name ?? "", input: finalInput });
|
|
576
|
-
yield { type: "object-delta", port: "toolCalls", objectDelta: [...toolCallMap.values()] };
|
|
577
|
-
}
|
|
578
|
-
blockMeta.delete(index);
|
|
579
|
-
}
|
|
580
|
-
}
|
|
581
|
-
const validToolCalls = filterValidToolCalls([...toolCallMap.values()], input.tools);
|
|
582
|
-
yield {
|
|
583
|
-
type: "finish",
|
|
584
|
-
data: { text: accumulatedText, toolCalls: validToolCalls }
|
|
585
|
-
};
|
|
586
|
-
};
|
|
587
|
-
|
|
588
320
|
// src/provider-anthropic/common/Anthropic_JobRunFns.ts
|
|
589
321
|
var ANTHROPIC_TASKS = {
|
|
590
322
|
CountTokensTask: Anthropic_CountTokens,
|
|
@@ -593,15 +325,13 @@ var ANTHROPIC_TASKS = {
|
|
|
593
325
|
TextRewriterTask: Anthropic_TextRewriter,
|
|
594
326
|
TextSummaryTask: Anthropic_TextSummary,
|
|
595
327
|
StructuredGenerationTask: Anthropic_StructuredGeneration,
|
|
596
|
-
ToolCallingTask: Anthropic_ToolCalling,
|
|
597
328
|
ModelSearchTask: Anthropic_ModelSearch
|
|
598
329
|
};
|
|
599
330
|
var ANTHROPIC_STREAM_TASKS = {
|
|
600
331
|
TextGenerationTask: Anthropic_TextGeneration_Stream,
|
|
601
332
|
TextRewriterTask: Anthropic_TextRewriter_Stream,
|
|
602
333
|
TextSummaryTask: Anthropic_TextSummary_Stream,
|
|
603
|
-
StructuredGenerationTask: Anthropic_StructuredGeneration_Stream
|
|
604
|
-
ToolCallingTask: Anthropic_ToolCalling_Stream
|
|
334
|
+
StructuredGenerationTask: Anthropic_StructuredGeneration_Stream
|
|
605
335
|
};
|
|
606
336
|
var ANTHROPIC_REACTIVE_TASKS = {
|
|
607
337
|
CountTokensTask: Anthropic_CountTokens_Reactive
|
|
@@ -609,9 +339,9 @@ var ANTHROPIC_REACTIVE_TASKS = {
|
|
|
609
339
|
|
|
610
340
|
// src/provider-anthropic/AnthropicQueuedProvider.ts
|
|
611
341
|
import {
|
|
612
|
-
|
|
342
|
+
AiProvider
|
|
613
343
|
} from "@workglow/ai";
|
|
614
|
-
class AnthropicQueuedProvider extends
|
|
344
|
+
class AnthropicQueuedProvider extends AiProvider {
|
|
615
345
|
name = ANTHROPIC;
|
|
616
346
|
displayName = "Anthropic";
|
|
617
347
|
isLocal = false;
|
|
@@ -623,7 +353,6 @@ class AnthropicQueuedProvider extends QueuedAiProvider {
|
|
|
623
353
|
"TextRewriterTask",
|
|
624
354
|
"TextSummaryTask",
|
|
625
355
|
"StructuredGenerationTask",
|
|
626
|
-
"ToolCallingTask",
|
|
627
356
|
"ModelSearchTask"
|
|
628
357
|
];
|
|
629
358
|
constructor(tasks, streamTasks, reactiveTasks) {
|
|
@@ -636,13 +365,13 @@ async function registerAnthropicInline(options) {
|
|
|
636
365
|
await new AnthropicQueuedProvider(ANTHROPIC_TASKS, ANTHROPIC_STREAM_TASKS, ANTHROPIC_REACTIVE_TASKS).register(options ?? {});
|
|
637
366
|
}
|
|
638
367
|
// src/provider-anthropic/registerAnthropicWorker.ts
|
|
639
|
-
import { getLogger as
|
|
368
|
+
import { getLogger as getLogger2, globalServiceRegistry, WORKER_SERVER } from "@workglow/util/worker";
|
|
640
369
|
|
|
641
370
|
// src/provider-anthropic/AnthropicProvider.ts
|
|
642
371
|
import {
|
|
643
|
-
AiProvider
|
|
372
|
+
AiProvider as AiProvider2
|
|
644
373
|
} from "@workglow/ai/worker";
|
|
645
|
-
class AnthropicProvider extends
|
|
374
|
+
class AnthropicProvider extends AiProvider2 {
|
|
646
375
|
name = ANTHROPIC;
|
|
647
376
|
displayName = "Anthropic";
|
|
648
377
|
isLocal = false;
|
|
@@ -654,7 +383,6 @@ class AnthropicProvider extends AiProvider {
|
|
|
654
383
|
"TextRewriterTask",
|
|
655
384
|
"TextSummaryTask",
|
|
656
385
|
"StructuredGenerationTask",
|
|
657
|
-
"ToolCallingTask",
|
|
658
386
|
"ModelSearchTask"
|
|
659
387
|
];
|
|
660
388
|
constructor(tasks, streamTasks, reactiveTasks) {
|
|
@@ -667,7 +395,7 @@ async function registerAnthropicWorker() {
|
|
|
667
395
|
const workerServer = globalServiceRegistry.get(WORKER_SERVER);
|
|
668
396
|
new AnthropicProvider(ANTHROPIC_TASKS, ANTHROPIC_STREAM_TASKS, ANTHROPIC_REACTIVE_TASKS).registerOnWorkerServer(workerServer);
|
|
669
397
|
workerServer.sendReady();
|
|
670
|
-
|
|
398
|
+
getLogger2().info("Anthropic worker job run functions registered");
|
|
671
399
|
}
|
|
672
400
|
export {
|
|
673
401
|
registerAnthropicWorker,
|
|
@@ -678,4 +406,4 @@ export {
|
|
|
678
406
|
getClient
|
|
679
407
|
};
|
|
680
408
|
|
|
681
|
-
//# debugId=
|
|
409
|
+
//# debugId=3271A25C52C755E164756E2164756E21
|