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
@@ -1,7 +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
+ import { zodSchema } from "../../core/schema/ZodSchema.js";
5
5
  import { parseJSON } from "../../core/schema/parseJSON.js";
6
6
  import { AbstractModel } from "../../model-function/AbstractModel.js";
7
7
  import { PromptTemplateTextStreamingModel } from "../../model-function/generate-text/PromptTemplateTextStreamingModel.js";
@@ -74,26 +74,24 @@ export class AnthropicTextGenerationModel extends AbstractModel {
74
74
  return callWithRetryAndThrottle({
75
75
  retry: api.retry,
76
76
  throttle: api.throttle,
77
- call: async () => {
78
- return postJsonToApi({
79
- url: api.assembleUrl(`/complete`),
80
- headers: api.headers,
81
- body: {
82
- model: this.settings.model,
83
- prompt,
84
- stream: responseFormat.stream,
85
- max_tokens_to_sample: this.settings.maxGenerationTokens ?? 100,
86
- temperature: this.settings.temperature,
87
- top_k: this.settings.topK,
88
- top_p: this.settings.topP,
89
- stop_sequences: this.settings.stopSequences,
90
- metadata: userId != null ? { user_id: userId } : undefined,
91
- },
92
- failedResponseHandler: failedAnthropicCallResponseHandler,
93
- successfulResponseHandler: responseFormat.handler,
94
- abortSignal,
95
- });
96
- },
77
+ call: async () => postJsonToApi({
78
+ url: api.assembleUrl(`/complete`),
79
+ headers: api.headers,
80
+ body: {
81
+ model: this.settings.model,
82
+ prompt,
83
+ stream: responseFormat.stream,
84
+ max_tokens_to_sample: this.settings.maxGenerationTokens ?? 100,
85
+ temperature: this.settings.temperature,
86
+ top_k: this.settings.topK,
87
+ top_p: this.settings.topP,
88
+ stop_sequences: this.settings.stopSequences,
89
+ metadata: userId != null ? { user_id: userId } : undefined,
90
+ },
91
+ failedResponseHandler: failedAnthropicCallResponseHandler,
92
+ successfulResponseHandler: responseFormat.handler,
93
+ abortSignal,
94
+ }),
97
95
  });
98
96
  }
99
97
  get settingsForEvent() {
@@ -179,11 +177,11 @@ const anthropicTextGenerationResponseSchema = z.object({
179
177
  stop_reason: z.string(),
180
178
  model: z.string(),
181
179
  });
182
- const anthropicTextStreamChunkSchema = new ZodSchema(z.object({
180
+ const anthropicTextStreamChunkSchema = z.object({
183
181
  completion: z.string(),
184
182
  stop_reason: z.string().nullable(),
185
183
  model: z.string(),
186
- }));
184
+ });
187
185
  async function createAnthropicFullDeltaIterableQueue(stream) {
188
186
  const queue = new AsyncQueue();
189
187
  // process the stream asynchonously (no 'await' on purpose):
@@ -202,7 +200,7 @@ async function createAnthropicFullDeltaIterableQueue(stream) {
202
200
  const data = event.data;
203
201
  const eventData = parseJSON({
204
202
  text: data,
205
- schema: anthropicTextStreamChunkSchema,
203
+ schema: zodSchema(anthropicTextStreamChunkSchema),
206
204
  });
207
205
  queue.push({ type: "delta", deltaValue: eventData });
208
206
  if (eventData.stop_reason != null) {
@@ -227,7 +225,7 @@ export const AnthropicTextGenerationResponseFormat = {
227
225
  */
228
226
  json: {
229
227
  stream: false,
230
- handler: createJsonResponseHandler(anthropicTextGenerationResponseSchema),
228
+ handler: createJsonResponseHandler(zodSchema(anthropicTextGenerationResponseSchema)),
231
229
  },
232
230
  /**
233
231
  * Returns an async iterable over the full deltas (all choices, including full current state at time of event)
@@ -26,11 +26,8 @@ var __importStar = (this && this.__importStar) || function (mod) {
26
26
  return result;
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.AnthropicPrompt = exports.anthropic = exports.anthropicErrorDataSchema = exports.AnthropicError = void 0;
29
+ exports.AnthropicPrompt = exports.anthropic = void 0;
30
30
  __exportStar(require("./AnthropicApiConfiguration.cjs"), exports);
31
- var AnthropicError_js_1 = require("./AnthropicError.cjs");
32
- Object.defineProperty(exports, "AnthropicError", { enumerable: true, get: function () { return AnthropicError_js_1.AnthropicError; } });
33
- Object.defineProperty(exports, "anthropicErrorDataSchema", { enumerable: true, get: function () { return AnthropicError_js_1.anthropicErrorDataSchema; } });
34
31
  exports.anthropic = __importStar(require("./AnthropicFacade.cjs"));
35
32
  exports.AnthropicPrompt = __importStar(require("./AnthropicPromptTemplate.cjs"));
36
33
  __exportStar(require("./AnthropicTextGenerationModel.cjs"), exports);
@@ -1,5 +1,5 @@
1
1
  export * from "./AnthropicApiConfiguration.js";
2
- export { AnthropicError, anthropicErrorDataSchema } from "./AnthropicError.js";
2
+ export { AnthropicErrorData } from "./AnthropicError.js";
3
3
  export * as anthropic from "./AnthropicFacade.js";
4
4
  export * as AnthropicPrompt from "./AnthropicPromptTemplate.js";
5
5
  export * from "./AnthropicTextGenerationModel.js";
@@ -1,5 +1,4 @@
1
1
  export * from "./AnthropicApiConfiguration.js";
2
- export { AnthropicError, anthropicErrorDataSchema } from "./AnthropicError.js";
3
2
  export * as anthropic from "./AnthropicFacade.js";
4
3
  export * as AnthropicPrompt from "./AnthropicPromptTemplate.js";
5
4
  export * from "./AnthropicTextGenerationModel.js";
@@ -1,14 +1,22 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Automatic1111ApiConfiguration = void 0;
4
- const BaseUrlPartsApiConfiguration_js_1 = require("../../core/api/BaseUrlPartsApiConfiguration.cjs");
4
+ const BaseUrlApiConfiguration_js_1 = require("../../core/api/BaseUrlApiConfiguration.cjs");
5
5
  /**
6
6
  * Creates an API configuration for the AUTOMATIC1111 Stable Diffusion Web UI API.
7
7
  * It calls the API at http://127.0.0.1:7860/sdapi/v1 by default.
8
8
  */
9
- class Automatic1111ApiConfiguration extends BaseUrlPartsApiConfiguration_js_1.BaseUrlPartsApiConfiguration {
10
- constructor({ protocol = "http", host = "127.0.0.1", port = "7860", path = "/sdapi/v1", headers = {}, retry, throttle, } = {}) {
11
- super({ protocol, host, port, path, headers, retry, throttle });
9
+ class Automatic1111ApiConfiguration extends BaseUrlApiConfiguration_js_1.BaseUrlApiConfigurationWithDefaults {
10
+ constructor(settings = {}) {
11
+ super({
12
+ ...settings,
13
+ baseUrlDefaults: {
14
+ protocol: "http",
15
+ host: "127.0.0.1",
16
+ port: "7860",
17
+ path: "/sdapi/v1",
18
+ },
19
+ });
12
20
  }
13
21
  }
14
22
  exports.Automatic1111ApiConfiguration = Automatic1111ApiConfiguration;
@@ -1,8 +1,8 @@
1
- import { BaseUrlPartsApiConfiguration, BaseUrlPartsApiConfigurationOptions } from "../../core/api/BaseUrlPartsApiConfiguration.js";
1
+ import { BaseUrlApiConfigurationWithDefaults, PartialBaseUrlPartsApiConfigurationOptions } from "../../core/api/BaseUrlApiConfiguration.js";
2
2
  /**
3
3
  * Creates an API configuration for the AUTOMATIC1111 Stable Diffusion Web UI API.
4
4
  * It calls the API at http://127.0.0.1:7860/sdapi/v1 by default.
5
5
  */
6
- export declare class Automatic1111ApiConfiguration extends BaseUrlPartsApiConfiguration {
7
- constructor({ protocol, host, port, path, headers, retry, throttle, }?: Partial<BaseUrlPartsApiConfigurationOptions>);
6
+ export declare class Automatic1111ApiConfiguration extends BaseUrlApiConfigurationWithDefaults {
7
+ constructor(settings?: PartialBaseUrlPartsApiConfigurationOptions);
8
8
  }
@@ -1,10 +1,18 @@
1
- import { BaseUrlPartsApiConfiguration, } from "../../core/api/BaseUrlPartsApiConfiguration.js";
1
+ import { BaseUrlApiConfigurationWithDefaults, } from "../../core/api/BaseUrlApiConfiguration.js";
2
2
  /**
3
3
  * Creates an API configuration for the AUTOMATIC1111 Stable Diffusion Web UI API.
4
4
  * It calls the API at http://127.0.0.1:7860/sdapi/v1 by default.
5
5
  */
6
- export class Automatic1111ApiConfiguration extends BaseUrlPartsApiConfiguration {
7
- constructor({ protocol = "http", host = "127.0.0.1", port = "7860", path = "/sdapi/v1", headers = {}, retry, throttle, } = {}) {
8
- super({ protocol, host, port, path, headers, retry, throttle });
6
+ export class Automatic1111ApiConfiguration extends BaseUrlApiConfigurationWithDefaults {
7
+ constructor(settings = {}) {
8
+ super({
9
+ ...settings,
10
+ baseUrlDefaults: {
11
+ protocol: "http",
12
+ host: "127.0.0.1",
13
+ port: "7860",
14
+ path: "/sdapi/v1",
15
+ },
16
+ });
9
17
  }
10
18
  }
@@ -4,13 +4,13 @@ exports.failedAutomatic1111CallResponseHandler = 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 automatic1111ErrorDataSchema = new ZodSchema_js_1.ZodSchema(zod_1.z.object({
7
+ const automatic1111ErrorDataSchema = zod_1.z.object({
8
8
  error: zod_1.z.string(),
9
9
  detail: zod_1.z.string(),
10
10
  body: zod_1.z.string(),
11
11
  errors: zod_1.z.string(),
12
- }));
12
+ });
13
13
  exports.failedAutomatic1111CallResponseHandler = (0, postToApi_js_1.createJsonErrorResponseHandler)({
14
- errorSchema: automatic1111ErrorDataSchema,
14
+ errorSchema: (0, ZodSchema_js_1.zodSchema)(automatic1111ErrorDataSchema),
15
15
  errorToMessage: (error) => error.detail,
16
16
  });
@@ -1,12 +1,22 @@
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 automatic1111ErrorDataSchema: ZodSchema<{
4
+ declare const automatic1111ErrorDataSchema: z.ZodObject<{
5
+ error: z.ZodString;
6
+ detail: z.ZodString;
7
+ body: z.ZodString;
8
+ errors: z.ZodString;
9
+ }, "strip", z.ZodTypeAny, {
10
+ error: string;
11
+ errors: string;
12
+ body: string;
13
+ detail: string;
14
+ }, {
5
15
  error: string;
6
16
  errors: string;
7
17
  body: string;
8
18
  detail: string;
9
19
  }>;
10
- export type Automatic1111ErrorData = (typeof automatic1111ErrorDataSchema)["_type"];
20
+ export type Automatic1111ErrorData = z.infer<typeof automatic1111ErrorDataSchema>;
11
21
  export declare const failedAutomatic1111CallResponseHandler: ResponseHandler<ApiCallError>;
12
22
  export {};
@@ -1,13 +1,13 @@
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 automatic1111ErrorDataSchema = new ZodSchema(z.object({
3
+ import { zodSchema } from "../../core/schema/ZodSchema.js";
4
+ const automatic1111ErrorDataSchema = z.object({
5
5
  error: z.string(),
6
6
  detail: z.string(),
7
7
  body: z.string(),
8
8
  errors: z.string(),
9
- }));
9
+ });
10
10
  export const failedAutomatic1111CallResponseHandler = createJsonErrorResponseHandler({
11
- errorSchema: automatic1111ErrorDataSchema,
11
+ errorSchema: zodSchema(automatic1111ErrorDataSchema),
12
12
  errorToMessage: (error) => error.detail,
13
13
  });
@@ -1,8 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Api = exports.ImageGenerator = void 0;
3
+ exports.ImageGenerator = exports.Api = void 0;
4
4
  const Automatic1111ApiConfiguration_js_1 = require("./Automatic1111ApiConfiguration.cjs");
5
5
  const Automatic1111ImageGenerationModel_js_1 = require("./Automatic1111ImageGenerationModel.cjs");
6
+ /**
7
+ * Creates an API configuration for the AUTOMATIC1111 Stable Diffusion Web UI API.
8
+ * It calls the API at http://127.0.0.1:7860/sdapi/v1 by default.
9
+ */
10
+ function Api(settings) {
11
+ return new Automatic1111ApiConfiguration_js_1.Automatic1111ApiConfiguration(settings);
12
+ }
13
+ exports.Api = Api;
6
14
  /**
7
15
  * Create an image generation model that calls the AUTOMATIC1111 Stable Diffusion Web UI API.
8
16
  *
@@ -14,11 +22,3 @@ function ImageGenerator(settings) {
14
22
  return new Automatic1111ImageGenerationModel_js_1.Automatic1111ImageGenerationModel(settings);
15
23
  }
16
24
  exports.ImageGenerator = ImageGenerator;
17
- /**
18
- * Creates an API configuration for the AUTOMATIC1111 Stable Diffusion Web UI API.
19
- * It calls the API at http://127.0.0.1:7860/sdapi/v1 by default.
20
- */
21
- function Api(settings) {
22
- return new Automatic1111ApiConfiguration_js_1.Automatic1111ApiConfiguration(settings);
23
- }
24
- exports.Api = Api;
@@ -1,6 +1,11 @@
1
- import { BaseUrlPartsApiConfigurationOptions } from "../../core/api/BaseUrlPartsApiConfiguration.js";
1
+ import { PartialBaseUrlPartsApiConfigurationOptions } from "../../core/api/BaseUrlApiConfiguration.js";
2
2
  import { Automatic1111ApiConfiguration } from "./Automatic1111ApiConfiguration.js";
3
3
  import { Automatic1111ImageGenerationModel, Automatic1111ImageGenerationSettings } from "./Automatic1111ImageGenerationModel.js";
4
+ /**
5
+ * Creates an API configuration for the AUTOMATIC1111 Stable Diffusion Web UI API.
6
+ * It calls the API at http://127.0.0.1:7860/sdapi/v1 by default.
7
+ */
8
+ export declare function Api(settings: PartialBaseUrlPartsApiConfigurationOptions): Automatic1111ApiConfiguration;
4
9
  /**
5
10
  * Create an image generation model that calls the AUTOMATIC1111 Stable Diffusion Web UI API.
6
11
  *
@@ -9,8 +14,3 @@ import { Automatic1111ImageGenerationModel, Automatic1111ImageGenerationSettings
9
14
  * @return A new instance of ${@link Automatic1111ImageGenerationModel}.
10
15
  */
11
16
  export declare function ImageGenerator(settings: Automatic1111ImageGenerationSettings): Automatic1111ImageGenerationModel;
12
- /**
13
- * Creates an API configuration for the AUTOMATIC1111 Stable Diffusion Web UI API.
14
- * It calls the API at http://127.0.0.1:7860/sdapi/v1 by default.
15
- */
16
- export declare function Api(settings: Partial<BaseUrlPartsApiConfigurationOptions>): Automatic1111ApiConfiguration;
@@ -1,5 +1,12 @@
1
1
  import { Automatic1111ApiConfiguration } from "./Automatic1111ApiConfiguration.js";
2
2
  import { Automatic1111ImageGenerationModel, } from "./Automatic1111ImageGenerationModel.js";
3
+ /**
4
+ * Creates an API configuration for the AUTOMATIC1111 Stable Diffusion Web UI API.
5
+ * It calls the API at http://127.0.0.1:7860/sdapi/v1 by default.
6
+ */
7
+ export function Api(settings) {
8
+ return new Automatic1111ApiConfiguration(settings);
9
+ }
3
10
  /**
4
11
  * Create an image generation model that calls the AUTOMATIC1111 Stable Diffusion Web UI API.
5
12
  *
@@ -10,10 +17,3 @@ import { Automatic1111ImageGenerationModel, } from "./Automatic1111ImageGenerati
10
17
  export function ImageGenerator(settings) {
11
18
  return new Automatic1111ImageGenerationModel(settings);
12
19
  }
13
- /**
14
- * Creates an API configuration for the AUTOMATIC1111 Stable Diffusion Web UI API.
15
- * It calls the API at http://127.0.0.1:7860/sdapi/v1 by default.
16
- */
17
- export function Api(settings) {
18
- return new Automatic1111ApiConfiguration(settings);
19
- }
@@ -4,6 +4,7 @@ exports.Automatic1111ImageGenerationModel = 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 PromptTemplateImageGenerationModel_js_1 = require("../../model-function/generate-image/PromptTemplateImageGenerationModel.cjs");
9
10
  const Automatic1111ApiConfiguration_js_1 = require("./Automatic1111ApiConfiguration.cjs");
@@ -51,18 +52,21 @@ class Automatic1111ImageGenerationModel extends AbstractModel_js_1.AbstractModel
51
52
  },
52
53
  },
53
54
  failedResponseHandler: Automatic1111Error_js_1.failedAutomatic1111CallResponseHandler,
54
- successfulResponseHandler: (0, postToApi_js_1.createJsonResponseHandler)(Automatic1111ImageGenerationResponseSchema),
55
+ successfulResponseHandler: (0, postToApi_js_1.createJsonResponseHandler)((0, ZodSchema_js_1.zodSchema)(Automatic1111ImageGenerationResponseSchema)),
55
56
  abortSignal,
56
57
  }),
57
58
  });
58
59
  }
59
60
  get settingsForEvent() {
60
- return {
61
- height: this.settings.height,
62
- width: this.settings.width,
63
- sampler: this.settings.sampler,
64
- steps: this.settings.steps,
65
- };
61
+ const eventSettingProperties = [
62
+ "height",
63
+ "width",
64
+ "sampler",
65
+ "steps",
66
+ "cfgScale",
67
+ "seed",
68
+ ];
69
+ return Object.fromEntries(Object.entries(this.settings).filter(([key]) => eventSettingProperties.includes(key)));
66
70
  }
67
71
  async doGenerateImages(prompt, options) {
68
72
  const response = await this.callAPI(prompt, options);
@@ -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 { PromptTemplateImageGenerationModel } from "../../model-function/generate-image/PromptTemplateImageGenerationModel.js";
6
7
  import { Automatic1111ApiConfiguration } from "./Automatic1111ApiConfiguration.js";
@@ -48,18 +49,21 @@ export class Automatic1111ImageGenerationModel extends AbstractModel {
48
49
  },
49
50
  },
50
51
  failedResponseHandler: failedAutomatic1111CallResponseHandler,
51
- successfulResponseHandler: createJsonResponseHandler(Automatic1111ImageGenerationResponseSchema),
52
+ successfulResponseHandler: createJsonResponseHandler(zodSchema(Automatic1111ImageGenerationResponseSchema)),
52
53
  abortSignal,
53
54
  }),
54
55
  });
55
56
  }
56
57
  get settingsForEvent() {
57
- return {
58
- height: this.settings.height,
59
- width: this.settings.width,
60
- sampler: this.settings.sampler,
61
- steps: this.settings.steps,
62
- };
58
+ const eventSettingProperties = [
59
+ "height",
60
+ "width",
61
+ "sampler",
62
+ "steps",
63
+ "cfgScale",
64
+ "seed",
65
+ ];
66
+ return Object.fromEntries(Object.entries(this.settings).filter(([key]) => eventSettingProperties.includes(key)));
63
67
  }
64
68
  async doGenerateImages(prompt, options) {
65
69
  const response = await this.callAPI(prompt, options);
@@ -3,19 +3,27 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CohereApiConfiguration = void 0;
4
4
  const BaseUrlApiConfiguration_js_1 = require("../../core/api/BaseUrlApiConfiguration.cjs");
5
5
  const loadApiKey_js_1 = require("../../core/api/loadApiKey.cjs");
6
- class CohereApiConfiguration extends BaseUrlApiConfiguration_js_1.BaseUrlApiConfiguration {
7
- constructor({ baseUrl = "https://api.cohere.ai/v1", apiKey, retry, throttle, } = {}) {
6
+ /**
7
+ * Creates an API configuration for the Cohere API.
8
+ * It calls the API at https://api.cohere.ai/v1 and uses the `COHERE_API_KEY` env variable by default.
9
+ */
10
+ class CohereApiConfiguration extends BaseUrlApiConfiguration_js_1.BaseUrlApiConfigurationWithDefaults {
11
+ constructor(settings = {}) {
8
12
  super({
9
- baseUrl,
13
+ ...settings,
10
14
  headers: {
11
15
  Authorization: `Bearer ${(0, loadApiKey_js_1.loadApiKey)({
12
- apiKey,
16
+ apiKey: settings.apiKey,
13
17
  environmentVariableName: "COHERE_API_KEY",
14
18
  description: "Cohere",
15
19
  })}`,
16
20
  },
17
- retry,
18
- throttle,
21
+ baseUrlDefaults: {
22
+ protocol: "https",
23
+ host: "api.cohere.ai",
24
+ port: "443",
25
+ path: "/v1",
26
+ },
19
27
  });
20
28
  }
21
29
  }
@@ -1,11 +1,10 @@
1
- import { BaseUrlApiConfiguration } from "../../core/api/BaseUrlApiConfiguration.js";
2
- import { RetryFunction } from "../../core/api/RetryFunction.js";
3
- import { ThrottleFunction } from "../../core/api/ThrottleFunction.js";
4
- export declare class CohereApiConfiguration extends BaseUrlApiConfiguration {
5
- constructor({ baseUrl, apiKey, retry, throttle, }?: {
6
- baseUrl?: string;
1
+ import { BaseUrlApiConfigurationWithDefaults, PartialBaseUrlPartsApiConfigurationOptions } from "../../core/api/BaseUrlApiConfiguration.js";
2
+ /**
3
+ * Creates an API configuration for the Cohere API.
4
+ * It calls the API at https://api.cohere.ai/v1 and uses the `COHERE_API_KEY` env variable by default.
5
+ */
6
+ export declare class CohereApiConfiguration extends BaseUrlApiConfigurationWithDefaults {
7
+ constructor(settings?: PartialBaseUrlPartsApiConfigurationOptions & {
7
8
  apiKey?: string;
8
- retry?: RetryFunction;
9
- throttle?: ThrottleFunction;
10
9
  });
11
10
  }
@@ -1,18 +1,26 @@
1
- import { BaseUrlApiConfiguration } from "../../core/api/BaseUrlApiConfiguration.js";
1
+ import { BaseUrlApiConfigurationWithDefaults, } from "../../core/api/BaseUrlApiConfiguration.js";
2
2
  import { loadApiKey } from "../../core/api/loadApiKey.js";
3
- export class CohereApiConfiguration extends BaseUrlApiConfiguration {
4
- constructor({ baseUrl = "https://api.cohere.ai/v1", apiKey, retry, throttle, } = {}) {
3
+ /**
4
+ * Creates an API configuration for the Cohere API.
5
+ * It calls the API at https://api.cohere.ai/v1 and uses the `COHERE_API_KEY` env variable by default.
6
+ */
7
+ export class CohereApiConfiguration extends BaseUrlApiConfigurationWithDefaults {
8
+ constructor(settings = {}) {
5
9
  super({
6
- baseUrl,
10
+ ...settings,
7
11
  headers: {
8
12
  Authorization: `Bearer ${loadApiKey({
9
- apiKey,
13
+ apiKey: settings.apiKey,
10
14
  environmentVariableName: "COHERE_API_KEY",
11
15
  description: "Cohere",
12
16
  })}`,
13
17
  },
14
- retry,
15
- throttle,
18
+ baseUrlDefaults: {
19
+ protocol: "https",
20
+ host: "api.cohere.ai",
21
+ port: "443",
22
+ path: "/v1",
23
+ },
16
24
  });
17
25
  }
18
26
  }
@@ -1,48 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.failedCohereCallResponseHandler = exports.CohereError = exports.cohereErrorDataSchema = void 0;
3
+ exports.failedCohereCallResponseHandler = void 0;
4
4
  const zod_1 = require("zod");
5
- const ApiCallError_js_1 = require("../../core/api/ApiCallError.cjs");
5
+ const postToApi_js_1 = require("../../core/api/postToApi.cjs");
6
6
  const ZodSchema_js_1 = require("../../core/schema/ZodSchema.cjs");
7
- const parseJSON_js_1 = require("../../core/schema/parseJSON.cjs");
8
- exports.cohereErrorDataSchema = new ZodSchema_js_1.ZodSchema(zod_1.z.object({
7
+ const cohereErrorDataSchema = zod_1.z.object({
9
8
  message: zod_1.z.string(),
10
- }));
11
- class CohereError extends ApiCallError_js_1.ApiCallError {
12
- constructor({ data, statusCode, url, requestBodyValues, message = data.message, }) {
13
- super({ message, statusCode, requestBodyValues, url });
14
- Object.defineProperty(this, "data", {
15
- enumerable: true,
16
- configurable: true,
17
- writable: true,
18
- value: void 0
19
- });
20
- this.data = data;
21
- }
22
- }
23
- exports.CohereError = CohereError;
24
- const failedCohereCallResponseHandler = async ({ response, url, requestBodyValues }) => {
25
- const responseBody = await response.text();
26
- // For some errors, the body of Cohere responses is empty:
27
- if (responseBody.trim() === "") {
28
- return new CohereError({
29
- url,
30
- requestBodyValues,
31
- statusCode: response.status,
32
- data: {
33
- message: response.statusText,
34
- },
35
- });
36
- }
37
- const parsedError = (0, parseJSON_js_1.parseJSON)({
38
- text: responseBody,
39
- schema: exports.cohereErrorDataSchema,
40
- });
41
- return new CohereError({
42
- url,
43
- requestBodyValues,
44
- statusCode: response.status,
45
- data: parsedError,
46
- });
47
- };
48
- exports.failedCohereCallResponseHandler = failedCohereCallResponseHandler;
9
+ });
10
+ exports.failedCohereCallResponseHandler = (0, postToApi_js_1.createJsonErrorResponseHandler)({
11
+ errorSchema: (0, ZodSchema_js_1.zodSchema)(cohereErrorDataSchema),
12
+ errorToMessage: (error) => error.message,
13
+ });
@@ -1,18 +1,11 @@
1
- import { ApiCallError } from "../../core/api/ApiCallError.js";
2
- import { ResponseHandler } from "../../core/api/postToApi.js";
3
- import { ZodSchema } from "../../core/schema/ZodSchema.js";
4
- export declare const cohereErrorDataSchema: ZodSchema<{
1
+ import { z } from "zod";
2
+ declare const cohereErrorDataSchema: z.ZodObject<{
3
+ message: z.ZodString;
4
+ }, "strip", z.ZodTypeAny, {
5
+ message: string;
6
+ }, {
5
7
  message: string;
6
8
  }>;
7
- export type CohereErrorData = (typeof cohereErrorDataSchema)["_type"];
8
- export declare class CohereError extends ApiCallError {
9
- readonly data: CohereErrorData;
10
- constructor({ data, statusCode, url, requestBodyValues, message, }: {
11
- message?: string;
12
- statusCode: number;
13
- url: string;
14
- requestBodyValues: unknown;
15
- data: CohereErrorData;
16
- });
17
- }
18
- export declare const failedCohereCallResponseHandler: ResponseHandler<ApiCallError>;
9
+ export type CohereErrorData = z.infer<typeof cohereErrorDataSchema>;
10
+ export declare const failedCohereCallResponseHandler: import("../../core/api/postToApi.js").ResponseHandler<import("../../index.js").ApiCallError>;
11
+ export {};
@@ -1,43 +1,10 @@
1
1
  import { z } from "zod";
2
- import { ApiCallError } from "../../core/api/ApiCallError.js";
3
- import { ZodSchema } from "../../core/schema/ZodSchema.js";
4
- import { parseJSON } from "../../core/schema/parseJSON.js";
5
- export const cohereErrorDataSchema = new ZodSchema(z.object({
2
+ import { createJsonErrorResponseHandler } from "../../core/api/postToApi.js";
3
+ import { zodSchema } from "../../core/schema/ZodSchema.js";
4
+ const cohereErrorDataSchema = z.object({
6
5
  message: z.string(),
7
- }));
8
- export class CohereError extends ApiCallError {
9
- constructor({ data, statusCode, url, requestBodyValues, message = data.message, }) {
10
- super({ message, statusCode, requestBodyValues, url });
11
- Object.defineProperty(this, "data", {
12
- enumerable: true,
13
- configurable: true,
14
- writable: true,
15
- value: void 0
16
- });
17
- this.data = data;
18
- }
19
- }
20
- export const failedCohereCallResponseHandler = async ({ response, url, requestBodyValues }) => {
21
- const responseBody = await response.text();
22
- // For some errors, the body of Cohere responses is empty:
23
- if (responseBody.trim() === "") {
24
- return new CohereError({
25
- url,
26
- requestBodyValues,
27
- statusCode: response.status,
28
- data: {
29
- message: response.statusText,
30
- },
31
- });
32
- }
33
- const parsedError = parseJSON({
34
- text: responseBody,
35
- schema: cohereErrorDataSchema,
36
- });
37
- return new CohereError({
38
- url,
39
- requestBodyValues,
40
- statusCode: response.status,
41
- data: parsedError,
42
- });
43
- };
6
+ });
7
+ export const failedCohereCallResponseHandler = createJsonErrorResponseHandler({
8
+ errorSchema: zodSchema(cohereErrorDataSchema),
9
+ errorToMessage: (error) => error.message,
10
+ });