@workglow/ai-provider 0.1.1 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/common/ToolCallParsers.d.ts +253 -0
- package/dist/common/ToolCallParsers.d.ts.map +1 -0
- package/dist/provider-anthropic/AnthropicProvider.d.ts +3 -2
- package/dist/provider-anthropic/AnthropicProvider.d.ts.map +1 -1
- package/dist/provider-anthropic/AnthropicQueuedProvider.d.ts +3 -2
- 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_JobRunFns.d.ts.map +1 -1
- package/dist/provider-anthropic/common/Anthropic_ModelSchema.d.ts.map +1 -1
- package/dist/provider-anthropic/common/Anthropic_ToolCalling.d.ts +10 -0
- package/dist/provider-anthropic/common/Anthropic_ToolCalling.d.ts.map +1 -0
- package/dist/provider-anthropic/index.js +3 -4
- package/dist/provider-anthropic/index.js.map +3 -3
- package/dist/provider-anthropic/runtime.js +225 -8
- package/dist/provider-anthropic/runtime.js.map +9 -8
- package/dist/provider-chrome/WebBrowserProvider.d.ts +2 -1
- package/dist/provider-chrome/WebBrowserProvider.d.ts.map +1 -1
- package/dist/provider-chrome/WebBrowserQueuedProvider.d.ts +2 -1
- package/dist/provider-chrome/WebBrowserQueuedProvider.d.ts.map +1 -1
- package/dist/provider-chrome/common/WebBrowser_Constants.d.ts.map +1 -1
- package/dist/provider-chrome/common/WebBrowser_ModelSchema.d.ts.map +1 -1
- package/dist/provider-chrome/index.js +2 -4
- package/dist/provider-chrome/index.js.map +3 -3
- package/dist/provider-chrome/runtime.js +3 -7
- package/dist/provider-chrome/runtime.js.map +4 -4
- package/dist/provider-gemini/GoogleGeminiProvider.d.ts +3 -2
- package/dist/provider-gemini/GoogleGeminiProvider.d.ts.map +1 -1
- package/dist/provider-gemini/GoogleGeminiQueuedProvider.d.ts +3 -2
- package/dist/provider-gemini/GoogleGeminiQueuedProvider.d.ts.map +1 -1
- package/dist/provider-gemini/common/Gemini_JobRunFns.d.ts.map +1 -1
- package/dist/provider-gemini/common/Gemini_ModelSchema.d.ts.map +1 -1
- package/dist/provider-gemini/common/Gemini_ToolCalling.d.ts +10 -0
- package/dist/provider-gemini/common/Gemini_ToolCalling.d.ts.map +1 -0
- package/dist/provider-gemini/index.js +3 -4
- package/dist/provider-gemini/index.js.map +3 -3
- package/dist/provider-gemini/runtime.js +188 -8
- package/dist/provider-gemini/runtime.js.map +7 -6
- package/dist/provider-hf-inference/HfInferenceProvider.d.ts +3 -2
- package/dist/provider-hf-inference/HfInferenceProvider.d.ts.map +1 -1
- package/dist/provider-hf-inference/HfInferenceQueuedProvider.d.ts +3 -2
- package/dist/provider-hf-inference/HfInferenceQueuedProvider.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_ModelSchema.d.ts.map +1 -1
- package/dist/provider-hf-inference/common/HFI_ToolCalling.d.ts +10 -0
- package/dist/provider-hf-inference/common/HFI_ToolCalling.d.ts.map +1 -0
- 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 +157 -8
- package/dist/provider-hf-inference/runtime.js.map +7 -6
- package/dist/provider-hf-transformers/HuggingFaceTransformersProvider.d.ts +3 -2
- package/dist/provider-hf-transformers/HuggingFaceTransformersProvider.d.ts.map +1 -1
- package/dist/provider-hf-transformers/HuggingFaceTransformersQueuedProvider.d.ts +3 -3
- package/dist/provider-hf-transformers/HuggingFaceTransformersQueuedProvider.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_Constants.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_JobRunFns.d.ts +52 -0
- package/dist/provider-hf-transformers/common/HFT_JobRunFns.d.ts.map +1 -1
- 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 +1 -1
- package/dist/provider-hf-transformers/common/HFT_Pipeline.d.ts.map +1 -1
- package/dist/provider-hf-transformers/common/HFT_StructuredGeneration.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_TextQuestionAnswer.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/common/HFT_ToolCalling.d.ts +10 -0
- package/dist/provider-hf-transformers/common/HFT_ToolCalling.d.ts.map +1 -0
- package/dist/provider-hf-transformers/common/HFT_ToolMarkup.d.ts +20 -0
- package/dist/provider-hf-transformers/common/HFT_ToolMarkup.d.ts.map +1 -0
- package/dist/provider-hf-transformers/common/HFT_ToolParser.d.ts +67 -0
- package/dist/provider-hf-transformers/common/HFT_ToolParser.d.ts.map +1 -0
- package/dist/provider-hf-transformers/index.d.ts +1 -0
- package/dist/provider-hf-transformers/index.d.ts.map +1 -1
- package/dist/provider-hf-transformers/index.js +71 -7
- package/dist/provider-hf-transformers/index.js.map +7 -6
- package/dist/provider-hf-transformers/runtime.d.ts +1 -0
- package/dist/provider-hf-transformers/runtime.d.ts.map +1 -1
- package/dist/provider-hf-transformers/runtime.js +1244 -13
- package/dist/provider-hf-transformers/runtime.js.map +18 -15
- package/dist/provider-llamacpp/LlamaCppProvider.d.ts +3 -2
- package/dist/provider-llamacpp/LlamaCppProvider.d.ts.map +1 -1
- package/dist/provider-llamacpp/LlamaCppQueuedProvider.d.ts +3 -2
- package/dist/provider-llamacpp/LlamaCppQueuedProvider.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.map +1 -1
- package/dist/provider-llamacpp/common/LlamaCpp_ToolCalling.d.ts +10 -0
- package/dist/provider-llamacpp/common/LlamaCpp_ToolCalling.d.ts.map +1 -0
- package/dist/provider-llamacpp/common/LlamaCpp_ToolParser.d.ts +35 -0
- package/dist/provider-llamacpp/common/LlamaCpp_ToolParser.d.ts.map +1 -0
- package/dist/provider-llamacpp/index.js +3 -4
- package/dist/provider-llamacpp/index.js.map +3 -3
- package/dist/provider-llamacpp/runtime.js +1394 -9
- package/dist/provider-llamacpp/runtime.js.map +11 -8
- package/dist/provider-ollama/OllamaProvider.d.ts +3 -2
- package/dist/provider-ollama/OllamaProvider.d.ts.map +1 -1
- package/dist/provider-ollama/OllamaQueuedProvider.d.ts +3 -2
- package/dist/provider-ollama/OllamaQueuedProvider.d.ts.map +1 -1
- package/dist/provider-ollama/common/Ollama_JobRunFns.browser.d.ts +47 -1
- package/dist/provider-ollama/common/Ollama_JobRunFns.browser.d.ts.map +1 -1
- package/dist/provider-ollama/common/Ollama_JobRunFns.d.ts +46 -0
- package/dist/provider-ollama/common/Ollama_JobRunFns.d.ts.map +1 -1
- package/dist/provider-ollama/common/Ollama_ModelSchema.d.ts.map +1 -1
- package/dist/provider-ollama/common/Ollama_ToolCalling.d.ts +16 -0
- package/dist/provider-ollama/common/Ollama_ToolCalling.d.ts.map +1 -0
- 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 +130 -8
- package/dist/provider-ollama/runtime.browser.js.map +8 -7
- package/dist/provider-ollama/runtime.js +125 -8
- package/dist/provider-ollama/runtime.js.map +8 -7
- package/dist/provider-openai/OpenAiProvider.d.ts +3 -2
- package/dist/provider-openai/OpenAiProvider.d.ts.map +1 -1
- package/dist/provider-openai/OpenAiQueuedProvider.d.ts +3 -2
- 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_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_ModelSchema.d.ts.map +1 -1
- package/dist/provider-openai/common/OpenAI_ToolCalling.d.ts +10 -0
- package/dist/provider-openai/common/OpenAI_ToolCalling.d.ts.map +1 -0
- 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 +138 -8
- package/dist/provider-openai/runtime.browser.js.map +8 -7
- package/dist/provider-openai/runtime.js +138 -8
- package/dist/provider-openai/runtime.js.map +8 -7
- package/dist/provider-tf-mediapipe/TensorFlowMediaPipeProvider.d.ts +2 -1
- package/dist/provider-tf-mediapipe/TensorFlowMediaPipeProvider.d.ts.map +1 -1
- package/dist/provider-tf-mediapipe/TensorFlowMediaPipeQueuedProvider.d.ts +2 -1
- package/dist/provider-tf-mediapipe/TensorFlowMediaPipeQueuedProvider.d.ts.map +1 -1
- package/dist/provider-tf-mediapipe/common/TFMP_Constants.d.ts.map +1 -1
- package/dist/provider-tf-mediapipe/common/TFMP_Download.d.ts.map +1 -1
- package/dist/provider-tf-mediapipe/common/TFMP_ImageClassification.d.ts.map +1 -1
- package/dist/provider-tf-mediapipe/common/TFMP_JobRunFns.d.ts.map +1 -1
- package/dist/provider-tf-mediapipe/common/TFMP_ModelSchema.d.ts.map +1 -1
- package/dist/provider-tf-mediapipe/common/TFMP_Runtime.d.ts +3 -16
- package/dist/provider-tf-mediapipe/common/TFMP_Runtime.d.ts.map +1 -1
- package/dist/provider-tf-mediapipe/index.js.map +2 -2
- package/dist/provider-tf-mediapipe/runtime.js +2 -4
- package/dist/provider-tf-mediapipe/runtime.js.map +13 -13
- package/dist/test.d.ts +7 -0
- package/dist/test.d.ts.map +1 -0
- package/dist/test.js +913 -0
- package/dist/test.js.map +10 -0
- package/package.json +24 -17
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OllamaQueuedProvider.d.ts","sourceRoot":"","sources":["../../src/provider-ollama/OllamaQueuedProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"OllamaQueuedProvider.d.ts","sourceRoot":"","sources":["../../src/provider-ollama/OllamaQueuedProvider.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,uBAAuB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEjG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAErE,4FAA4F;AAC5F,qBAAa,oBAAqB,SAAQ,UAAU,CAAC,iBAAiB,CAAC;IACrE,QAAQ,CAAC,IAAI,YAAU;IACvB,QAAQ,CAAC,WAAW,YAAY;IAChC,QAAQ,CAAC,OAAO,QAAQ;IACxB,QAAQ,CAAC,eAAe,QAAQ;IAEhC,QAAQ,CAAC,SAAS,YAChB,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACR;IAEX,YACE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC,EACpE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC,EAC7E,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC,EAGrF;CACF"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2025 Steven Roussey <sroussey@gmail.com>
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import type { AiProviderRunFn, AiProviderStreamFn } from "@workglow/ai";
|
|
6
|
+
import type { AiProviderRunFn, AiProviderStreamFn, ToolCallingTaskInput } from "@workglow/ai";
|
|
7
7
|
import type { OllamaModelConfig } from "./Ollama_ModelSchema";
|
|
8
8
|
export { getClient, getModelName, loadOllamaSDK } from "./Ollama_Client.browser";
|
|
9
9
|
export declare const Ollama_TextGeneration: AiProviderRunFn<{
|
|
@@ -249,6 +249,52 @@ export declare const Ollama_TextSummary_Stream: AiProviderStreamFn<{
|
|
|
249
249
|
tasks?: string[] | undefined;
|
|
250
250
|
title?: string | undefined;
|
|
251
251
|
}>;
|
|
252
|
+
export declare const Ollama_ToolCalling: AiProviderRunFn<ToolCallingTaskInput, {
|
|
253
|
+
text: string;
|
|
254
|
+
toolCalls: {
|
|
255
|
+
id: string;
|
|
256
|
+
input: {
|
|
257
|
+
[x: string]: unknown;
|
|
258
|
+
};
|
|
259
|
+
name: string;
|
|
260
|
+
}[];
|
|
261
|
+
}, {
|
|
262
|
+
description?: string | undefined;
|
|
263
|
+
metadata?: {
|
|
264
|
+
[x: string]: unknown;
|
|
265
|
+
} | undefined;
|
|
266
|
+
model_id?: string | undefined;
|
|
267
|
+
provider: "OLLAMA";
|
|
268
|
+
provider_config: {
|
|
269
|
+
base_url?: string | undefined;
|
|
270
|
+
model_name: string;
|
|
271
|
+
};
|
|
272
|
+
tasks?: string[] | undefined;
|
|
273
|
+
title?: string | undefined;
|
|
274
|
+
}>;
|
|
275
|
+
export declare const Ollama_ToolCalling_Stream: AiProviderStreamFn<ToolCallingTaskInput, {
|
|
276
|
+
text: string;
|
|
277
|
+
toolCalls: {
|
|
278
|
+
id: string;
|
|
279
|
+
input: {
|
|
280
|
+
[x: string]: unknown;
|
|
281
|
+
};
|
|
282
|
+
name: string;
|
|
283
|
+
}[];
|
|
284
|
+
}, {
|
|
285
|
+
description?: string | undefined;
|
|
286
|
+
metadata?: {
|
|
287
|
+
[x: string]: unknown;
|
|
288
|
+
} | undefined;
|
|
289
|
+
model_id?: string | undefined;
|
|
290
|
+
provider: "OLLAMA";
|
|
291
|
+
provider_config: {
|
|
292
|
+
base_url?: string | undefined;
|
|
293
|
+
model_name: string;
|
|
294
|
+
};
|
|
295
|
+
tasks?: string[] | undefined;
|
|
296
|
+
title?: string | undefined;
|
|
297
|
+
}>;
|
|
252
298
|
export declare const Ollama_ModelInfo: AiProviderRunFn<{
|
|
253
299
|
detail?: "cached_status" | "files" | "files_with_metadata" | undefined;
|
|
254
300
|
model: string | {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Ollama_JobRunFns.browser.d.ts","sourceRoot":"","sources":["../../../src/provider-ollama/common/Ollama_JobRunFns.browser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Ollama_JobRunFns.browser.d.ts","sourceRoot":"","sources":["../../../src/provider-ollama/common/Ollama_JobRunFns.browser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAG9F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAW9D,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAcjF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAwC,CAAC;AAC3E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAuC,CAAC;AACzE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAsC,CAAC;AACvE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAqC,CAAC;AAErE,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAA8C,CAAC;AACxF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAA4C,CAAC;AACpF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAA2C,CAAC;AAElF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;EAG9B,CAAC;AACF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;EAGrC,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAmC,CAAC;AACjE,eAAO,MAAM,kBAAkB;;;gDAAqC,CAAC;AAErE,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAQrF,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,MAAM,CACtC,MAAM,EACN,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAMhD,CAAC"}
|
|
@@ -248,6 +248,52 @@ export declare const Ollama_TextSummary_Stream: AiProviderStreamFn<{
|
|
|
248
248
|
tasks?: string[] | undefined;
|
|
249
249
|
title?: string | undefined;
|
|
250
250
|
}>;
|
|
251
|
+
export declare const Ollama_ToolCalling: AiProviderRunFn<import("@workglow/ai").ToolCallingTaskInput, {
|
|
252
|
+
text: string;
|
|
253
|
+
toolCalls: {
|
|
254
|
+
id: string;
|
|
255
|
+
input: {
|
|
256
|
+
[x: string]: unknown;
|
|
257
|
+
};
|
|
258
|
+
name: string;
|
|
259
|
+
}[];
|
|
260
|
+
}, {
|
|
261
|
+
description?: string | undefined;
|
|
262
|
+
metadata?: {
|
|
263
|
+
[x: string]: unknown;
|
|
264
|
+
} | undefined;
|
|
265
|
+
model_id?: string | undefined;
|
|
266
|
+
provider: "OLLAMA";
|
|
267
|
+
provider_config: {
|
|
268
|
+
base_url?: string | undefined;
|
|
269
|
+
model_name: string;
|
|
270
|
+
};
|
|
271
|
+
tasks?: string[] | undefined;
|
|
272
|
+
title?: string | undefined;
|
|
273
|
+
}>;
|
|
274
|
+
export declare const Ollama_ToolCalling_Stream: AiProviderStreamFn<import("@workglow/ai").ToolCallingTaskInput, {
|
|
275
|
+
text: string;
|
|
276
|
+
toolCalls: {
|
|
277
|
+
id: string;
|
|
278
|
+
input: {
|
|
279
|
+
[x: string]: unknown;
|
|
280
|
+
};
|
|
281
|
+
name: string;
|
|
282
|
+
}[];
|
|
283
|
+
}, {
|
|
284
|
+
description?: string | undefined;
|
|
285
|
+
metadata?: {
|
|
286
|
+
[x: string]: unknown;
|
|
287
|
+
} | undefined;
|
|
288
|
+
model_id?: string | undefined;
|
|
289
|
+
provider: "OLLAMA";
|
|
290
|
+
provider_config: {
|
|
291
|
+
base_url?: string | undefined;
|
|
292
|
+
model_name: string;
|
|
293
|
+
};
|
|
294
|
+
tasks?: string[] | undefined;
|
|
295
|
+
title?: string | undefined;
|
|
296
|
+
}>;
|
|
251
297
|
export declare const Ollama_ModelInfo: AiProviderRunFn<{
|
|
252
298
|
detail?: "cached_status" | "files" | "files_with_metadata" | undefined;
|
|
253
299
|
model: string | {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Ollama_JobRunFns.d.ts","sourceRoot":"","sources":["../../../src/provider-ollama/common/Ollama_JobRunFns.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"Ollama_JobRunFns.d.ts","sourceRoot":"","sources":["../../../src/provider-ollama/common/Ollama_JobRunFns.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAa9D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAwC,CAAC;AAC3E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAuC,CAAC;AACzE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAsC,CAAC;AACvE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAqC,CAAC;AAErE,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAA8C,CAAC;AACxF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAA4C,CAAC;AACpF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAA2C,CAAC;AAElF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;EAAyD,CAAC;AACzF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;EAGrC,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAmC,CAAC;AACjE,eAAO,MAAM,kBAAkB;;;gDAAqC,CAAC;AAErE,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAQrF,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,MAAM,CACtC,MAAM,EACN,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAMhD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Ollama_ModelSchema.d.ts","sourceRoot":"","sources":["../../../src/provider-ollama/common/Ollama_ModelSchema.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAwB,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGzE,eAAO,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"Ollama_ModelSchema.d.ts","sourceRoot":"","sources":["../../../src/provider-ollama/common/Ollama_ModelSchema.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAwB,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGzE,eAAO,MAAM,iBAAiB;mBACtB,QAAQ;;iBAEZ,QAAQ;qBACN,KAAK;qBACL,WAAW,EAAE,yCAAyC;;iBAExD,eAAe;qBACb,IAAI,EAAE,QAAQ;qBACd,WAAW,EAAE,gCAAgC;qBAC7C,UAAU;yBACR,UAAU;6BACR,IAAI,EAAE,QAAQ;6BACd,WAAW,EAAE,qEAAqE;;yBAEpF,QAAQ;6BACN,IAAI,EAAE,QAAQ;6BACd,WAAW,EAAE,iCAAiC;6BAC9C,OAAO;;;qBAGX,QAAQ;qBACR,oBAAoB;;;;;CAKe,CAAC;AAE1C,eAAO,MAAM,uBAAuB;mBAC5B,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;qBA1BV,KAAK;qBACL,WAAW,EAAE,yCAAyC;;;qBAGtD,IAAI,EAAE,QAAQ;qBACd,WAAW,EAAE,gCAAgC;qBAC7C,UAAU;yBACR,UAAU;6BACR,IAAI,EAAE,QAAQ;6BACd,WAAW,EAAE,qEAAqE;;yBAEpF,QAAQ;6BACN,IAAI,EAAE,QAAQ;6BACd,WAAW,EAAE,iCAAiC;6BAC9C,OAAO;;;qBAGX,QAAQ;qBACR,oBAAoB;;;;;CAee,CAAC;AAE1C,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE3E,eAAO,MAAM,uBAAuB;mBAC5B,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;qBAtCV,KAAK;qBACL,WAAW,EAAE,yCAAyC;;;qBAGtD,IAAI,EAAE,QAAQ;qBACd,WAAW,EAAE,gCAAgC;qBAC7C,UAAU;yBACR,UAAU;6BACR,IAAI,EAAE,QAAQ;6BACd,WAAW,EAAE,qEAAqE;;yBAEpF,QAAQ;6BACN,IAAI,EAAE,QAAQ;6BACd,WAAW,EAAE,iCAAiC;6BAC9C,OAAO;;;qBAGX,QAAQ;qBACR,oBAAoB;;;;;CA2Be,CAAC;AAE1C,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Steven Roussey <sroussey@gmail.com>
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type { AiProviderRunFn, AiProviderStreamFn, ToolCallingTaskInput, ToolCallingTaskOutput } from "@workglow/ai";
|
|
7
|
+
import type { OllamaModelConfig } from "./Ollama_ModelSchema";
|
|
8
|
+
type GetClient = (model: OllamaModelConfig | undefined) => Promise<any>;
|
|
9
|
+
export type OllamaToolCallingMessagesFn = (input: ToolCallingTaskInput) => Array<{
|
|
10
|
+
role: string;
|
|
11
|
+
content: string;
|
|
12
|
+
}>;
|
|
13
|
+
export declare function createOllamaToolCalling(getClient: GetClient, buildMessages: OllamaToolCallingMessagesFn): AiProviderRunFn<ToolCallingTaskInput, ToolCallingTaskOutput, OllamaModelConfig>;
|
|
14
|
+
export declare function createOllamaToolCallingStream(getClient: GetClient, buildMessages: OllamaToolCallingMessagesFn): AiProviderStreamFn<ToolCallingTaskInput, ToolCallingTaskOutput, OllamaModelConfig>;
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=Ollama_ToolCalling.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Ollama_ToolCalling.d.ts","sourceRoot":"","sources":["../../../src/provider-ollama/common/Ollama_ToolCalling.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EAGtB,MAAM,cAAc,CAAC;AAGtB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAG9D,KAAK,SAAS,GAAG,CAAC,KAAK,EAAE,iBAAiB,GAAG,SAAS,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;AAExE,MAAM,MAAM,2BAA2B,GAAG,CACxC,KAAK,EAAE,oBAAoB,KACxB,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAa9C,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,2BAA2B,GACzC,eAAe,CAAC,oBAAoB,EAAE,qBAAqB,EAAE,iBAAiB,CAAC,CA+CjF;AAED,wBAAgB,6BAA6B,CAC3C,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,2BAA2B,GACzC,kBAAkB,CAAC,oBAAoB,EAAE,qBAAqB,EAAE,iBAAiB,CAAC,CAkEpF"}
|
|
@@ -58,9 +58,7 @@ var OllamaModelConfigSchema = {
|
|
|
58
58
|
additionalProperties: false
|
|
59
59
|
};
|
|
60
60
|
// src/provider-ollama/OllamaQueuedProvider.ts
|
|
61
|
-
import {
|
|
62
|
-
AiProvider
|
|
63
|
-
} from "@workglow/ai";
|
|
61
|
+
import { AiProvider } from "@workglow/ai";
|
|
64
62
|
class OllamaQueuedProvider extends AiProvider {
|
|
65
63
|
name = OLLAMA;
|
|
66
64
|
displayName = "Ollama";
|
|
@@ -72,6 +70,7 @@ class OllamaQueuedProvider extends AiProvider {
|
|
|
72
70
|
"TextEmbeddingTask",
|
|
73
71
|
"TextRewriterTask",
|
|
74
72
|
"TextSummaryTask",
|
|
73
|
+
"ToolCallingTask",
|
|
75
74
|
"ModelSearchTask"
|
|
76
75
|
];
|
|
77
76
|
constructor(tasks, streamTasks, reactiveTasks) {
|
|
@@ -92,4 +91,4 @@ export {
|
|
|
92
91
|
OLLAMA
|
|
93
92
|
};
|
|
94
93
|
|
|
95
|
-
//# debugId=
|
|
94
|
+
//# debugId=D798AA28A73A9F2564756E2164756E21
|
|
@@ -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 OLLAMA = \"OLLAMA\";\nexport const OLLAMA_DEFAULT_BASE_URL = \"http://localhost:11434\";\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 { OLLAMA, OLLAMA_DEFAULT_BASE_URL } from \"./Ollama_Constants\";\n\nexport const OllamaModelSchema = {\n type: \"object\",\n properties: {\n provider: {\n const: OLLAMA,\n description: \"Discriminator: Ollama local LLM server.\",\n },\n provider_config: {\n type: \"object\",\n description: \"Ollama-specific configuration.\",\n properties: {\n model_name: {\n type: \"string\",\n description: \"The Ollama model identifier (e.g., 'llama3.2', 'nomic-embed-text').\",\n },\n base_url: {\n type: \"string\",\n description: \"Base URL for the Ollama server.\",\n default: OLLAMA_DEFAULT_BASE_URL,\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 OllamaModelRecordSchema = {\n type: \"object\",\n properties: {\n ...ModelRecordSchema.properties,\n ...OllamaModelSchema.properties,\n },\n required: [...ModelRecordSchema.required, ...OllamaModelSchema.required],\n additionalProperties: false,\n} as const satisfies DataPortSchemaObject;\n\nexport type OllamaModelRecord = FromSchema<typeof OllamaModelRecordSchema>;\n\nexport const OllamaModelConfigSchema = {\n type: \"object\",\n properties: {\n ...ModelConfigSchema.properties,\n ...OllamaModelSchema.properties,\n },\n required: [...ModelConfigSchema.required, ...OllamaModelSchema.required],\n additionalProperties: false,\n} as const satisfies DataPortSchemaObject;\n\nexport type OllamaModelConfig = FromSchema<typeof OllamaModelConfigSchema>;\n",
|
|
7
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\
|
|
7
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { AiProvider } from \"@workglow/ai\";\nimport type { AiProviderReactiveRunFn, AiProviderRunFn, AiProviderStreamFn } from \"@workglow/ai\";\nimport { OLLAMA } from \"./common/Ollama_Constants\";\nimport type { OllamaModelConfig } from \"./common/Ollama_ModelSchema\";\n\n/** Main-thread registration (inline or worker-backed). No queue — uses direct execution. */\nexport class OllamaQueuedProvider extends AiProvider<OllamaModelConfig> {\n readonly name = OLLAMA;\n readonly displayName = \"Ollama\";\n readonly isLocal = true;\n readonly supportsBrowser = true;\n\n readonly taskTypes = [\n \"ModelInfoTask\",\n \"TextGenerationTask\",\n \"TextEmbeddingTask\",\n \"TextRewriterTask\",\n \"TextSummaryTask\",\n \"ToolCallingTask\",\n \"ModelSearchTask\",\n ] as const;\n\n constructor(\n tasks?: Record<string, AiProviderRunFn<any, any, OllamaModelConfig>>,\n streamTasks?: Record<string, AiProviderStreamFn<any, any, OllamaModelConfig>>,\n reactiveTasks?: Record<string, AiProviderReactiveRunFn<any, any, OllamaModelConfig>>\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 { OllamaQueuedProvider } from \"./OllamaQueuedProvider\";\n\nexport async function registerOllama(\n options: AiProviderRegisterOptions & {\n worker: Worker | (() => Worker);\n }\n): Promise<void> {\n await new OllamaQueuedProvider().register(options);\n}\n"
|
|
9
9
|
],
|
|
10
|
-
"mappings": ";;;;;;;;;AAMO,IAAM,SAAS;AACf,IAAM,0BAA0B;;ACDvC;AAIO,IAAM,oBAAoB;AAAA,EAC/B,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,aAAa;AAAA,QACf;AAAA,QACA,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,UACb,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,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,YAAY;AAAA,OACP,kBAAkB;AAAA,OAClB,kBAAkB;AAAA,EACvB;AAAA,EACA,UAAU,CAAC,GAAG,kBAAkB,UAAU,GAAG,kBAAkB,QAAQ;AAAA,EACvE,sBAAsB;AACxB;AAIO,IAAM,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,YAAY;AAAA,OACP,kBAAkB;AAAA,OAClB,kBAAkB;AAAA,EACvB;AAAA,EACA,UAAU,CAAC,GAAG,kBAAkB,UAAU,GAAG,kBAAkB,QAAQ;AAAA,EACvE,sBAAsB;AACxB;;ACrDA;
|
|
11
|
-
"debugId": "
|
|
10
|
+
"mappings": ";;;;;;;;;AAMO,IAAM,SAAS;AACf,IAAM,0BAA0B;;ACDvC;AAIO,IAAM,oBAAoB;AAAA,EAC/B,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,aAAa;AAAA,QACf;AAAA,QACA,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,UACb,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,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,YAAY;AAAA,OACP,kBAAkB;AAAA,OAClB,kBAAkB;AAAA,EACvB;AAAA,EACA,UAAU,CAAC,GAAG,kBAAkB,UAAU,GAAG,kBAAkB,QAAQ;AAAA,EACvE,sBAAsB;AACxB;AAIO,IAAM,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,YAAY;AAAA,OACP,kBAAkB;AAAA,OAClB,kBAAkB;AAAA,EACvB;AAAA,EACA,UAAU,CAAC,GAAG,kBAAkB,UAAU,GAAG,kBAAkB,QAAQ;AAAA,EACvE,sBAAsB;AACxB;;ACrDA;AAMO,MAAM,6BAA6B,WAA8B;AAAA,EAC7D,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;;;AC1BA,eAAsB,cAAc,CAClC,SAGe;AAAA,EACf,MAAM,IAAI,qBAAqB,EAAE,SAAS,OAAO;AAAA;",
|
|
11
|
+
"debugId": "D798AA28A73A9F2564756E2164756E21",
|
|
12
12
|
"names": []
|
|
13
13
|
}
|
|
@@ -73,9 +73,7 @@ var OllamaModelConfigSchema = {
|
|
|
73
73
|
additionalProperties: false
|
|
74
74
|
};
|
|
75
75
|
// src/provider-ollama/OllamaQueuedProvider.ts
|
|
76
|
-
import {
|
|
77
|
-
AiProvider
|
|
78
|
-
} from "@workglow/ai";
|
|
76
|
+
import { AiProvider } from "@workglow/ai";
|
|
79
77
|
class OllamaQueuedProvider extends AiProvider {
|
|
80
78
|
name = OLLAMA;
|
|
81
79
|
displayName = "Ollama";
|
|
@@ -87,6 +85,7 @@ class OllamaQueuedProvider extends AiProvider {
|
|
|
87
85
|
"TextEmbeddingTask",
|
|
88
86
|
"TextRewriterTask",
|
|
89
87
|
"TextSummaryTask",
|
|
88
|
+
"ToolCallingTask",
|
|
90
89
|
"ModelSearchTask"
|
|
91
90
|
];
|
|
92
91
|
constructor(tasks, streamTasks, reactiveTasks) {
|
|
@@ -107,4 +106,4 @@ export {
|
|
|
107
106
|
OLLAMA
|
|
108
107
|
};
|
|
109
108
|
|
|
110
|
-
//# debugId=
|
|
109
|
+
//# debugId=9B7DA80D7667189F64756E2164756E21
|
|
@@ -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 OLLAMA = \"OLLAMA\";\nexport const OLLAMA_DEFAULT_BASE_URL = \"http://localhost:11434\";\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 { OLLAMA, OLLAMA_DEFAULT_BASE_URL } from \"./Ollama_Constants\";\n\nexport const OllamaModelSchema = {\n type: \"object\",\n properties: {\n provider: {\n const: OLLAMA,\n description: \"Discriminator: Ollama local LLM server.\",\n },\n provider_config: {\n type: \"object\",\n description: \"Ollama-specific configuration.\",\n properties: {\n model_name: {\n type: \"string\",\n description: \"The Ollama model identifier (e.g., 'llama3.2', 'nomic-embed-text').\",\n },\n base_url: {\n type: \"string\",\n description: \"Base URL for the Ollama server.\",\n default: OLLAMA_DEFAULT_BASE_URL,\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 OllamaModelRecordSchema = {\n type: \"object\",\n properties: {\n ...ModelRecordSchema.properties,\n ...OllamaModelSchema.properties,\n },\n required: [...ModelRecordSchema.required, ...OllamaModelSchema.required],\n additionalProperties: false,\n} as const satisfies DataPortSchemaObject;\n\nexport type OllamaModelRecord = FromSchema<typeof OllamaModelRecordSchema>;\n\nexport const OllamaModelConfigSchema = {\n type: \"object\",\n properties: {\n ...ModelConfigSchema.properties,\n ...OllamaModelSchema.properties,\n },\n required: [...ModelConfigSchema.required, ...OllamaModelSchema.required],\n additionalProperties: false,\n} as const satisfies DataPortSchemaObject;\n\nexport type OllamaModelConfig = FromSchema<typeof OllamaModelConfigSchema>;\n",
|
|
7
|
-
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport {\
|
|
7
|
+
"/**\n * @license\n * Copyright 2025 Steven Roussey <sroussey@gmail.com>\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { AiProvider } from \"@workglow/ai\";\nimport type { AiProviderReactiveRunFn, AiProviderRunFn, AiProviderStreamFn } from \"@workglow/ai\";\nimport { OLLAMA } from \"./common/Ollama_Constants\";\nimport type { OllamaModelConfig } from \"./common/Ollama_ModelSchema\";\n\n/** Main-thread registration (inline or worker-backed). No queue — uses direct execution. */\nexport class OllamaQueuedProvider extends AiProvider<OllamaModelConfig> {\n readonly name = OLLAMA;\n readonly displayName = \"Ollama\";\n readonly isLocal = true;\n readonly supportsBrowser = true;\n\n readonly taskTypes = [\n \"ModelInfoTask\",\n \"TextGenerationTask\",\n \"TextEmbeddingTask\",\n \"TextRewriterTask\",\n \"TextSummaryTask\",\n \"ToolCallingTask\",\n \"ModelSearchTask\",\n ] as const;\n\n constructor(\n tasks?: Record<string, AiProviderRunFn<any, any, OllamaModelConfig>>,\n streamTasks?: Record<string, AiProviderStreamFn<any, any, OllamaModelConfig>>,\n reactiveTasks?: Record<string, AiProviderReactiveRunFn<any, any, OllamaModelConfig>>\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 { OllamaQueuedProvider } from \"./OllamaQueuedProvider\";\n\nexport async function registerOllama(\n options: AiProviderRegisterOptions & {\n worker: Worker | (() => Worker);\n }\n): Promise<void> {\n await new OllamaQueuedProvider().register(options);\n}\n"
|
|
9
9
|
],
|
|
10
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAMO,IAAM,SAAS;AACf,IAAM,0BAA0B;;ACDvC;AAIO,IAAM,oBAAoB;AAAA,EAC/B,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,aAAa;AAAA,QACf;AAAA,QACA,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,UACb,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,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,YAAY;AAAA,OACP,kBAAkB;AAAA,OAClB,kBAAkB;AAAA,EACvB;AAAA,EACA,UAAU,CAAC,GAAG,kBAAkB,UAAU,GAAG,kBAAkB,QAAQ;AAAA,EACvE,sBAAsB;AACxB;AAIO,IAAM,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,YAAY;AAAA,OACP,kBAAkB;AAAA,OAClB,kBAAkB;AAAA,EACvB;AAAA,EACA,UAAU,CAAC,GAAG,kBAAkB,UAAU,GAAG,kBAAkB,QAAQ;AAAA,EACvE,sBAAsB;AACxB;;ACrDA;
|
|
11
|
-
"debugId": "
|
|
10
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAMO,IAAM,SAAS;AACf,IAAM,0BAA0B;;ACDvC;AAIO,IAAM,oBAAoB;AAAA,EAC/B,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,aAAa;AAAA,QACf;AAAA,QACA,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa;AAAA,UACb,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,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,YAAY;AAAA,OACP,kBAAkB;AAAA,OAClB,kBAAkB;AAAA,EACvB;AAAA,EACA,UAAU,CAAC,GAAG,kBAAkB,UAAU,GAAG,kBAAkB,QAAQ;AAAA,EACvE,sBAAsB;AACxB;AAIO,IAAM,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,YAAY;AAAA,OACP,kBAAkB;AAAA,OAClB,kBAAkB;AAAA,EACvB;AAAA,EACA,UAAU,CAAC,GAAG,kBAAkB,UAAU,GAAG,kBAAkB,QAAQ;AAAA,EACvE,sBAAsB;AACxB;;ACrDA;AAMO,MAAM,6BAA6B,WAA8B;AAAA,EAC7D,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;;;AC1BA,eAAsB,cAAc,CAClC,SAGe;AAAA,EACf,MAAM,IAAI,qBAAqB,EAAE,SAAS,OAAO;AAAA;",
|
|
11
|
+
"debugId": "9B7DA80D7667189F64756E2164756E21",
|
|
12
12
|
"names": []
|
|
13
13
|
}
|
|
@@ -284,7 +284,127 @@ function createOllamaTextSummaryStream(getClient2) {
|
|
|
284
284
|
};
|
|
285
285
|
}
|
|
286
286
|
|
|
287
|
+
// src/provider-ollama/common/Ollama_ToolCalling.ts
|
|
288
|
+
import { buildToolDescription, filterValidToolCalls } from "@workglow/ai/worker";
|
|
289
|
+
import { parsePartialJson } from "@workglow/util/worker";
|
|
290
|
+
function mapOllamaTools(tools) {
|
|
291
|
+
return tools.map((t) => ({
|
|
292
|
+
type: "function",
|
|
293
|
+
function: {
|
|
294
|
+
name: t.name,
|
|
295
|
+
description: buildToolDescription(t),
|
|
296
|
+
parameters: t.inputSchema
|
|
297
|
+
}
|
|
298
|
+
}));
|
|
299
|
+
}
|
|
300
|
+
function createOllamaToolCalling(getClient2, buildMessages) {
|
|
301
|
+
const run = async (input, model, update_progress, _signal) => {
|
|
302
|
+
update_progress(0, "Starting Ollama tool calling");
|
|
303
|
+
const client = await getClient2(model);
|
|
304
|
+
const modelName = getOllamaModelName(model);
|
|
305
|
+
const messages = buildMessages(input);
|
|
306
|
+
const tools = input.toolChoice === "none" ? undefined : mapOllamaTools(input.tools);
|
|
307
|
+
const response = await client.chat({
|
|
308
|
+
model: modelName,
|
|
309
|
+
messages,
|
|
310
|
+
tools,
|
|
311
|
+
options: {
|
|
312
|
+
temperature: input.temperature,
|
|
313
|
+
num_predict: input.maxTokens
|
|
314
|
+
}
|
|
315
|
+
});
|
|
316
|
+
const text = response.message.content ?? "";
|
|
317
|
+
const toolCalls = [];
|
|
318
|
+
(response.message.tool_calls ?? []).forEach((tc, index) => {
|
|
319
|
+
let parsedInput = {};
|
|
320
|
+
const fnArgs = tc.function.arguments;
|
|
321
|
+
if (typeof fnArgs === "string") {
|
|
322
|
+
try {
|
|
323
|
+
parsedInput = JSON.parse(fnArgs);
|
|
324
|
+
} catch {
|
|
325
|
+
const partial = parsePartialJson(fnArgs);
|
|
326
|
+
parsedInput = partial ?? {};
|
|
327
|
+
}
|
|
328
|
+
} else if (fnArgs != null) {
|
|
329
|
+
parsedInput = fnArgs;
|
|
330
|
+
}
|
|
331
|
+
const id = `call_${index}`;
|
|
332
|
+
toolCalls.push({ id, name: tc.function.name, input: parsedInput });
|
|
333
|
+
});
|
|
334
|
+
update_progress(100, "Completed Ollama tool calling");
|
|
335
|
+
return { text, toolCalls: filterValidToolCalls(toolCalls, input.tools) };
|
|
336
|
+
};
|
|
337
|
+
return run;
|
|
338
|
+
}
|
|
339
|
+
function createOllamaToolCallingStream(getClient2, buildMessages) {
|
|
340
|
+
return async function* (input, model, signal) {
|
|
341
|
+
const client = await getClient2(model);
|
|
342
|
+
const modelName = getOllamaModelName(model);
|
|
343
|
+
const messages = buildMessages(input);
|
|
344
|
+
const tools = input.toolChoice === "none" ? undefined : mapOllamaTools(input.tools);
|
|
345
|
+
const stream = await client.chat({
|
|
346
|
+
model: modelName,
|
|
347
|
+
messages,
|
|
348
|
+
tools,
|
|
349
|
+
options: {
|
|
350
|
+
temperature: input.temperature,
|
|
351
|
+
num_predict: input.maxTokens
|
|
352
|
+
},
|
|
353
|
+
stream: true
|
|
354
|
+
});
|
|
355
|
+
const onAbort = () => stream.abort();
|
|
356
|
+
signal.addEventListener("abort", onAbort, { once: true });
|
|
357
|
+
let accumulatedText = "";
|
|
358
|
+
const toolCalls = [];
|
|
359
|
+
let callIndex = 0;
|
|
360
|
+
try {
|
|
361
|
+
for await (const chunk of stream) {
|
|
362
|
+
const delta = chunk.message.content;
|
|
363
|
+
if (delta) {
|
|
364
|
+
accumulatedText += delta;
|
|
365
|
+
yield { type: "text-delta", port: "text", textDelta: delta };
|
|
366
|
+
}
|
|
367
|
+
const chunkToolCalls = chunk.message.tool_calls;
|
|
368
|
+
if (Array.isArray(chunkToolCalls) && chunkToolCalls.length > 0) {
|
|
369
|
+
for (const tc of chunkToolCalls) {
|
|
370
|
+
let parsedInput = {};
|
|
371
|
+
const fnArgs = tc.function.arguments;
|
|
372
|
+
if (typeof fnArgs === "string") {
|
|
373
|
+
try {
|
|
374
|
+
parsedInput = JSON.parse(fnArgs);
|
|
375
|
+
} catch {
|
|
376
|
+
const partial = parsePartialJson(fnArgs);
|
|
377
|
+
parsedInput = partial ?? {};
|
|
378
|
+
}
|
|
379
|
+
} else if (fnArgs != null) {
|
|
380
|
+
parsedInput = fnArgs;
|
|
381
|
+
}
|
|
382
|
+
const id = `call_${callIndex++}`;
|
|
383
|
+
toolCalls.push({ id, name: tc.function.name, input: parsedInput });
|
|
384
|
+
}
|
|
385
|
+
yield { type: "object-delta", port: "toolCalls", objectDelta: [...toolCalls] };
|
|
386
|
+
}
|
|
387
|
+
}
|
|
388
|
+
const validToolCalls = filterValidToolCalls(toolCalls, input.tools);
|
|
389
|
+
yield {
|
|
390
|
+
type: "finish",
|
|
391
|
+
data: { text: accumulatedText, toolCalls: validToolCalls }
|
|
392
|
+
};
|
|
393
|
+
} finally {
|
|
394
|
+
signal.removeEventListener("abort", onAbort);
|
|
395
|
+
}
|
|
396
|
+
};
|
|
397
|
+
}
|
|
398
|
+
|
|
287
399
|
// src/provider-ollama/common/Ollama_JobRunFns.browser.ts
|
|
400
|
+
function buildBrowserToolCallingMessages(input) {
|
|
401
|
+
const messages = [];
|
|
402
|
+
if (input.systemPrompt) {
|
|
403
|
+
messages.push({ role: "system", content: input.systemPrompt });
|
|
404
|
+
}
|
|
405
|
+
messages.push({ role: "user", content: input.prompt });
|
|
406
|
+
return messages;
|
|
407
|
+
}
|
|
288
408
|
var Ollama_TextGeneration = createOllamaTextGeneration(getClient);
|
|
289
409
|
var Ollama_TextEmbedding = createOllamaTextEmbedding(getClient);
|
|
290
410
|
var Ollama_TextRewriter = createOllamaTextRewriter(getClient);
|
|
@@ -292,6 +412,8 @@ var Ollama_TextSummary = createOllamaTextSummary(getClient);
|
|
|
292
412
|
var Ollama_TextGeneration_Stream = createOllamaTextGenerationStream(getClient);
|
|
293
413
|
var Ollama_TextRewriter_Stream = createOllamaTextRewriterStream(getClient);
|
|
294
414
|
var Ollama_TextSummary_Stream = createOllamaTextSummaryStream(getClient);
|
|
415
|
+
var Ollama_ToolCalling = createOllamaToolCalling(getClient, buildBrowserToolCallingMessages);
|
|
416
|
+
var Ollama_ToolCalling_Stream = createOllamaToolCallingStream(getClient, buildBrowserToolCallingMessages);
|
|
295
417
|
var Ollama_ModelInfo = createOllamaModelInfo(getClient);
|
|
296
418
|
var Ollama_ModelSearch = createOllamaModelSearch(getClient);
|
|
297
419
|
var OLLAMA_TASKS = {
|
|
@@ -300,18 +422,18 @@ var OLLAMA_TASKS = {
|
|
|
300
422
|
TextEmbeddingTask: Ollama_TextEmbedding,
|
|
301
423
|
TextRewriterTask: Ollama_TextRewriter,
|
|
302
424
|
TextSummaryTask: Ollama_TextSummary,
|
|
425
|
+
ToolCallingTask: Ollama_ToolCalling,
|
|
303
426
|
ModelSearchTask: Ollama_ModelSearch
|
|
304
427
|
};
|
|
305
428
|
var OLLAMA_STREAM_TASKS = {
|
|
306
429
|
TextGenerationTask: Ollama_TextGeneration_Stream,
|
|
307
430
|
TextRewriterTask: Ollama_TextRewriter_Stream,
|
|
308
|
-
TextSummaryTask: Ollama_TextSummary_Stream
|
|
431
|
+
TextSummaryTask: Ollama_TextSummary_Stream,
|
|
432
|
+
ToolCallingTask: Ollama_ToolCalling_Stream
|
|
309
433
|
};
|
|
310
434
|
|
|
311
435
|
// src/provider-ollama/OllamaQueuedProvider.ts
|
|
312
|
-
import {
|
|
313
|
-
AiProvider
|
|
314
|
-
} from "@workglow/ai";
|
|
436
|
+
import { AiProvider } from "@workglow/ai";
|
|
315
437
|
class OllamaQueuedProvider extends AiProvider {
|
|
316
438
|
name = OLLAMA;
|
|
317
439
|
displayName = "Ollama";
|
|
@@ -323,6 +445,7 @@ class OllamaQueuedProvider extends AiProvider {
|
|
|
323
445
|
"TextEmbeddingTask",
|
|
324
446
|
"TextRewriterTask",
|
|
325
447
|
"TextSummaryTask",
|
|
448
|
+
"ToolCallingTask",
|
|
326
449
|
"ModelSearchTask"
|
|
327
450
|
];
|
|
328
451
|
constructor(tasks, streamTasks, reactiveTasks) {
|
|
@@ -338,9 +461,7 @@ async function registerOllamaInline(options) {
|
|
|
338
461
|
import { getLogger, globalServiceRegistry, WORKER_SERVER } from "@workglow/util/worker";
|
|
339
462
|
|
|
340
463
|
// src/provider-ollama/OllamaProvider.ts
|
|
341
|
-
import {
|
|
342
|
-
AiProvider as AiProvider2
|
|
343
|
-
} from "@workglow/ai/worker";
|
|
464
|
+
import { AiProvider as AiProvider2 } from "@workglow/ai/worker";
|
|
344
465
|
class OllamaProvider extends AiProvider2 {
|
|
345
466
|
name = OLLAMA;
|
|
346
467
|
displayName = "Ollama";
|
|
@@ -352,6 +473,7 @@ class OllamaProvider extends AiProvider2 {
|
|
|
352
473
|
"TextEmbeddingTask",
|
|
353
474
|
"TextRewriterTask",
|
|
354
475
|
"TextSummaryTask",
|
|
476
|
+
"ToolCallingTask",
|
|
355
477
|
"ModelSearchTask"
|
|
356
478
|
];
|
|
357
479
|
constructor(tasks, streamTasks, reactiveTasks) {
|
|
@@ -374,4 +496,4 @@ export {
|
|
|
374
496
|
getClient
|
|
375
497
|
};
|
|
376
498
|
|
|
377
|
-
//# debugId=
|
|
499
|
+
//# debugId=CBD00AA0D411F2BC64756E2164756E21
|