modelfusion 0.110.0 → 0.112.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (283) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/README.md +41 -65
  3. package/core/FunctionEvent.d.ts +3 -3
  4. package/core/api/ApiFacade.cjs +20 -0
  5. package/core/api/ApiFacade.d.ts +4 -0
  6. package/core/api/ApiFacade.js +4 -0
  7. package/core/api/BaseUrlApiConfiguration.cjs +47 -5
  8. package/core/api/BaseUrlApiConfiguration.d.ts +23 -6
  9. package/core/api/BaseUrlApiConfiguration.js +45 -4
  10. package/core/api/BaseUrlApiConfiguration.test.cjs +11 -0
  11. package/core/api/BaseUrlApiConfiguration.test.js +9 -0
  12. package/core/api/callWithRetryAndThrottle.cjs +3 -3
  13. package/core/api/callWithRetryAndThrottle.js +3 -3
  14. package/core/api/index.cjs +15 -2
  15. package/core/api/index.d.ts +2 -2
  16. package/core/api/index.js +2 -2
  17. package/core/api/postToApi.cjs +28 -5
  18. package/core/api/postToApi.d.ts +5 -4
  19. package/core/api/postToApi.js +26 -4
  20. package/core/api/throttleOff.cjs +8 -0
  21. package/core/api/throttleOff.d.ts +5 -0
  22. package/core/api/throttleOff.js +4 -0
  23. package/internal/index.cjs +2 -8
  24. package/internal/index.d.ts +1 -1
  25. package/internal/index.js +1 -1
  26. package/model-function/ModelCallEvent.d.ts +3 -3
  27. package/model-function/generate-structure/generateStructure.d.ts +1 -1
  28. package/model-function/generate-text/PromptTemplateFullTextModel.cjs +2 -2
  29. package/model-function/generate-text/PromptTemplateFullTextModel.d.ts +3 -3
  30. package/model-function/generate-text/PromptTemplateFullTextModel.js +2 -2
  31. package/model-function/generate-text/PromptTemplateTextGenerationModel.cjs +2 -2
  32. package/model-function/generate-text/PromptTemplateTextGenerationModel.d.ts +3 -3
  33. package/model-function/generate-text/PromptTemplateTextGenerationModel.js +2 -2
  34. package/model-provider/anthropic/AnthropicApiConfiguration.cjs +14 -6
  35. package/model-provider/anthropic/AnthropicApiConfiguration.d.ts +7 -8
  36. package/model-provider/anthropic/AnthropicApiConfiguration.js +15 -7
  37. package/model-provider/anthropic/AnthropicError.cjs +7 -27
  38. package/model-provider/anthropic/AnthropicError.d.ts +21 -16
  39. package/model-provider/anthropic/AnthropicError.js +7 -25
  40. package/model-provider/anthropic/AnthropicFacade.cjs +10 -1
  41. package/model-provider/anthropic/AnthropicFacade.d.ts +9 -0
  42. package/model-provider/anthropic/AnthropicFacade.js +8 -0
  43. package/model-provider/anthropic/AnthropicTextGenerationModel.cjs +22 -24
  44. package/model-provider/anthropic/AnthropicTextGenerationModel.js +23 -25
  45. package/model-provider/anthropic/index.cjs +1 -4
  46. package/model-provider/anthropic/index.d.ts +1 -1
  47. package/model-provider/anthropic/index.js +0 -1
  48. package/model-provider/automatic1111/Automatic1111ApiConfiguration.cjs +12 -4
  49. package/model-provider/automatic1111/Automatic1111ApiConfiguration.d.ts +3 -3
  50. package/model-provider/automatic1111/Automatic1111ApiConfiguration.js +12 -4
  51. package/model-provider/automatic1111/Automatic1111Error.cjs +3 -3
  52. package/model-provider/automatic1111/Automatic1111Error.d.ts +13 -3
  53. package/model-provider/automatic1111/Automatic1111Error.js +4 -4
  54. package/model-provider/automatic1111/Automatic1111Facade.cjs +9 -9
  55. package/model-provider/automatic1111/Automatic1111Facade.d.ts +6 -6
  56. package/model-provider/automatic1111/Automatic1111Facade.js +7 -7
  57. package/model-provider/automatic1111/Automatic1111ImageGenerationModel.cjs +11 -7
  58. package/model-provider/automatic1111/Automatic1111ImageGenerationModel.js +11 -7
  59. package/model-provider/cohere/CohereApiConfiguration.cjs +14 -6
  60. package/model-provider/cohere/CohereApiConfiguration.d.ts +7 -8
  61. package/model-provider/cohere/CohereApiConfiguration.js +15 -7
  62. package/model-provider/cohere/CohereError.cjs +8 -43
  63. package/model-provider/cohere/CohereError.d.ts +9 -16
  64. package/model-provider/cohere/CohereError.js +8 -41
  65. package/model-provider/cohere/CohereFacade.cjs +12 -3
  66. package/model-provider/cohere/CohereFacade.d.ts +11 -2
  67. package/model-provider/cohere/CohereFacade.js +10 -2
  68. package/model-provider/cohere/CohereTextEmbeddingModel.cjs +18 -22
  69. package/model-provider/cohere/CohereTextEmbeddingModel.js +18 -22
  70. package/model-provider/cohere/CohereTextGenerationModel.cjs +31 -39
  71. package/model-provider/cohere/CohereTextGenerationModel.d.ts +110 -8
  72. package/model-provider/cohere/CohereTextGenerationModel.js +31 -39
  73. package/model-provider/cohere/CohereTokenizer.cjs +32 -41
  74. package/model-provider/cohere/CohereTokenizer.d.ts +2 -2
  75. package/model-provider/cohere/CohereTokenizer.js +32 -41
  76. package/model-provider/cohere/index.cjs +1 -3
  77. package/model-provider/cohere/index.d.ts +1 -1
  78. package/model-provider/cohere/index.js +0 -1
  79. package/model-provider/elevenlabs/ElevenLabsApiConfiguration.cjs +14 -6
  80. package/model-provider/elevenlabs/ElevenLabsApiConfiguration.d.ts +7 -8
  81. package/model-provider/elevenlabs/ElevenLabsApiConfiguration.js +15 -7
  82. package/model-provider/elevenlabs/ElevenLabsFacade.cjs +10 -1
  83. package/model-provider/elevenlabs/ElevenLabsFacade.d.ts +9 -0
  84. package/model-provider/elevenlabs/ElevenLabsFacade.js +8 -0
  85. package/model-provider/elevenlabs/ElevenLabsSpeechModel.cjs +42 -53
  86. package/model-provider/elevenlabs/ElevenLabsSpeechModel.js +44 -55
  87. package/model-provider/huggingface/HuggingFaceApiConfiguration.cjs +14 -6
  88. package/model-provider/huggingface/HuggingFaceApiConfiguration.d.ts +7 -8
  89. package/model-provider/huggingface/HuggingFaceApiConfiguration.js +15 -7
  90. package/model-provider/huggingface/HuggingFaceError.cjs +7 -29
  91. package/model-provider/huggingface/HuggingFaceError.d.ts +9 -16
  92. package/model-provider/huggingface/HuggingFaceError.js +7 -27
  93. package/model-provider/huggingface/HuggingFaceFacade.cjs +10 -1
  94. package/model-provider/huggingface/HuggingFaceFacade.d.ts +9 -0
  95. package/model-provider/huggingface/HuggingFaceFacade.js +8 -0
  96. package/model-provider/huggingface/HuggingFaceTextEmbeddingModel.cjs +17 -27
  97. package/model-provider/huggingface/HuggingFaceTextEmbeddingModel.js +17 -27
  98. package/model-provider/huggingface/HuggingFaceTextGenerationModel.cjs +22 -23
  99. package/model-provider/huggingface/HuggingFaceTextGenerationModel.js +22 -23
  100. package/model-provider/huggingface/index.cjs +1 -3
  101. package/model-provider/huggingface/index.d.ts +1 -1
  102. package/model-provider/huggingface/index.js +0 -1
  103. package/model-provider/llamacpp/LlamaCppApiConfiguration.cjs +13 -6
  104. package/model-provider/llamacpp/LlamaCppApiConfiguration.d.ts +7 -9
  105. package/model-provider/llamacpp/LlamaCppApiConfiguration.js +14 -7
  106. package/model-provider/llamacpp/LlamaCppCompletionModel.cjs +4 -4
  107. package/model-provider/llamacpp/LlamaCppCompletionModel.d.ts +173 -5
  108. package/model-provider/llamacpp/LlamaCppCompletionModel.js +4 -4
  109. package/model-provider/llamacpp/LlamaCppError.cjs +7 -27
  110. package/model-provider/llamacpp/LlamaCppError.d.ts +9 -16
  111. package/model-provider/llamacpp/LlamaCppError.js +7 -25
  112. package/model-provider/llamacpp/LlamaCppFacade.cjs +10 -2
  113. package/model-provider/llamacpp/LlamaCppFacade.d.ts +8 -1
  114. package/model-provider/llamacpp/LlamaCppFacade.js +8 -1
  115. package/model-provider/llamacpp/LlamaCppTextEmbeddingModel.cjs +10 -14
  116. package/model-provider/llamacpp/LlamaCppTextEmbeddingModel.js +10 -14
  117. package/model-provider/llamacpp/LlamaCppTokenizer.cjs +14 -18
  118. package/model-provider/llamacpp/LlamaCppTokenizer.js +14 -18
  119. package/model-provider/llamacpp/index.cjs +1 -3
  120. package/model-provider/llamacpp/index.d.ts +1 -1
  121. package/model-provider/llamacpp/index.js +0 -1
  122. package/model-provider/lmnt/LmntApiConfiguration.cjs +14 -6
  123. package/model-provider/lmnt/LmntApiConfiguration.d.ts +7 -8
  124. package/model-provider/lmnt/LmntApiConfiguration.js +15 -7
  125. package/model-provider/lmnt/LmntFacade.cjs +11 -2
  126. package/model-provider/lmnt/LmntFacade.d.ts +10 -1
  127. package/model-provider/lmnt/LmntFacade.js +9 -1
  128. package/model-provider/lmnt/LmntSpeechModel.cjs +53 -41
  129. package/model-provider/lmnt/LmntSpeechModel.d.ts +51 -3
  130. package/model-provider/lmnt/LmntSpeechModel.js +54 -42
  131. package/model-provider/mistral/MistralApiConfiguration.cjs +14 -6
  132. package/model-provider/mistral/MistralApiConfiguration.d.ts +9 -11
  133. package/model-provider/mistral/MistralApiConfiguration.js +15 -7
  134. package/model-provider/mistral/MistralChatModel.cjs +4 -4
  135. package/model-provider/mistral/MistralChatModel.d.ts +52 -7
  136. package/model-provider/mistral/MistralChatModel.js +5 -5
  137. package/model-provider/mistral/MistralError.cjs +3 -3
  138. package/model-provider/mistral/MistralError.d.ts +15 -3
  139. package/model-provider/mistral/MistralError.js +4 -4
  140. package/model-provider/mistral/MistralFacade.cjs +5 -1
  141. package/model-provider/mistral/MistralFacade.d.ts +10 -3
  142. package/model-provider/mistral/MistralFacade.js +6 -2
  143. package/model-provider/mistral/MistralTextEmbeddingModel.cjs +2 -1
  144. package/model-provider/mistral/MistralTextEmbeddingModel.d.ts +3 -3
  145. package/model-provider/mistral/MistralTextEmbeddingModel.js +2 -1
  146. package/model-provider/ollama/OllamaApiConfiguration.cjs +13 -6
  147. package/model-provider/ollama/OllamaApiConfiguration.d.ts +7 -10
  148. package/model-provider/ollama/OllamaApiConfiguration.js +14 -7
  149. package/model-provider/ollama/OllamaChatModel.cjs +6 -6
  150. package/model-provider/ollama/OllamaChatModel.d.ts +49 -8
  151. package/model-provider/ollama/OllamaChatModel.js +7 -7
  152. package/model-provider/ollama/OllamaCompletionModel.cjs +6 -6
  153. package/model-provider/ollama/OllamaCompletionModel.d.ts +43 -8
  154. package/model-provider/ollama/OllamaCompletionModel.js +7 -7
  155. package/model-provider/ollama/OllamaError.cjs +3 -3
  156. package/model-provider/ollama/OllamaError.d.ts +7 -3
  157. package/model-provider/ollama/OllamaError.js +4 -4
  158. package/model-provider/ollama/OllamaFacade.cjs +6 -2
  159. package/model-provider/ollama/OllamaFacade.d.ts +8 -3
  160. package/model-provider/ollama/OllamaFacade.js +6 -2
  161. package/model-provider/ollama/OllamaTextEmbeddingModel.cjs +15 -16
  162. package/model-provider/ollama/OllamaTextEmbeddingModel.js +15 -16
  163. package/model-provider/openai/AbstractOpenAIChatModel.cjs +5 -5
  164. package/model-provider/openai/AbstractOpenAIChatModel.d.ts +155 -9
  165. package/model-provider/openai/AbstractOpenAIChatModel.js +5 -5
  166. package/model-provider/openai/AbstractOpenAICompletionModel.cjs +30 -32
  167. package/model-provider/openai/AbstractOpenAICompletionModel.d.ts +4 -4
  168. package/model-provider/openai/AbstractOpenAICompletionModel.js +30 -32
  169. package/model-provider/openai/AzureOpenAIApiConfiguration.d.ts +9 -8
  170. package/model-provider/openai/OpenAIApiConfiguration.cjs +14 -6
  171. package/model-provider/openai/OpenAIApiConfiguration.d.ts +7 -8
  172. package/model-provider/openai/OpenAIApiConfiguration.js +15 -7
  173. package/model-provider/openai/OpenAIChatFunctionCallStructureGenerationModel.d.ts +1 -1
  174. package/model-provider/openai/OpenAIChatModel.d.ts +2 -2
  175. package/model-provider/openai/OpenAIError.cjs +8 -8
  176. package/model-provider/openai/OpenAIError.d.ts +27 -3
  177. package/model-provider/openai/OpenAIError.js +9 -9
  178. package/model-provider/openai/OpenAIFacade.cjs +23 -2
  179. package/model-provider/openai/OpenAIFacade.d.ts +20 -2
  180. package/model-provider/openai/OpenAIFacade.js +20 -1
  181. package/model-provider/openai/OpenAIImageGenerationModel.cjs +20 -21
  182. package/model-provider/openai/OpenAIImageGenerationModel.js +20 -21
  183. package/model-provider/openai/OpenAISpeechModel.cjs +17 -22
  184. package/model-provider/openai/OpenAISpeechModel.js +17 -22
  185. package/model-provider/openai/OpenAITextEmbeddingModel.cjs +18 -23
  186. package/model-provider/openai/OpenAITextEmbeddingModel.d.ts +3 -3
  187. package/model-provider/openai/OpenAITextEmbeddingModel.js +18 -23
  188. package/model-provider/openai/OpenAITranscriptionModel.cjs +42 -48
  189. package/model-provider/openai/OpenAITranscriptionModel.d.ts +14 -10
  190. package/model-provider/openai/OpenAITranscriptionModel.js +42 -48
  191. package/model-provider/openai-compatible/FireworksAIApiConfiguration.cjs +11 -7
  192. package/model-provider/openai-compatible/FireworksAIApiConfiguration.d.ts +4 -9
  193. package/model-provider/openai-compatible/FireworksAIApiConfiguration.js +12 -8
  194. package/model-provider/openai-compatible/OpenAICompatibleChatModel.d.ts +2 -2
  195. package/model-provider/openai-compatible/OpenAICompatibleFacade.cjs +25 -1
  196. package/model-provider/openai-compatible/OpenAICompatibleFacade.d.ts +23 -0
  197. package/model-provider/openai-compatible/OpenAICompatibleFacade.js +22 -0
  198. package/model-provider/openai-compatible/TogetherAIApiConfiguration.cjs +11 -7
  199. package/model-provider/openai-compatible/TogetherAIApiConfiguration.d.ts +4 -9
  200. package/model-provider/openai-compatible/TogetherAIApiConfiguration.js +12 -8
  201. package/model-provider/stability/StabilityApiConfiguration.cjs +13 -12
  202. package/model-provider/stability/StabilityApiConfiguration.d.ts +4 -4
  203. package/model-provider/stability/StabilityApiConfiguration.js +13 -12
  204. package/model-provider/stability/StabilityError.cjs +3 -3
  205. package/model-provider/stability/StabilityError.d.ts +7 -3
  206. package/model-provider/stability/StabilityError.js +4 -4
  207. package/model-provider/stability/StabilityFacade.cjs +9 -9
  208. package/model-provider/stability/StabilityFacade.d.ts +8 -8
  209. package/model-provider/stability/StabilityFacade.js +7 -7
  210. package/model-provider/stability/StabilityImageGenerationModel.cjs +2 -1
  211. package/model-provider/stability/StabilityImageGenerationModel.js +2 -1
  212. package/model-provider/whispercpp/WhisperCppApiConfiguration.cjs +13 -6
  213. package/model-provider/whispercpp/WhisperCppApiConfiguration.d.ts +7 -10
  214. package/model-provider/whispercpp/WhisperCppApiConfiguration.js +14 -7
  215. package/model-provider/whispercpp/WhisperCppFacade.cjs +9 -5
  216. package/model-provider/whispercpp/WhisperCppFacade.d.ts +7 -2
  217. package/model-provider/whispercpp/WhisperCppFacade.js +8 -4
  218. package/model-provider/whispercpp/WhisperCppTranscriptionModel.cjs +5 -2
  219. package/model-provider/whispercpp/WhisperCppTranscriptionModel.js +6 -3
  220. package/package.json +1 -1
  221. package/tool/Tool.cjs +0 -10
  222. package/tool/Tool.d.ts +0 -1
  223. package/tool/Tool.js +0 -10
  224. package/tool/WebSearchTool.cjs +2 -2
  225. package/tool/WebSearchTool.d.ts +1 -2
  226. package/tool/WebSearchTool.js +3 -3
  227. package/tool/{generate-tool-calls-or-text/TextGenerationToolCallsOrGenerateTextModel.cjs → generate-tool-calls/TextGenerationToolCallsModel.cjs} +7 -7
  228. package/tool/{generate-tool-calls-or-text/TextGenerationToolCallsOrGenerateTextModel.d.ts → generate-tool-calls/TextGenerationToolCallsModel.d.ts} +6 -6
  229. package/tool/{generate-tool-calls-or-text/TextGenerationToolCallsOrGenerateTextModel.js → generate-tool-calls/TextGenerationToolCallsModel.js} +5 -5
  230. package/tool/generate-tool-calls/ToolCallsGenerationEvent.d.ts +23 -0
  231. package/tool/{generate-tool-calls-or-text/ToolCallsOrTextGenerationModel.d.ts → generate-tool-calls/ToolCallsGenerationModel.d.ts} +3 -3
  232. package/tool/{generate-tool-calls-or-text/ToolCallsOrTextParseError.cjs → generate-tool-calls/ToolCallsParseError.cjs} +5 -5
  233. package/tool/{generate-tool-calls-or-text/ToolCallsOrTextParseError.d.ts → generate-tool-calls/ToolCallsParseError.d.ts} +1 -1
  234. package/tool/{generate-tool-calls-or-text/ToolCallsOrTextParseError.js → generate-tool-calls/ToolCallsParseError.js} +3 -3
  235. package/tool/{generate-tool-calls-or-text/ToolCallsOrGenerateTextPromptTemplate.d.ts → generate-tool-calls/ToolCallsPromptTemplate.d.ts} +1 -1
  236. package/tool/{generate-tool-calls-or-text/generateToolCallsOrText.cjs → generate-tool-calls/generateToolCalls.cjs} +5 -5
  237. package/tool/{generate-tool-calls-or-text/generateToolCallsOrText.d.ts → generate-tool-calls/generateToolCalls.d.ts} +3 -3
  238. package/tool/{generate-tool-calls-or-text/generateToolCallsOrText.js → generate-tool-calls/generateToolCalls.js} +3 -3
  239. package/tool/{generate-tool-calls-or-text → generate-tool-calls}/index.cjs +6 -6
  240. package/tool/generate-tool-calls/index.d.ts +6 -0
  241. package/tool/generate-tool-calls/index.js +6 -0
  242. package/tool/index.cjs +2 -3
  243. package/tool/index.d.ts +2 -3
  244. package/tool/index.js +2 -3
  245. package/tool/use-tools/UseToolsEvent.d.ts +7 -0
  246. package/tool/use-tools/UseToolsEvent.js +1 -0
  247. package/tool/{use-tools-or-generate-text → use-tools}/index.cjs +2 -2
  248. package/tool/use-tools/index.d.ts +2 -0
  249. package/tool/use-tools/index.js +2 -0
  250. package/tool/{use-tools-or-generate-text/useToolsOrGenerateText.cjs → use-tools/useTools.cjs} +6 -6
  251. package/tool/{use-tools-or-generate-text/useToolsOrGenerateText.d.ts → use-tools/useTools.d.ts} +2 -2
  252. package/tool/{use-tools-or-generate-text/useToolsOrGenerateText.js → use-tools/useTools.js} +4 -4
  253. package/vector-index/memory/MemoryVectorIndex.cjs +2 -2
  254. package/vector-index/memory/MemoryVectorIndex.js +3 -3
  255. package/core/api/BaseUrlPartsApiConfiguration.cjs +0 -53
  256. package/core/api/BaseUrlPartsApiConfiguration.d.ts +0 -26
  257. package/core/api/BaseUrlPartsApiConfiguration.js +0 -49
  258. package/core/api/throttleUnlimitedConcurrency.cjs +0 -8
  259. package/core/api/throttleUnlimitedConcurrency.d.ts +0 -5
  260. package/core/api/throttleUnlimitedConcurrency.js +0 -4
  261. package/model-provider/elevenlabs/ElevenLabsError.cjs +0 -30
  262. package/model-provider/elevenlabs/ElevenLabsError.d.ts +0 -3
  263. package/model-provider/elevenlabs/ElevenLabsError.js +0 -26
  264. package/model-provider/lmnt/LmntError.cjs +0 -30
  265. package/model-provider/lmnt/LmntError.d.ts +0 -3
  266. package/model-provider/lmnt/LmntError.js +0 -26
  267. package/tool/InvalidToolNameError.cjs +0 -17
  268. package/tool/InvalidToolNameError.d.ts +0 -7
  269. package/tool/InvalidToolNameError.js +0 -13
  270. package/tool/generate-tool-calls-or-text/ToolCallsOrTextGenerationEvent.d.ts +0 -23
  271. package/tool/generate-tool-calls-or-text/index.d.ts +0 -6
  272. package/tool/generate-tool-calls-or-text/index.js +0 -6
  273. package/tool/use-tools-or-generate-text/UseToolsOrGenerateTextEvent.d.ts +0 -7
  274. package/tool/use-tools-or-generate-text/index.d.ts +0 -2
  275. package/tool/use-tools-or-generate-text/index.js +0 -2
  276. /package/{tool/generate-tool-calls-or-text/ToolCallsOrGenerateTextPromptTemplate.js → core/api/BaseUrlApiConfiguration.test.d.ts} +0 -0
  277. /package/tool/{generate-tool-calls-or-text/ToolCallsOrGenerateTextPromptTemplate.cjs → generate-tool-calls/ToolCallsGenerationEvent.cjs} +0 -0
  278. /package/tool/{generate-tool-calls-or-text/ToolCallsOrTextGenerationEvent.js → generate-tool-calls/ToolCallsGenerationEvent.js} +0 -0
  279. /package/tool/{generate-tool-calls-or-text/ToolCallsOrTextGenerationEvent.cjs → generate-tool-calls/ToolCallsGenerationModel.cjs} +0 -0
  280. /package/tool/{generate-tool-calls-or-text/ToolCallsOrTextGenerationModel.js → generate-tool-calls/ToolCallsGenerationModel.js} +0 -0
  281. /package/tool/{generate-tool-calls-or-text/ToolCallsOrTextGenerationModel.cjs → generate-tool-calls/ToolCallsPromptTemplate.cjs} +0 -0
  282. /package/tool/{use-tools-or-generate-text/UseToolsOrGenerateTextEvent.js → generate-tool-calls/ToolCallsPromptTemplate.js} +0 -0
  283. /package/tool/{use-tools-or-generate-text/UseToolsOrGenerateTextEvent.cjs → use-tools/UseToolsEvent.cjs} +0 -0
@@ -2,14 +2,13 @@ import { z } from "zod";
2
2
  import { FunctionOptions } from "../../core/FunctionOptions.js";
3
3
  import { ApiConfiguration } from "../../core/api/ApiConfiguration.js";
4
4
  import { ResponseHandler } from "../../core/api/postToApi.js";
5
- import { ZodSchema } from "../../core/schema/ZodSchema.js";
6
5
  import { AbstractModel } from "../../model-function/AbstractModel.js";
7
6
  import { PromptTemplateTextStreamingModel } from "../../model-function/generate-text/PromptTemplateTextStreamingModel.js";
8
7
  import { TextStreamingModel } from "../../model-function/generate-text/TextGenerationModel.js";
9
8
  import { TextGenerationPromptTemplate } from "../../model-function/generate-text/TextGenerationPromptTemplate.js";
10
9
  import { TextGenerationToolCallModel, ToolCallPromptTemplate } from "../../tool/generate-tool-call/TextGenerationToolCallModel.js";
11
- import { TextGenerationToolCallsOrGenerateTextModel } from "../../tool/generate-tool-calls-or-text/TextGenerationToolCallsOrGenerateTextModel.js";
12
- import { ToolCallsOrGenerateTextPromptTemplate } from "../../tool/generate-tool-calls-or-text/ToolCallsOrGenerateTextPromptTemplate.js";
10
+ import { TextGenerationToolCallsModel } from "../../tool/generate-tool-calls/TextGenerationToolCallsModel.js";
11
+ import { ToolCallsPromptTemplate } from "../../tool/generate-tool-calls/ToolCallsPromptTemplate.js";
13
12
  import { OllamaTextGenerationSettings } from "./OllamaTextGenerationSettings.js";
14
13
  export type OllamaChatMessage = {
15
14
  role: "system" | "user" | "assistant";
@@ -79,7 +78,7 @@ export declare class OllamaChatModel extends AbstractModel<OllamaChatModelSettin
79
78
  }>>>;
80
79
  extractTextDelta(delta: unknown): string | undefined;
81
80
  asToolCallGenerationModel<INPUT_PROMPT>(promptTemplate: ToolCallPromptTemplate<INPUT_PROMPT, OllamaChatPrompt>): TextGenerationToolCallModel<INPUT_PROMPT, OllamaChatPrompt, this>;
82
- asToolCallsOrTextGenerationModel<INPUT_PROMPT>(promptTemplate: ToolCallsOrGenerateTextPromptTemplate<INPUT_PROMPT, OllamaChatPrompt>): TextGenerationToolCallsOrGenerateTextModel<INPUT_PROMPT, OllamaChatPrompt, this>;
81
+ asToolCallsOrTextGenerationModel<INPUT_PROMPT>(promptTemplate: ToolCallsPromptTemplate<INPUT_PROMPT, OllamaChatPrompt>): TextGenerationToolCallsModel<INPUT_PROMPT, OllamaChatPrompt, this>;
83
82
  /**
84
83
  * Returns this model with a text prompt template.
85
84
  */
@@ -145,7 +144,29 @@ declare const ollamaChatResponseSchema: z.ZodObject<{
145
144
  prompt_eval_duration?: number | undefined;
146
145
  }>;
147
146
  export type OllamaChatResponse = z.infer<typeof ollamaChatResponseSchema>;
148
- declare const ollamaChatStreamChunkSchema: ZodSchema<{
147
+ declare const ollamaChatStreamChunkSchema: z.ZodDiscriminatedUnion<"done", [z.ZodObject<{
148
+ done: z.ZodLiteral<false>;
149
+ model: z.ZodString;
150
+ created_at: z.ZodString;
151
+ message: z.ZodObject<{
152
+ role: z.ZodString;
153
+ content: z.ZodString;
154
+ }, "strip", z.ZodTypeAny, {
155
+ role: string;
156
+ content: string;
157
+ }, {
158
+ role: string;
159
+ content: string;
160
+ }>;
161
+ }, "strip", z.ZodTypeAny, {
162
+ message: {
163
+ role: string;
164
+ content: string;
165
+ };
166
+ model: string;
167
+ done: false;
168
+ created_at: string;
169
+ }, {
149
170
  message: {
150
171
  role: string;
151
172
  content: string;
@@ -153,7 +174,17 @@ declare const ollamaChatStreamChunkSchema: ZodSchema<{
153
174
  model: string;
154
175
  done: false;
155
176
  created_at: string;
156
- } | {
177
+ }>, z.ZodObject<{
178
+ done: z.ZodLiteral<true>;
179
+ model: z.ZodString;
180
+ created_at: z.ZodString;
181
+ total_duration: z.ZodNumber;
182
+ load_duration: z.ZodOptional<z.ZodNumber>;
183
+ prompt_eval_count: z.ZodNumber;
184
+ prompt_eval_duration: z.ZodOptional<z.ZodNumber>;
185
+ eval_count: z.ZodNumber;
186
+ eval_duration: z.ZodNumber;
187
+ }, "strip", z.ZodTypeAny, {
157
188
  model: string;
158
189
  done: true;
159
190
  created_at: string;
@@ -163,8 +194,18 @@ declare const ollamaChatStreamChunkSchema: ZodSchema<{
163
194
  eval_duration: number;
164
195
  load_duration?: number | undefined;
165
196
  prompt_eval_duration?: number | undefined;
166
- }>;
167
- export type OllamaChatStreamChunk = (typeof ollamaChatStreamChunkSchema)["_type"];
197
+ }, {
198
+ model: string;
199
+ done: true;
200
+ created_at: string;
201
+ total_duration: number;
202
+ prompt_eval_count: number;
203
+ eval_count: number;
204
+ eval_duration: number;
205
+ load_duration?: number | undefined;
206
+ prompt_eval_duration?: number | undefined;
207
+ }>]>;
208
+ export type OllamaChatStreamChunk = z.infer<typeof ollamaChatStreamChunkSchema>;
168
209
  export type OllamaChatResponseFormatType<T> = {
169
210
  stream: boolean;
170
211
  handler: ResponseHandler<T>;
@@ -2,13 +2,13 @@ import { z } from "zod";
2
2
  import { ApiCallError } from "../../core/api/ApiCallError.js";
3
3
  import { callWithRetryAndThrottle } from "../../core/api/callWithRetryAndThrottle.js";
4
4
  import { postJsonToApi } from "../../core/api/postToApi.js";
5
- import { ZodSchema } from "../../core/schema/ZodSchema.js";
5
+ import { zodSchema } from "../../core/schema/ZodSchema.js";
6
6
  import { safeParseJSON } from "../../core/schema/parseJSON.js";
7
7
  import { AbstractModel } from "../../model-function/AbstractModel.js";
8
8
  import { PromptTemplateTextStreamingModel } from "../../model-function/generate-text/PromptTemplateTextStreamingModel.js";
9
9
  import { textGenerationModelProperties, } from "../../model-function/generate-text/TextGenerationModel.js";
10
10
  import { TextGenerationToolCallModel, } from "../../tool/generate-tool-call/TextGenerationToolCallModel.js";
11
- import { TextGenerationToolCallsOrGenerateTextModel } from "../../tool/generate-tool-calls-or-text/TextGenerationToolCallsOrGenerateTextModel.js";
11
+ import { TextGenerationToolCallsModel } from "../../tool/generate-tool-calls/TextGenerationToolCallsModel.js";
12
12
  import { createJsonStreamResponseHandler } from "../../util/streaming/createJsonStreamResponseHandler.js";
13
13
  import { OllamaApiConfiguration } from "./OllamaApiConfiguration.js";
14
14
  import { chat, instruction, text } from "./OllamaChatPromptTemplate.js";
@@ -140,7 +140,7 @@ export class OllamaChatModel extends AbstractModel {
140
140
  });
141
141
  }
142
142
  asToolCallsOrTextGenerationModel(promptTemplate) {
143
- return new TextGenerationToolCallsOrGenerateTextModel({
143
+ return new TextGenerationToolCallsModel({
144
144
  model: this,
145
145
  template: promptTemplate,
146
146
  });
@@ -193,7 +193,7 @@ const ollamaChatResponseSchema = z.object({
193
193
  eval_count: z.number(),
194
194
  eval_duration: z.number(),
195
195
  });
196
- const ollamaChatStreamChunkSchema = new ZodSchema(z.discriminatedUnion("done", [
196
+ const ollamaChatStreamChunkSchema = z.discriminatedUnion("done", [
197
197
  z.object({
198
198
  done: z.literal(false),
199
199
  model: z.string(),
@@ -214,7 +214,7 @@ const ollamaChatStreamChunkSchema = new ZodSchema(z.discriminatedUnion("done", [
214
214
  eval_count: z.number(),
215
215
  eval_duration: z.number(),
216
216
  }),
217
- ]));
217
+ ]);
218
218
  export const OllamaChatResponseFormat = {
219
219
  /**
220
220
  * Returns the response as a JSON object.
@@ -225,7 +225,7 @@ export const OllamaChatResponseFormat = {
225
225
  const responseBody = await response.text();
226
226
  const parsedResult = safeParseJSON({
227
227
  text: responseBody,
228
- schema: new ZodSchema(z.union([
228
+ schema: zodSchema(z.union([
229
229
  ollamaChatResponseSchema,
230
230
  z.object({
231
231
  done: z.literal(false),
@@ -263,6 +263,6 @@ export const OllamaChatResponseFormat = {
263
263
  */
264
264
  deltaIterable: {
265
265
  stream: true,
266
- handler: createJsonStreamResponseHandler(ollamaChatStreamChunkSchema),
266
+ handler: createJsonStreamResponseHandler(zodSchema(ollamaChatStreamChunkSchema)),
267
267
  },
268
268
  };
@@ -11,7 +11,7 @@ const AbstractModel_js_1 = require("../../model-function/AbstractModel.cjs");
11
11
  const PromptTemplateTextStreamingModel_js_1 = require("../../model-function/generate-text/PromptTemplateTextStreamingModel.cjs");
12
12
  const TextGenerationModel_js_1 = require("../../model-function/generate-text/TextGenerationModel.cjs");
13
13
  const TextGenerationToolCallModel_js_1 = require("../../tool/generate-tool-call/TextGenerationToolCallModel.cjs");
14
- const TextGenerationToolCallsOrGenerateTextModel_js_1 = require("../../tool/generate-tool-calls-or-text/TextGenerationToolCallsOrGenerateTextModel.cjs");
14
+ const TextGenerationToolCallsModel_js_1 = require("../../tool/generate-tool-calls/TextGenerationToolCallsModel.cjs");
15
15
  const createJsonStreamResponseHandler_js_1 = require("../../util/streaming/createJsonStreamResponseHandler.cjs");
16
16
  const OllamaApiConfiguration_js_1 = require("./OllamaApiConfiguration.cjs");
17
17
  const OllamaError_js_1 = require("./OllamaError.cjs");
@@ -145,7 +145,7 @@ class OllamaCompletionModel extends AbstractModel_js_1.AbstractModel {
145
145
  });
146
146
  }
147
147
  asToolCallsOrTextGenerationModel(promptTemplate) {
148
- return new TextGenerationToolCallsOrGenerateTextModel_js_1.TextGenerationToolCallsOrGenerateTextModel({
148
+ return new TextGenerationToolCallsModel_js_1.TextGenerationToolCallsModel({
149
149
  model: this,
150
150
  template: promptTemplate,
151
151
  });
@@ -201,7 +201,7 @@ const ollamaCompletionResponseSchema = zod_1.z.object({
201
201
  eval_duration: zod_1.z.number(),
202
202
  context: zod_1.z.array(zod_1.z.number()).optional(),
203
203
  });
204
- const ollamaCompletionStreamChunkSchema = (0, ZodSchema_js_1.zodSchema)(zod_1.z.discriminatedUnion("done", [
204
+ const ollamaCompletionStreamChunkSchema = zod_1.z.discriminatedUnion("done", [
205
205
  zod_1.z.object({
206
206
  done: zod_1.z.literal(false),
207
207
  model: zod_1.z.string(),
@@ -222,7 +222,7 @@ const ollamaCompletionStreamChunkSchema = (0, ZodSchema_js_1.zodSchema)(zod_1.z.
222
222
  eval_duration: zod_1.z.number(),
223
223
  context: zod_1.z.array(zod_1.z.number()).optional(),
224
224
  }),
225
- ]));
225
+ ]);
226
226
  exports.OllamaCompletionResponseFormat = {
227
227
  /**
228
228
  * Returns the response as a JSON object.
@@ -233,7 +233,7 @@ exports.OllamaCompletionResponseFormat = {
233
233
  const responseBody = await response.text();
234
234
  const parsedResult = (0, parseJSON_js_1.safeParseJSON)({
235
235
  text: responseBody,
236
- schema: new ZodSchema_js_1.ZodSchema(zod_1.z.union([
236
+ schema: (0, ZodSchema_js_1.zodSchema)(zod_1.z.union([
237
237
  ollamaCompletionResponseSchema,
238
238
  zod_1.z.object({
239
239
  done: zod_1.z.literal(false),
@@ -272,6 +272,6 @@ exports.OllamaCompletionResponseFormat = {
272
272
  */
273
273
  deltaIterable: {
274
274
  stream: true,
275
- handler: (0, createJsonStreamResponseHandler_js_1.createJsonStreamResponseHandler)(ollamaCompletionStreamChunkSchema),
275
+ handler: (0, createJsonStreamResponseHandler_js_1.createJsonStreamResponseHandler)((0, ZodSchema_js_1.zodSchema)(ollamaCompletionStreamChunkSchema)),
276
276
  },
277
277
  };
@@ -2,14 +2,13 @@ import { z } from "zod";
2
2
  import { FunctionOptions } from "../../core/FunctionOptions.js";
3
3
  import { ApiConfiguration } from "../../core/api/ApiConfiguration.js";
4
4
  import { ResponseHandler } from "../../core/api/postToApi.js";
5
- import { ZodSchema } from "../../core/schema/ZodSchema.js";
6
5
  import { AbstractModel } from "../../model-function/AbstractModel.js";
7
6
  import { PromptTemplateTextStreamingModel } from "../../model-function/generate-text/PromptTemplateTextStreamingModel.js";
8
7
  import { TextStreamingModel } from "../../model-function/generate-text/TextGenerationModel.js";
9
8
  import { TextGenerationPromptTemplate } from "../../model-function/generate-text/TextGenerationPromptTemplate.js";
10
9
  import { TextGenerationToolCallModel, ToolCallPromptTemplate } from "../../tool/generate-tool-call/TextGenerationToolCallModel.js";
11
- import { TextGenerationToolCallsOrGenerateTextModel } from "../../tool/generate-tool-calls-or-text/TextGenerationToolCallsOrGenerateTextModel.js";
12
- import { ToolCallsOrGenerateTextPromptTemplate } from "../../tool/generate-tool-calls-or-text/ToolCallsOrGenerateTextPromptTemplate.js";
10
+ import { TextGenerationToolCallsModel } from "../../tool/generate-tool-calls/TextGenerationToolCallsModel.js";
11
+ import { ToolCallsPromptTemplate } from "../../tool/generate-tool-calls/ToolCallsPromptTemplate.js";
13
12
  import { OllamaTextGenerationSettings } from "./OllamaTextGenerationSettings.js";
14
13
  export interface OllamaCompletionPrompt {
15
14
  /**
@@ -92,7 +91,7 @@ export declare class OllamaCompletionModel<CONTEXT_WINDOW_SIZE extends number |
92
91
  }>>>;
93
92
  extractTextDelta(delta: unknown): string | undefined;
94
93
  asToolCallGenerationModel<INPUT_PROMPT>(promptTemplate: ToolCallPromptTemplate<INPUT_PROMPT, OllamaCompletionPrompt>): TextGenerationToolCallModel<INPUT_PROMPT, OllamaCompletionPrompt, this>;
95
- asToolCallsOrTextGenerationModel<INPUT_PROMPT>(promptTemplate: ToolCallsOrGenerateTextPromptTemplate<INPUT_PROMPT, OllamaCompletionPrompt>): TextGenerationToolCallsOrGenerateTextModel<INPUT_PROMPT, OllamaCompletionPrompt, this>;
94
+ asToolCallsOrTextGenerationModel<INPUT_PROMPT>(promptTemplate: ToolCallsPromptTemplate<INPUT_PROMPT, OllamaCompletionPrompt>): TextGenerationToolCallsModel<INPUT_PROMPT, OllamaCompletionPrompt, this>;
96
95
  withTextPrompt(): PromptTemplateTextStreamingModel<string, OllamaCompletionPrompt, OllamaCompletionModelSettings<CONTEXT_WINDOW_SIZE>, this>;
97
96
  /**
98
97
  * Maps the prompt for a text version of the Ollama completion prompt template (without image support).
@@ -139,12 +138,48 @@ declare const ollamaCompletionResponseSchema: z.ZodObject<{
139
138
  context?: number[] | undefined;
140
139
  }>;
141
140
  export type OllamaCompletionResponse = z.infer<typeof ollamaCompletionResponseSchema>;
142
- declare const ollamaCompletionStreamChunkSchema: ZodSchema<{
141
+ declare const ollamaCompletionStreamChunkSchema: z.ZodDiscriminatedUnion<"done", [z.ZodObject<{
142
+ done: z.ZodLiteral<false>;
143
+ model: z.ZodString;
144
+ created_at: z.ZodString;
145
+ response: z.ZodString;
146
+ }, "strip", z.ZodTypeAny, {
147
+ response: string;
148
+ model: string;
149
+ done: false;
150
+ created_at: string;
151
+ }, {
143
152
  response: string;
144
153
  model: string;
145
154
  done: false;
146
155
  created_at: string;
147
- } | {
156
+ }>, z.ZodObject<{
157
+ done: z.ZodLiteral<true>;
158
+ model: z.ZodString;
159
+ created_at: z.ZodString;
160
+ total_duration: z.ZodNumber;
161
+ load_duration: z.ZodOptional<z.ZodNumber>;
162
+ sample_count: z.ZodOptional<z.ZodNumber>;
163
+ sample_duration: z.ZodOptional<z.ZodNumber>;
164
+ prompt_eval_count: z.ZodNumber;
165
+ prompt_eval_duration: z.ZodOptional<z.ZodNumber>;
166
+ eval_count: z.ZodNumber;
167
+ eval_duration: z.ZodNumber;
168
+ context: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
169
+ }, "strip", z.ZodTypeAny, {
170
+ model: string;
171
+ done: true;
172
+ created_at: string;
173
+ total_duration: number;
174
+ prompt_eval_count: number;
175
+ eval_count: number;
176
+ eval_duration: number;
177
+ load_duration?: number | undefined;
178
+ sample_count?: number | undefined;
179
+ sample_duration?: number | undefined;
180
+ prompt_eval_duration?: number | undefined;
181
+ context?: number[] | undefined;
182
+ }, {
148
183
  model: string;
149
184
  done: true;
150
185
  created_at: string;
@@ -157,8 +192,8 @@ declare const ollamaCompletionStreamChunkSchema: ZodSchema<{
157
192
  sample_duration?: number | undefined;
158
193
  prompt_eval_duration?: number | undefined;
159
194
  context?: number[] | undefined;
160
- }>;
161
- export type OllamaCompletionStreamChunk = (typeof ollamaCompletionStreamChunkSchema)["_type"];
195
+ }>]>;
196
+ export type OllamaCompletionStreamChunk = z.infer<typeof ollamaCompletionStreamChunkSchema>;
162
197
  export type OllamaCompletionResponseFormatType<T> = {
163
198
  stream: boolean;
164
199
  handler: ResponseHandler<T>;
@@ -2,13 +2,13 @@ import { z } from "zod";
2
2
  import { ApiCallError } from "../../core/api/ApiCallError.js";
3
3
  import { callWithRetryAndThrottle } from "../../core/api/callWithRetryAndThrottle.js";
4
4
  import { postJsonToApi } from "../../core/api/postToApi.js";
5
- import { ZodSchema, zodSchema } from "../../core/schema/ZodSchema.js";
5
+ import { zodSchema } from "../../core/schema/ZodSchema.js";
6
6
  import { safeParseJSON } from "../../core/schema/parseJSON.js";
7
7
  import { AbstractModel } from "../../model-function/AbstractModel.js";
8
8
  import { PromptTemplateTextStreamingModel } from "../../model-function/generate-text/PromptTemplateTextStreamingModel.js";
9
9
  import { textGenerationModelProperties, } from "../../model-function/generate-text/TextGenerationModel.js";
10
10
  import { TextGenerationToolCallModel, } from "../../tool/generate-tool-call/TextGenerationToolCallModel.js";
11
- import { TextGenerationToolCallsOrGenerateTextModel } from "../../tool/generate-tool-calls-or-text/TextGenerationToolCallsOrGenerateTextModel.js";
11
+ import { TextGenerationToolCallsModel } from "../../tool/generate-tool-calls/TextGenerationToolCallsModel.js";
12
12
  import { createJsonStreamResponseHandler } from "../../util/streaming/createJsonStreamResponseHandler.js";
13
13
  import { OllamaApiConfiguration } from "./OllamaApiConfiguration.js";
14
14
  import { failedOllamaCallResponseHandler } from "./OllamaError.js";
@@ -142,7 +142,7 @@ export class OllamaCompletionModel extends AbstractModel {
142
142
  });
143
143
  }
144
144
  asToolCallsOrTextGenerationModel(promptTemplate) {
145
- return new TextGenerationToolCallsOrGenerateTextModel({
145
+ return new TextGenerationToolCallsModel({
146
146
  model: this,
147
147
  template: promptTemplate,
148
148
  });
@@ -197,7 +197,7 @@ const ollamaCompletionResponseSchema = z.object({
197
197
  eval_duration: z.number(),
198
198
  context: z.array(z.number()).optional(),
199
199
  });
200
- const ollamaCompletionStreamChunkSchema = zodSchema(z.discriminatedUnion("done", [
200
+ const ollamaCompletionStreamChunkSchema = z.discriminatedUnion("done", [
201
201
  z.object({
202
202
  done: z.literal(false),
203
203
  model: z.string(),
@@ -218,7 +218,7 @@ const ollamaCompletionStreamChunkSchema = zodSchema(z.discriminatedUnion("done",
218
218
  eval_duration: z.number(),
219
219
  context: z.array(z.number()).optional(),
220
220
  }),
221
- ]));
221
+ ]);
222
222
  export const OllamaCompletionResponseFormat = {
223
223
  /**
224
224
  * Returns the response as a JSON object.
@@ -229,7 +229,7 @@ export const OllamaCompletionResponseFormat = {
229
229
  const responseBody = await response.text();
230
230
  const parsedResult = safeParseJSON({
231
231
  text: responseBody,
232
- schema: new ZodSchema(z.union([
232
+ schema: zodSchema(z.union([
233
233
  ollamaCompletionResponseSchema,
234
234
  z.object({
235
235
  done: z.literal(false),
@@ -268,6 +268,6 @@ export const OllamaCompletionResponseFormat = {
268
268
  */
269
269
  deltaIterable: {
270
270
  stream: true,
271
- handler: createJsonStreamResponseHandler(ollamaCompletionStreamChunkSchema),
271
+ handler: createJsonStreamResponseHandler(zodSchema(ollamaCompletionStreamChunkSchema)),
272
272
  },
273
273
  };
@@ -4,10 +4,10 @@ exports.failedOllamaCallResponseHandler = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const postToApi_js_1 = require("../../core/api/postToApi.cjs");
6
6
  const ZodSchema_js_1 = require("../../core/schema/ZodSchema.cjs");
7
- const ollamaErrorDataSchema = new ZodSchema_js_1.ZodSchema(zod_1.z.object({
7
+ const ollamaErrorDataSchema = zod_1.z.object({
8
8
  error: zod_1.z.string(),
9
- }));
9
+ });
10
10
  exports.failedOllamaCallResponseHandler = (0, postToApi_js_1.createJsonErrorResponseHandler)({
11
- errorSchema: ollamaErrorDataSchema,
11
+ errorSchema: (0, ZodSchema_js_1.zodSchema)(ollamaErrorDataSchema),
12
12
  errorToMessage: (error) => error.error,
13
13
  });
@@ -1,9 +1,13 @@
1
+ import { z } from "zod";
1
2
  import { ApiCallError } from "../../core/api/ApiCallError.js";
2
3
  import { ResponseHandler } from "../../core/api/postToApi.js";
3
- import { ZodSchema } from "../../core/schema/ZodSchema.js";
4
- declare const ollamaErrorDataSchema: ZodSchema<{
4
+ declare const ollamaErrorDataSchema: z.ZodObject<{
5
+ error: z.ZodString;
6
+ }, "strip", z.ZodTypeAny, {
7
+ error: string;
8
+ }, {
5
9
  error: string;
6
10
  }>;
7
- export type OllamaErrorData = (typeof ollamaErrorDataSchema)["_type"];
11
+ export type OllamaErrorData = z.infer<typeof ollamaErrorDataSchema>;
8
12
  export declare const failedOllamaCallResponseHandler: ResponseHandler<ApiCallError>;
9
13
  export {};
@@ -1,10 +1,10 @@
1
1
  import { z } from "zod";
2
2
  import { createJsonErrorResponseHandler, } from "../../core/api/postToApi.js";
3
- import { ZodSchema } from "../../core/schema/ZodSchema.js";
4
- const ollamaErrorDataSchema = new ZodSchema(z.object({
3
+ import { zodSchema } from "../../core/schema/ZodSchema.js";
4
+ const ollamaErrorDataSchema = z.object({
5
5
  error: z.string(),
6
- }));
6
+ });
7
7
  export const failedOllamaCallResponseHandler = createJsonErrorResponseHandler({
8
- errorSchema: ollamaErrorDataSchema,
8
+ errorSchema: zodSchema(ollamaErrorDataSchema),
9
9
  errorToMessage: (error) => error.error,
10
10
  });
@@ -1,10 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TextEmbedder = exports.ChatTextGenerator = exports.CompletionTextGenerator = exports.Api = void 0;
4
+ const OllamaApiConfiguration_js_1 = require("./OllamaApiConfiguration.cjs");
4
5
  const OllamaChatModel_js_1 = require("./OllamaChatModel.cjs");
5
- const OllamaTextEmbeddingModel_js_1 = require("./OllamaTextEmbeddingModel.cjs");
6
6
  const OllamaCompletionModel_js_1 = require("./OllamaCompletionModel.cjs");
7
- const OllamaApiConfiguration_js_1 = require("./OllamaApiConfiguration.cjs");
7
+ const OllamaTextEmbeddingModel_js_1 = require("./OllamaTextEmbeddingModel.cjs");
8
+ /**
9
+ * Creates an API configuration for the Ollama API.
10
+ * It calls the API at http://127.0.0.1:11434 by default.
11
+ */
8
12
  function Api(settings) {
9
13
  return new OllamaApiConfiguration_js_1.OllamaApiConfiguration(settings);
10
14
  }
@@ -1,8 +1,13 @@
1
+ import { PartialBaseUrlPartsApiConfigurationOptions } from "../../core/api/BaseUrlApiConfiguration.js";
2
+ import { OllamaApiConfiguration } from "./OllamaApiConfiguration.js";
1
3
  import { OllamaChatModel, OllamaChatModelSettings } from "./OllamaChatModel.js";
2
- import { OllamaTextEmbeddingModel, OllamaTextEmbeddingModelSettings } from "./OllamaTextEmbeddingModel.js";
3
4
  import { OllamaCompletionModel, OllamaCompletionModelSettings } from "./OllamaCompletionModel.js";
4
- import { OllamaApiConfiguration, OllamaApiConfigurationSettings } from "./OllamaApiConfiguration.js";
5
- export declare function Api(settings: OllamaApiConfigurationSettings): OllamaApiConfiguration;
5
+ import { OllamaTextEmbeddingModel, OllamaTextEmbeddingModelSettings } from "./OllamaTextEmbeddingModel.js";
6
+ /**
7
+ * Creates an API configuration for the Ollama API.
8
+ * It calls the API at http://127.0.0.1:11434 by default.
9
+ */
10
+ export declare function Api(settings: PartialBaseUrlPartsApiConfigurationOptions): OllamaApiConfiguration;
6
11
  export declare function CompletionTextGenerator<CONTEXT_WINDOW_SIZE extends number>(settings: OllamaCompletionModelSettings<CONTEXT_WINDOW_SIZE>): OllamaCompletionModel<CONTEXT_WINDOW_SIZE>;
7
12
  export declare function ChatTextGenerator(settings: OllamaChatModelSettings): OllamaChatModel;
8
13
  export declare function TextEmbedder(settings: OllamaTextEmbeddingModelSettings): OllamaTextEmbeddingModel;
@@ -1,7 +1,11 @@
1
+ import { OllamaApiConfiguration } from "./OllamaApiConfiguration.js";
1
2
  import { OllamaChatModel } from "./OllamaChatModel.js";
2
- import { OllamaTextEmbeddingModel, } from "./OllamaTextEmbeddingModel.js";
3
3
  import { OllamaCompletionModel, } from "./OllamaCompletionModel.js";
4
- import { OllamaApiConfiguration, } from "./OllamaApiConfiguration.js";
4
+ import { OllamaTextEmbeddingModel, } from "./OllamaTextEmbeddingModel.js";
5
+ /**
6
+ * Creates an API configuration for the Ollama API.
7
+ * It calls the API at http://127.0.0.1:11434 by default.
8
+ */
5
9
  export function Api(settings) {
6
10
  return new OllamaApiConfiguration(settings);
7
11
  }
@@ -4,6 +4,7 @@ exports.OllamaTextEmbeddingModel = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const callWithRetryAndThrottle_js_1 = require("../../core/api/callWithRetryAndThrottle.cjs");
6
6
  const postToApi_js_1 = require("../../core/api/postToApi.cjs");
7
+ const ZodSchema_js_1 = require("../../core/schema/ZodSchema.cjs");
7
8
  const AbstractModel_js_1 = require("../../model-function/AbstractModel.cjs");
8
9
  const OllamaApiConfiguration_js_1 = require("./OllamaApiConfiguration.cjs");
9
10
  const OllamaError_js_1 = require("./OllamaError.cjs");
@@ -36,13 +37,21 @@ class OllamaTextEmbeddingModel extends AbstractModel_js_1.AbstractModel {
36
37
  if (texts.length > this.maxValuesPerCall) {
37
38
  throw new Error(`The Ollama embedding API only supports ${this.maxValuesPerCall} texts per API call.`);
38
39
  }
40
+ const api = this.settings.api ?? new OllamaApiConfiguration_js_1.OllamaApiConfiguration();
41
+ const abortSignal = options?.run?.abortSignal;
39
42
  return (0, callWithRetryAndThrottle_js_1.callWithRetryAndThrottle)({
40
- retry: this.settings.api?.retry,
41
- throttle: this.settings.api?.throttle,
42
- call: async () => callOllamaEmbeddingAPI({
43
- ...this.settings,
44
- abortSignal: options?.run?.abortSignal,
45
- prompt: texts[0],
43
+ retry: api.retry,
44
+ throttle: api.throttle,
45
+ call: async () => (0, postToApi_js_1.postJsonToApi)({
46
+ url: api.assembleUrl(`/api/embeddings`),
47
+ headers: api.headers,
48
+ body: {
49
+ model: this.settings.model,
50
+ prompt: texts[0],
51
+ },
52
+ failedResponseHandler: OllamaError_js_1.failedOllamaCallResponseHandler,
53
+ successfulResponseHandler: (0, postToApi_js_1.createJsonResponseHandler)((0, ZodSchema_js_1.zodSchema)(ollamaTextEmbeddingResponseSchema)),
54
+ abortSignal,
46
55
  }),
47
56
  });
48
57
  }
@@ -66,13 +75,3 @@ exports.OllamaTextEmbeddingModel = OllamaTextEmbeddingModel;
66
75
  const ollamaTextEmbeddingResponseSchema = zod_1.z.object({
67
76
  embedding: zod_1.z.array(zod_1.z.number()),
68
77
  });
69
- async function callOllamaEmbeddingAPI({ api = new OllamaApiConfiguration_js_1.OllamaApiConfiguration(), abortSignal, model, prompt, }) {
70
- return (0, postToApi_js_1.postJsonToApi)({
71
- url: api.assembleUrl(`/api/embeddings`),
72
- headers: api.headers,
73
- body: { model, prompt },
74
- failedResponseHandler: OllamaError_js_1.failedOllamaCallResponseHandler,
75
- successfulResponseHandler: (0, postToApi_js_1.createJsonResponseHandler)(ollamaTextEmbeddingResponseSchema),
76
- abortSignal,
77
- });
78
- }
@@ -1,6 +1,7 @@
1
1
  import { z } from "zod";
2
2
  import { callWithRetryAndThrottle } from "../../core/api/callWithRetryAndThrottle.js";
3
3
  import { createJsonResponseHandler, postJsonToApi, } from "../../core/api/postToApi.js";
4
+ import { zodSchema } from "../../core/schema/ZodSchema.js";
4
5
  import { AbstractModel } from "../../model-function/AbstractModel.js";
5
6
  import { OllamaApiConfiguration } from "./OllamaApiConfiguration.js";
6
7
  import { failedOllamaCallResponseHandler } from "./OllamaError.js";
@@ -33,13 +34,21 @@ export class OllamaTextEmbeddingModel extends AbstractModel {
33
34
  if (texts.length > this.maxValuesPerCall) {
34
35
  throw new Error(`The Ollama embedding API only supports ${this.maxValuesPerCall} texts per API call.`);
35
36
  }
37
+ const api = this.settings.api ?? new OllamaApiConfiguration();
38
+ const abortSignal = options?.run?.abortSignal;
36
39
  return callWithRetryAndThrottle({
37
- retry: this.settings.api?.retry,
38
- throttle: this.settings.api?.throttle,
39
- call: async () => callOllamaEmbeddingAPI({
40
- ...this.settings,
41
- abortSignal: options?.run?.abortSignal,
42
- prompt: texts[0],
40
+ retry: api.retry,
41
+ throttle: api.throttle,
42
+ call: async () => postJsonToApi({
43
+ url: api.assembleUrl(`/api/embeddings`),
44
+ headers: api.headers,
45
+ body: {
46
+ model: this.settings.model,
47
+ prompt: texts[0],
48
+ },
49
+ failedResponseHandler: failedOllamaCallResponseHandler,
50
+ successfulResponseHandler: createJsonResponseHandler(zodSchema(ollamaTextEmbeddingResponseSchema)),
51
+ abortSignal,
43
52
  }),
44
53
  });
45
54
  }
@@ -62,13 +71,3 @@ export class OllamaTextEmbeddingModel extends AbstractModel {
62
71
  const ollamaTextEmbeddingResponseSchema = z.object({
63
72
  embedding: z.array(z.number()),
64
73
  });
65
- async function callOllamaEmbeddingAPI({ api = new OllamaApiConfiguration(), abortSignal, model, prompt, }) {
66
- return postJsonToApi({
67
- url: api.assembleUrl(`/api/embeddings`),
68
- headers: api.headers,
69
- body: { model, prompt },
70
- failedResponseHandler: failedOllamaCallResponseHandler,
71
- successfulResponseHandler: createJsonResponseHandler(ollamaTextEmbeddingResponseSchema),
72
- abortSignal,
73
- });
74
- }
@@ -151,7 +151,7 @@ class AbstractOpenAIChatModel extends AbstractModel_js_1.AbstractModel {
151
151
  usage: this.extractUsage(response),
152
152
  };
153
153
  }
154
- async doGenerateToolCallsOrText(tools, prompt, options) {
154
+ async doGenerateToolCalls(tools, prompt, options) {
155
155
  const response = await this.callAPI(prompt, {
156
156
  ...options,
157
157
  responseFormat: exports.OpenAIChatResponseFormat.json,
@@ -232,7 +232,7 @@ const openAIChatResponseSchema = zod_1.z.object({
232
232
  total_tokens: zod_1.z.number(),
233
233
  }),
234
234
  });
235
- const openaiChatChunkSchema = (0, ZodSchema_js_1.zodSchema)(zod_1.z.object({
235
+ const openaiChatChunkSchema = zod_1.z.object({
236
236
  object: zod_1.z.literal("chat.completion.chunk"),
237
237
  id: zod_1.z.string(),
238
238
  choices: zod_1.z.array(zod_1.z.object({
@@ -271,20 +271,20 @@ const openaiChatChunkSchema = (0, ZodSchema_js_1.zodSchema)(zod_1.z.object({
271
271
  created: zod_1.z.number(),
272
272
  model: zod_1.z.string(),
273
273
  system_fingerprint: zod_1.z.string().optional().nullable(),
274
- }));
274
+ });
275
275
  exports.OpenAIChatResponseFormat = {
276
276
  /**
277
277
  * Returns the response as a JSON object.
278
278
  */
279
279
  json: {
280
280
  stream: false,
281
- handler: (0, postToApi_js_1.createJsonResponseHandler)(openAIChatResponseSchema),
281
+ handler: (0, postToApi_js_1.createJsonResponseHandler)((0, ZodSchema_js_1.zodSchema)(openAIChatResponseSchema)),
282
282
  },
283
283
  /**
284
284
  * Returns an async iterable over the text deltas (only the tex different of the first choice).
285
285
  */
286
286
  deltaIterable: {
287
287
  stream: true,
288
- handler: (0, createEventSourceResponseHandler_js_1.createEventSourceResponseHandler)(openaiChatChunkSchema),
288
+ handler: (0, createEventSourceResponseHandler_js_1.createEventSourceResponseHandler)((0, ZodSchema_js_1.zodSchema)(openaiChatChunkSchema)),
289
289
  },
290
290
  };