modelfusion 0.109.0 → 0.111.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 (230) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/core/api/ApiFacade.cjs +20 -0
  3. package/core/api/ApiFacade.d.ts +4 -0
  4. package/core/api/ApiFacade.js +4 -0
  5. package/core/api/BaseUrlApiConfiguration.cjs +47 -5
  6. package/core/api/BaseUrlApiConfiguration.d.ts +23 -6
  7. package/core/api/BaseUrlApiConfiguration.js +45 -4
  8. package/core/api/BaseUrlApiConfiguration.test.cjs +11 -0
  9. package/core/api/BaseUrlApiConfiguration.test.d.ts +1 -0
  10. package/core/api/BaseUrlApiConfiguration.test.js +9 -0
  11. package/core/api/callWithRetryAndThrottle.cjs +3 -3
  12. package/core/api/callWithRetryAndThrottle.js +3 -3
  13. package/core/api/index.cjs +15 -2
  14. package/core/api/index.d.ts +2 -2
  15. package/core/api/index.js +2 -2
  16. package/core/api/postToApi.cjs +28 -5
  17. package/core/api/postToApi.d.ts +5 -4
  18. package/core/api/postToApi.js +26 -4
  19. package/core/api/throttleOff.cjs +8 -0
  20. package/core/api/throttleOff.d.ts +5 -0
  21. package/core/api/throttleOff.js +4 -0
  22. package/{extension → internal}/index.cjs +2 -7
  23. package/{extension → internal}/index.d.ts +1 -1
  24. package/{extension → internal}/index.js +1 -1
  25. package/model-function/generate-structure/generateStructure.d.ts +1 -1
  26. package/model-provider/anthropic/AnthropicApiConfiguration.cjs +14 -6
  27. package/model-provider/anthropic/AnthropicApiConfiguration.d.ts +7 -8
  28. package/model-provider/anthropic/AnthropicApiConfiguration.js +15 -7
  29. package/model-provider/anthropic/AnthropicError.cjs +7 -27
  30. package/model-provider/anthropic/AnthropicError.d.ts +21 -16
  31. package/model-provider/anthropic/AnthropicError.js +7 -25
  32. package/model-provider/anthropic/AnthropicFacade.cjs +10 -1
  33. package/model-provider/anthropic/AnthropicFacade.d.ts +9 -0
  34. package/model-provider/anthropic/AnthropicFacade.js +8 -0
  35. package/model-provider/anthropic/AnthropicTextGenerationModel.cjs +22 -24
  36. package/model-provider/anthropic/AnthropicTextGenerationModel.js +23 -25
  37. package/model-provider/anthropic/index.cjs +1 -4
  38. package/model-provider/anthropic/index.d.ts +1 -1
  39. package/model-provider/anthropic/index.js +0 -1
  40. package/model-provider/automatic1111/Automatic1111ApiConfiguration.cjs +12 -4
  41. package/model-provider/automatic1111/Automatic1111ApiConfiguration.d.ts +3 -3
  42. package/model-provider/automatic1111/Automatic1111ApiConfiguration.js +12 -4
  43. package/model-provider/automatic1111/Automatic1111Error.cjs +3 -3
  44. package/model-provider/automatic1111/Automatic1111Error.d.ts +13 -3
  45. package/model-provider/automatic1111/Automatic1111Error.js +4 -4
  46. package/model-provider/automatic1111/Automatic1111Facade.cjs +9 -9
  47. package/model-provider/automatic1111/Automatic1111Facade.d.ts +6 -6
  48. package/model-provider/automatic1111/Automatic1111Facade.js +7 -7
  49. package/model-provider/automatic1111/Automatic1111ImageGenerationModel.cjs +11 -7
  50. package/model-provider/automatic1111/Automatic1111ImageGenerationModel.js +11 -7
  51. package/model-provider/cohere/CohereApiConfiguration.cjs +14 -6
  52. package/model-provider/cohere/CohereApiConfiguration.d.ts +7 -8
  53. package/model-provider/cohere/CohereApiConfiguration.js +15 -7
  54. package/model-provider/cohere/CohereError.cjs +8 -43
  55. package/model-provider/cohere/CohereError.d.ts +9 -16
  56. package/model-provider/cohere/CohereError.js +8 -41
  57. package/model-provider/cohere/CohereFacade.cjs +12 -3
  58. package/model-provider/cohere/CohereFacade.d.ts +11 -2
  59. package/model-provider/cohere/CohereFacade.js +10 -2
  60. package/model-provider/cohere/CohereTextEmbeddingModel.cjs +18 -22
  61. package/model-provider/cohere/CohereTextEmbeddingModel.js +18 -22
  62. package/model-provider/cohere/CohereTextGenerationModel.cjs +31 -39
  63. package/model-provider/cohere/CohereTextGenerationModel.d.ts +110 -8
  64. package/model-provider/cohere/CohereTextGenerationModel.js +31 -39
  65. package/model-provider/cohere/CohereTokenizer.cjs +32 -41
  66. package/model-provider/cohere/CohereTokenizer.d.ts +2 -2
  67. package/model-provider/cohere/CohereTokenizer.js +32 -41
  68. package/model-provider/cohere/index.cjs +1 -3
  69. package/model-provider/cohere/index.d.ts +1 -1
  70. package/model-provider/cohere/index.js +0 -1
  71. package/model-provider/elevenlabs/ElevenLabsApiConfiguration.cjs +14 -6
  72. package/model-provider/elevenlabs/ElevenLabsApiConfiguration.d.ts +7 -8
  73. package/model-provider/elevenlabs/ElevenLabsApiConfiguration.js +15 -7
  74. package/model-provider/elevenlabs/ElevenLabsFacade.cjs +10 -1
  75. package/model-provider/elevenlabs/ElevenLabsFacade.d.ts +9 -0
  76. package/model-provider/elevenlabs/ElevenLabsFacade.js +8 -0
  77. package/model-provider/elevenlabs/ElevenLabsSpeechModel.cjs +42 -53
  78. package/model-provider/elevenlabs/ElevenLabsSpeechModel.js +44 -55
  79. package/model-provider/huggingface/HuggingFaceApiConfiguration.cjs +14 -6
  80. package/model-provider/huggingface/HuggingFaceApiConfiguration.d.ts +7 -8
  81. package/model-provider/huggingface/HuggingFaceApiConfiguration.js +15 -7
  82. package/model-provider/huggingface/HuggingFaceError.cjs +7 -29
  83. package/model-provider/huggingface/HuggingFaceError.d.ts +9 -16
  84. package/model-provider/huggingface/HuggingFaceError.js +7 -27
  85. package/model-provider/huggingface/HuggingFaceFacade.cjs +10 -1
  86. package/model-provider/huggingface/HuggingFaceFacade.d.ts +9 -0
  87. package/model-provider/huggingface/HuggingFaceFacade.js +8 -0
  88. package/model-provider/huggingface/HuggingFaceTextEmbeddingModel.cjs +17 -27
  89. package/model-provider/huggingface/HuggingFaceTextEmbeddingModel.js +17 -27
  90. package/model-provider/huggingface/HuggingFaceTextGenerationModel.cjs +22 -23
  91. package/model-provider/huggingface/HuggingFaceTextGenerationModel.js +22 -23
  92. package/model-provider/huggingface/index.cjs +1 -3
  93. package/model-provider/huggingface/index.d.ts +1 -1
  94. package/model-provider/huggingface/index.js +0 -1
  95. package/model-provider/llamacpp/LlamaCppApiConfiguration.cjs +13 -6
  96. package/model-provider/llamacpp/LlamaCppApiConfiguration.d.ts +7 -9
  97. package/model-provider/llamacpp/LlamaCppApiConfiguration.js +14 -7
  98. package/model-provider/llamacpp/LlamaCppCompletionModel.cjs +4 -4
  99. package/model-provider/llamacpp/LlamaCppCompletionModel.d.ts +173 -5
  100. package/model-provider/llamacpp/LlamaCppCompletionModel.js +4 -4
  101. package/model-provider/llamacpp/LlamaCppError.cjs +7 -27
  102. package/model-provider/llamacpp/LlamaCppError.d.ts +9 -16
  103. package/model-provider/llamacpp/LlamaCppError.js +7 -25
  104. package/model-provider/llamacpp/LlamaCppFacade.cjs +10 -2
  105. package/model-provider/llamacpp/LlamaCppFacade.d.ts +8 -1
  106. package/model-provider/llamacpp/LlamaCppFacade.js +8 -1
  107. package/model-provider/llamacpp/LlamaCppTextEmbeddingModel.cjs +10 -14
  108. package/model-provider/llamacpp/LlamaCppTextEmbeddingModel.js +10 -14
  109. package/model-provider/llamacpp/LlamaCppTokenizer.cjs +14 -18
  110. package/model-provider/llamacpp/LlamaCppTokenizer.js +14 -18
  111. package/model-provider/llamacpp/index.cjs +1 -3
  112. package/model-provider/llamacpp/index.d.ts +1 -1
  113. package/model-provider/llamacpp/index.js +0 -1
  114. package/model-provider/lmnt/LmntApiConfiguration.cjs +14 -6
  115. package/model-provider/lmnt/LmntApiConfiguration.d.ts +7 -8
  116. package/model-provider/lmnt/LmntApiConfiguration.js +15 -7
  117. package/model-provider/lmnt/LmntFacade.cjs +11 -2
  118. package/model-provider/lmnt/LmntFacade.d.ts +10 -1
  119. package/model-provider/lmnt/LmntFacade.js +9 -1
  120. package/model-provider/lmnt/LmntSpeechModel.cjs +53 -41
  121. package/model-provider/lmnt/LmntSpeechModel.d.ts +51 -3
  122. package/model-provider/lmnt/LmntSpeechModel.js +54 -42
  123. package/model-provider/mistral/MistralApiConfiguration.cjs +14 -6
  124. package/model-provider/mistral/MistralApiConfiguration.d.ts +9 -11
  125. package/model-provider/mistral/MistralApiConfiguration.js +15 -7
  126. package/model-provider/mistral/MistralChatModel.cjs +4 -4
  127. package/model-provider/mistral/MistralChatModel.d.ts +48 -3
  128. package/model-provider/mistral/MistralChatModel.js +5 -5
  129. package/model-provider/mistral/MistralError.cjs +3 -3
  130. package/model-provider/mistral/MistralError.d.ts +15 -3
  131. package/model-provider/mistral/MistralError.js +4 -4
  132. package/model-provider/mistral/MistralFacade.cjs +5 -1
  133. package/model-provider/mistral/MistralFacade.d.ts +10 -3
  134. package/model-provider/mistral/MistralFacade.js +6 -2
  135. package/model-provider/mistral/MistralTextEmbeddingModel.cjs +2 -1
  136. package/model-provider/mistral/MistralTextEmbeddingModel.js +2 -1
  137. package/model-provider/ollama/OllamaApiConfiguration.cjs +13 -6
  138. package/model-provider/ollama/OllamaApiConfiguration.d.ts +7 -10
  139. package/model-provider/ollama/OllamaApiConfiguration.js +14 -7
  140. package/model-provider/ollama/OllamaChatModel.cjs +4 -4
  141. package/model-provider/ollama/OllamaChatModel.d.ts +46 -5
  142. package/model-provider/ollama/OllamaChatModel.js +5 -5
  143. package/model-provider/ollama/OllamaCompletionModel.cjs +4 -4
  144. package/model-provider/ollama/OllamaCompletionModel.d.ts +40 -5
  145. package/model-provider/ollama/OllamaCompletionModel.js +5 -5
  146. package/model-provider/ollama/OllamaError.cjs +3 -3
  147. package/model-provider/ollama/OllamaError.d.ts +7 -3
  148. package/model-provider/ollama/OllamaError.js +4 -4
  149. package/model-provider/ollama/OllamaFacade.cjs +6 -2
  150. package/model-provider/ollama/OllamaFacade.d.ts +8 -3
  151. package/model-provider/ollama/OllamaFacade.js +6 -2
  152. package/model-provider/ollama/OllamaTextEmbeddingModel.cjs +15 -16
  153. package/model-provider/ollama/OllamaTextEmbeddingModel.js +15 -16
  154. package/model-provider/openai/AbstractOpenAIChatModel.cjs +4 -4
  155. package/model-provider/openai/AbstractOpenAIChatModel.d.ts +148 -2
  156. package/model-provider/openai/AbstractOpenAIChatModel.js +4 -4
  157. package/model-provider/openai/AbstractOpenAICompletionModel.cjs +30 -32
  158. package/model-provider/openai/AbstractOpenAICompletionModel.js +30 -32
  159. package/model-provider/openai/AzureOpenAIApiConfiguration.d.ts +9 -8
  160. package/model-provider/openai/OpenAIApiConfiguration.cjs +14 -6
  161. package/model-provider/openai/OpenAIApiConfiguration.d.ts +7 -8
  162. package/model-provider/openai/OpenAIApiConfiguration.js +15 -7
  163. package/model-provider/openai/OpenAICompletionModel.cjs +3 -91
  164. package/model-provider/openai/OpenAICompletionModel.d.ts +3 -71
  165. package/model-provider/openai/OpenAICompletionModel.js +3 -91
  166. package/model-provider/openai/OpenAIError.cjs +8 -8
  167. package/model-provider/openai/OpenAIError.d.ts +27 -3
  168. package/model-provider/openai/OpenAIError.js +9 -9
  169. package/model-provider/openai/OpenAIFacade.cjs +23 -2
  170. package/model-provider/openai/OpenAIFacade.d.ts +20 -2
  171. package/model-provider/openai/OpenAIFacade.js +20 -1
  172. package/model-provider/openai/OpenAIImageGenerationModel.cjs +20 -21
  173. package/model-provider/openai/OpenAIImageGenerationModel.d.ts +1 -1
  174. package/model-provider/openai/OpenAIImageGenerationModel.js +20 -21
  175. package/model-provider/openai/OpenAISpeechModel.cjs +17 -22
  176. package/model-provider/openai/OpenAISpeechModel.js +17 -22
  177. package/model-provider/openai/OpenAITextEmbeddingModel.cjs +18 -23
  178. package/model-provider/openai/OpenAITextEmbeddingModel.js +18 -23
  179. package/model-provider/openai/OpenAITranscriptionModel.cjs +42 -48
  180. package/model-provider/openai/OpenAITranscriptionModel.d.ts +14 -10
  181. package/model-provider/openai/OpenAITranscriptionModel.js +42 -48
  182. package/model-provider/openai/TikTokenTokenizer.cjs +0 -18
  183. package/model-provider/openai/TikTokenTokenizer.d.ts +3 -3
  184. package/model-provider/openai/TikTokenTokenizer.js +0 -18
  185. package/model-provider/openai-compatible/FireworksAIApiConfiguration.cjs +11 -7
  186. package/model-provider/openai-compatible/FireworksAIApiConfiguration.d.ts +4 -9
  187. package/model-provider/openai-compatible/FireworksAIApiConfiguration.js +12 -8
  188. package/model-provider/openai-compatible/OpenAICompatibleFacade.cjs +25 -1
  189. package/model-provider/openai-compatible/OpenAICompatibleFacade.d.ts +23 -0
  190. package/model-provider/openai-compatible/OpenAICompatibleFacade.js +22 -0
  191. package/model-provider/openai-compatible/TogetherAIApiConfiguration.cjs +11 -7
  192. package/model-provider/openai-compatible/TogetherAIApiConfiguration.d.ts +4 -9
  193. package/model-provider/openai-compatible/TogetherAIApiConfiguration.js +12 -8
  194. package/model-provider/stability/StabilityApiConfiguration.cjs +13 -12
  195. package/model-provider/stability/StabilityApiConfiguration.d.ts +4 -4
  196. package/model-provider/stability/StabilityApiConfiguration.js +13 -12
  197. package/model-provider/stability/StabilityError.cjs +3 -3
  198. package/model-provider/stability/StabilityError.d.ts +7 -3
  199. package/model-provider/stability/StabilityError.js +4 -4
  200. package/model-provider/stability/StabilityFacade.cjs +9 -9
  201. package/model-provider/stability/StabilityFacade.d.ts +8 -8
  202. package/model-provider/stability/StabilityFacade.js +7 -7
  203. package/model-provider/stability/StabilityImageGenerationModel.cjs +2 -1
  204. package/model-provider/stability/StabilityImageGenerationModel.js +2 -1
  205. package/model-provider/whispercpp/WhisperCppApiConfiguration.cjs +13 -6
  206. package/model-provider/whispercpp/WhisperCppApiConfiguration.d.ts +7 -10
  207. package/model-provider/whispercpp/WhisperCppApiConfiguration.js +14 -7
  208. package/model-provider/whispercpp/WhisperCppFacade.cjs +9 -5
  209. package/model-provider/whispercpp/WhisperCppFacade.d.ts +7 -2
  210. package/model-provider/whispercpp/WhisperCppFacade.js +8 -4
  211. package/model-provider/whispercpp/WhisperCppTranscriptionModel.cjs +5 -2
  212. package/model-provider/whispercpp/WhisperCppTranscriptionModel.js +6 -3
  213. package/package.json +5 -5
  214. package/tool/WebSearchTool.cjs +2 -2
  215. package/tool/WebSearchTool.d.ts +1 -2
  216. package/tool/WebSearchTool.js +3 -3
  217. package/vector-index/memory/MemoryVectorIndex.cjs +2 -2
  218. package/vector-index/memory/MemoryVectorIndex.js +3 -3
  219. package/core/api/BaseUrlPartsApiConfiguration.cjs +0 -53
  220. package/core/api/BaseUrlPartsApiConfiguration.d.ts +0 -26
  221. package/core/api/BaseUrlPartsApiConfiguration.js +0 -49
  222. package/core/api/throttleUnlimitedConcurrency.cjs +0 -8
  223. package/core/api/throttleUnlimitedConcurrency.d.ts +0 -5
  224. package/core/api/throttleUnlimitedConcurrency.js +0 -4
  225. package/model-provider/elevenlabs/ElevenLabsError.cjs +0 -30
  226. package/model-provider/elevenlabs/ElevenLabsError.d.ts +0 -3
  227. package/model-provider/elevenlabs/ElevenLabsError.js +0 -26
  228. package/model-provider/lmnt/LmntError.cjs +0 -30
  229. package/model-provider/lmnt/LmntError.d.ts +0 -3
  230. package/model-provider/lmnt/LmntError.js +0 -26
@@ -1,33 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.failedLlamaCppCallResponseHandler = exports.LlamaCppError = exports.llamaCppErrorDataSchema = void 0;
3
+ exports.failedLlamaCppCallResponseHandler = void 0;
4
4
  const zod_1 = require("zod");
5
- const ApiCallError_js_1 = require("../../core/api/ApiCallError.cjs");
6
- const parseJSON_js_1 = require("../../core/schema/parseJSON.cjs");
5
+ const postToApi_js_1 = require("../../core/api/postToApi.cjs");
7
6
  const ZodSchema_js_1 = require("../../core/schema/ZodSchema.cjs");
8
- exports.llamaCppErrorDataSchema = new ZodSchema_js_1.ZodSchema(zod_1.z.object({
7
+ const llamaCppErrorDataSchema = zod_1.z.object({
9
8
  error: zod_1.z.string(),
10
- }));
11
- class LlamaCppError extends ApiCallError_js_1.ApiCallError {
12
- constructor({ data, statusCode, url, requestBodyValues, message = data.error, }) {
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.LlamaCppError = LlamaCppError;
24
- const failedLlamaCppCallResponseHandler = async ({ response, url, requestBodyValues }) => new LlamaCppError({
25
- url,
26
- requestBodyValues,
27
- statusCode: response.status,
28
- data: (0, parseJSON_js_1.parseJSON)({
29
- text: await response.text(),
30
- schema: exports.llamaCppErrorDataSchema,
31
- }),
32
9
  });
33
- exports.failedLlamaCppCallResponseHandler = failedLlamaCppCallResponseHandler;
10
+ exports.failedLlamaCppCallResponseHandler = (0, postToApi_js_1.createJsonErrorResponseHandler)({
11
+ errorSchema: (0, ZodSchema_js_1.zodSchema)(llamaCppErrorDataSchema),
12
+ errorToMessage: (error) => error.error,
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 llamaCppErrorDataSchema: ZodSchema<{
1
+ import { z } from "zod";
2
+ declare const llamaCppErrorDataSchema: z.ZodObject<{
3
+ error: z.ZodString;
4
+ }, "strip", z.ZodTypeAny, {
5
+ error: string;
6
+ }, {
5
7
  error: string;
6
8
  }>;
7
- export type LlamaCppErrorData = (typeof llamaCppErrorDataSchema)["_type"];
8
- export declare class LlamaCppError extends ApiCallError {
9
- readonly data: LlamaCppErrorData;
10
- constructor({ data, statusCode, url, requestBodyValues, message, }: {
11
- message?: string;
12
- statusCode: number;
13
- url: string;
14
- requestBodyValues: unknown;
15
- data: LlamaCppErrorData;
16
- });
17
- }
18
- export declare const failedLlamaCppCallResponseHandler: ResponseHandler<ApiCallError>;
9
+ export type LlamaCppErrorData = z.infer<typeof llamaCppErrorDataSchema>;
10
+ export declare const failedLlamaCppCallResponseHandler: import("../../core/api/postToApi.js").ResponseHandler<import("../../index.js").ApiCallError>;
11
+ export {};
@@ -1,28 +1,10 @@
1
1
  import { z } from "zod";
2
- import { ApiCallError } from "../../core/api/ApiCallError.js";
3
- import { parseJSON } from "../../core/schema/parseJSON.js";
4
- import { ZodSchema } from "../../core/schema/ZodSchema.js";
5
- export const llamaCppErrorDataSchema = new ZodSchema(z.object({
2
+ import { createJsonErrorResponseHandler } from "../../core/api/postToApi.js";
3
+ import { zodSchema } from "../../core/schema/ZodSchema.js";
4
+ const llamaCppErrorDataSchema = z.object({
6
5
  error: z.string(),
7
- }));
8
- export class LlamaCppError extends ApiCallError {
9
- constructor({ data, statusCode, url, requestBodyValues, message = data.error, }) {
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 failedLlamaCppCallResponseHandler = async ({ response, url, requestBodyValues }) => new LlamaCppError({
21
- url,
22
- requestBodyValues,
23
- statusCode: response.status,
24
- data: parseJSON({
25
- text: await response.text(),
26
- schema: llamaCppErrorDataSchema,
27
- }),
6
+ });
7
+ export const failedLlamaCppCallResponseHandler = createJsonErrorResponseHandler({
8
+ errorSchema: zodSchema(llamaCppErrorDataSchema),
9
+ errorToMessage: (error) => error.error,
28
10
  });
@@ -1,10 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Tokenizer = exports.TextEmbedder = exports.TextGenerator = void 0;
3
+ exports.Tokenizer = exports.TextEmbedder = exports.TextGenerator = exports.Api = void 0;
4
4
  const LlamaCppApiConfiguration_js_1 = require("./LlamaCppApiConfiguration.cjs");
5
- const LlamaCppTextEmbeddingModel_js_1 = require("./LlamaCppTextEmbeddingModel.cjs");
6
5
  const LlamaCppCompletionModel_js_1 = require("./LlamaCppCompletionModel.cjs");
6
+ const LlamaCppTextEmbeddingModel_js_1 = require("./LlamaCppTextEmbeddingModel.cjs");
7
7
  const LlamaCppTokenizer_js_1 = require("./LlamaCppTokenizer.cjs");
8
+ /**
9
+ * Creates an API configuration for the Llama.cpp server.
10
+ * It calls the API at http://127.0.0.1:8080 by default.
11
+ */
12
+ function Api(settings) {
13
+ return new LlamaCppApiConfiguration_js_1.LlamaCppApiConfiguration(settings);
14
+ }
15
+ exports.Api = Api;
8
16
  function TextGenerator(settings = {}) {
9
17
  return new LlamaCppCompletionModel_js_1.LlamaCppCompletionModel(settings);
10
18
  }
@@ -1,7 +1,14 @@
1
1
  import { ApiConfiguration } from "../../core/api/ApiConfiguration.js";
2
- import { LlamaCppTextEmbeddingModel, LlamaCppTextEmbeddingModelSettings } from "./LlamaCppTextEmbeddingModel.js";
2
+ import { PartialBaseUrlPartsApiConfigurationOptions } from "../../core/api/BaseUrlApiConfiguration.js";
3
+ import { LlamaCppApiConfiguration } from "./LlamaCppApiConfiguration.js";
3
4
  import { LlamaCppCompletionModel, LlamaCppCompletionModelSettings } from "./LlamaCppCompletionModel.js";
5
+ import { LlamaCppTextEmbeddingModel, LlamaCppTextEmbeddingModelSettings } from "./LlamaCppTextEmbeddingModel.js";
4
6
  import { LlamaCppTokenizer } from "./LlamaCppTokenizer.js";
7
+ /**
8
+ * Creates an API configuration for the Llama.cpp server.
9
+ * It calls the API at http://127.0.0.1:8080 by default.
10
+ */
11
+ export declare function Api(settings: PartialBaseUrlPartsApiConfigurationOptions): LlamaCppApiConfiguration;
5
12
  export declare function TextGenerator<CONTEXT_WINDOW_SIZE extends number>(settings?: LlamaCppCompletionModelSettings<CONTEXT_WINDOW_SIZE>): LlamaCppCompletionModel<CONTEXT_WINDOW_SIZE>;
6
13
  export declare function TextEmbedder(settings?: LlamaCppTextEmbeddingModelSettings): LlamaCppTextEmbeddingModel;
7
14
  export declare function Tokenizer(api?: ApiConfiguration): LlamaCppTokenizer;
@@ -1,7 +1,14 @@
1
1
  import { LlamaCppApiConfiguration } from "./LlamaCppApiConfiguration.js";
2
- import { LlamaCppTextEmbeddingModel, } from "./LlamaCppTextEmbeddingModel.js";
3
2
  import { LlamaCppCompletionModel, } from "./LlamaCppCompletionModel.js";
3
+ import { LlamaCppTextEmbeddingModel, } from "./LlamaCppTextEmbeddingModel.js";
4
4
  import { LlamaCppTokenizer } from "./LlamaCppTokenizer.js";
5
+ /**
6
+ * Creates an API configuration for the Llama.cpp server.
7
+ * It calls the API at http://127.0.0.1:8080 by default.
8
+ */
9
+ export function Api(settings) {
10
+ return new LlamaCppApiConfiguration(settings);
11
+ }
5
12
  export function TextGenerator(settings = {}) {
6
13
  return new LlamaCppCompletionModel(settings);
7
14
  }
@@ -4,6 +4,7 @@ exports.LlamaCppTextEmbeddingModel = 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 LlamaCppApiConfiguration_js_1 = require("./LlamaCppApiConfiguration.cjs");
9
10
  const LlamaCppError_js_1 = require("./LlamaCppError.cjs");
@@ -53,13 +54,18 @@ class LlamaCppTextEmbeddingModel extends AbstractModel_js_1.AbstractModel {
53
54
  if (texts.length > this.maxValuesPerCall) {
54
55
  throw new Error(`The Llama.cpp embedding API only supports ${this.maxValuesPerCall} texts per API call.`);
55
56
  }
57
+ const api = this.settings.api ?? new LlamaCppApiConfiguration_js_1.LlamaCppApiConfiguration();
58
+ const abortSignal = options?.run?.abortSignal;
56
59
  return (0, callWithRetryAndThrottle_js_1.callWithRetryAndThrottle)({
57
60
  retry: this.settings.api?.retry,
58
61
  throttle: this.settings.api?.throttle,
59
- call: async () => callLlamaCppEmbeddingAPI({
60
- ...this.settings,
61
- abortSignal: options?.run?.abortSignal,
62
- content: texts[0],
62
+ call: async () => (0, postToApi_js_1.postJsonToApi)({
63
+ url: api.assembleUrl(`/embedding`),
64
+ headers: api.headers,
65
+ body: { content: texts[0] },
66
+ failedResponseHandler: LlamaCppError_js_1.failedLlamaCppCallResponseHandler,
67
+ successfulResponseHandler: (0, postToApi_js_1.createJsonResponseHandler)((0, ZodSchema_js_1.zodSchema)(llamaCppTextEmbeddingResponseSchema)),
68
+ abortSignal,
63
69
  }),
64
70
  });
65
71
  }
@@ -83,13 +89,3 @@ exports.LlamaCppTextEmbeddingModel = LlamaCppTextEmbeddingModel;
83
89
  const llamaCppTextEmbeddingResponseSchema = zod_1.z.object({
84
90
  embedding: zod_1.z.array(zod_1.z.number()),
85
91
  });
86
- async function callLlamaCppEmbeddingAPI({ api = new LlamaCppApiConfiguration_js_1.LlamaCppApiConfiguration(), abortSignal, content, }) {
87
- return (0, postToApi_js_1.postJsonToApi)({
88
- url: api.assembleUrl(`/embedding`),
89
- headers: api.headers,
90
- body: { content },
91
- failedResponseHandler: LlamaCppError_js_1.failedLlamaCppCallResponseHandler,
92
- successfulResponseHandler: (0, postToApi_js_1.createJsonResponseHandler)(llamaCppTextEmbeddingResponseSchema),
93
- abortSignal,
94
- });
95
- }
@@ -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 { LlamaCppApiConfiguration } from "./LlamaCppApiConfiguration.js";
6
7
  import { failedLlamaCppCallResponseHandler } from "./LlamaCppError.js";
@@ -50,13 +51,18 @@ export class LlamaCppTextEmbeddingModel extends AbstractModel {
50
51
  if (texts.length > this.maxValuesPerCall) {
51
52
  throw new Error(`The Llama.cpp embedding API only supports ${this.maxValuesPerCall} texts per API call.`);
52
53
  }
54
+ const api = this.settings.api ?? new LlamaCppApiConfiguration();
55
+ const abortSignal = options?.run?.abortSignal;
53
56
  return callWithRetryAndThrottle({
54
57
  retry: this.settings.api?.retry,
55
58
  throttle: this.settings.api?.throttle,
56
- call: async () => callLlamaCppEmbeddingAPI({
57
- ...this.settings,
58
- abortSignal: options?.run?.abortSignal,
59
- content: texts[0],
59
+ call: async () => postJsonToApi({
60
+ url: api.assembleUrl(`/embedding`),
61
+ headers: api.headers,
62
+ body: { content: texts[0] },
63
+ failedResponseHandler: failedLlamaCppCallResponseHandler,
64
+ successfulResponseHandler: createJsonResponseHandler(zodSchema(llamaCppTextEmbeddingResponseSchema)),
65
+ abortSignal,
60
66
  }),
61
67
  });
62
68
  }
@@ -79,13 +85,3 @@ export class LlamaCppTextEmbeddingModel extends AbstractModel {
79
85
  const llamaCppTextEmbeddingResponseSchema = z.object({
80
86
  embedding: z.array(z.number()),
81
87
  });
82
- async function callLlamaCppEmbeddingAPI({ api = new LlamaCppApiConfiguration(), abortSignal, content, }) {
83
- return postJsonToApi({
84
- url: api.assembleUrl(`/embedding`),
85
- headers: api.headers,
86
- body: { content },
87
- failedResponseHandler: failedLlamaCppCallResponseHandler,
88
- successfulResponseHandler: createJsonResponseHandler(llamaCppTextEmbeddingResponseSchema),
89
- abortSignal,
90
- });
91
- }
@@ -4,6 +4,7 @@ exports.LlamaCppTokenizer = 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 LlamaCppApiConfiguration_js_1 = require("./LlamaCppApiConfiguration.cjs");
8
9
  const LlamaCppError_js_1 = require("./LlamaCppError.cjs");
9
10
  /**
@@ -30,13 +31,20 @@ class LlamaCppTokenizer {
30
31
  this.api = api;
31
32
  }
32
33
  async callTokenizeAPI(text, context) {
34
+ const api = this.api;
35
+ const abortSignal = context?.abortSignal;
33
36
  return (0, callWithRetryAndThrottle_js_1.callWithRetryAndThrottle)({
34
- retry: this.api.retry,
35
- throttle: this.api.throttle,
36
- call: async () => callLlamaCppTokenizeAPI({
37
- api: this.api,
38
- abortSignal: context?.abortSignal,
39
- text,
37
+ retry: api.retry,
38
+ throttle: api.throttle,
39
+ call: async () => (0, postToApi_js_1.postJsonToApi)({
40
+ url: api.assembleUrl(`/tokenize`),
41
+ headers: api.headers,
42
+ body: {
43
+ content: text,
44
+ },
45
+ failedResponseHandler: LlamaCppError_js_1.failedLlamaCppCallResponseHandler,
46
+ successfulResponseHandler: (0, postToApi_js_1.createJsonResponseHandler)((0, ZodSchema_js_1.zodSchema)(llamaCppTokenizationResponseSchema)),
47
+ abortSignal,
40
48
  }),
41
49
  });
42
50
  }
@@ -49,15 +57,3 @@ exports.LlamaCppTokenizer = LlamaCppTokenizer;
49
57
  const llamaCppTokenizationResponseSchema = zod_1.z.object({
50
58
  tokens: zod_1.z.array(zod_1.z.number()),
51
59
  });
52
- async function callLlamaCppTokenizeAPI({ api, abortSignal, text, }) {
53
- return (0, postToApi_js_1.postJsonToApi)({
54
- url: api.assembleUrl(`/tokenize`),
55
- headers: api.headers,
56
- body: {
57
- content: text,
58
- },
59
- failedResponseHandler: LlamaCppError_js_1.failedLlamaCppCallResponseHandler,
60
- successfulResponseHandler: (0, postToApi_js_1.createJsonResponseHandler)(llamaCppTokenizationResponseSchema),
61
- abortSignal,
62
- });
63
- }
@@ -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 { LlamaCppApiConfiguration } from "./LlamaCppApiConfiguration.js";
5
6
  import { failedLlamaCppCallResponseHandler } from "./LlamaCppError.js";
6
7
  /**
@@ -27,13 +28,20 @@ export class LlamaCppTokenizer {
27
28
  this.api = api;
28
29
  }
29
30
  async callTokenizeAPI(text, context) {
31
+ const api = this.api;
32
+ const abortSignal = context?.abortSignal;
30
33
  return callWithRetryAndThrottle({
31
- retry: this.api.retry,
32
- throttle: this.api.throttle,
33
- call: async () => callLlamaCppTokenizeAPI({
34
- api: this.api,
35
- abortSignal: context?.abortSignal,
36
- text,
34
+ retry: api.retry,
35
+ throttle: api.throttle,
36
+ call: async () => postJsonToApi({
37
+ url: api.assembleUrl(`/tokenize`),
38
+ headers: api.headers,
39
+ body: {
40
+ content: text,
41
+ },
42
+ failedResponseHandler: failedLlamaCppCallResponseHandler,
43
+ successfulResponseHandler: createJsonResponseHandler(zodSchema(llamaCppTokenizationResponseSchema)),
44
+ abortSignal,
37
45
  }),
38
46
  });
39
47
  }
@@ -45,15 +53,3 @@ export class LlamaCppTokenizer {
45
53
  const llamaCppTokenizationResponseSchema = z.object({
46
54
  tokens: z.array(z.number()),
47
55
  });
48
- async function callLlamaCppTokenizeAPI({ api, abortSignal, text, }) {
49
- return postJsonToApi({
50
- url: api.assembleUrl(`/tokenize`),
51
- headers: api.headers,
52
- body: {
53
- content: text,
54
- },
55
- failedResponseHandler: failedLlamaCppCallResponseHandler,
56
- successfulResponseHandler: createJsonResponseHandler(llamaCppTokenizationResponseSchema),
57
- abortSignal,
58
- });
59
- }
@@ -26,11 +26,9 @@ var __importStar = (this && this.__importStar) || function (mod) {
26
26
  return result;
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.llamacpp = exports.LlamaCppError = exports.LlamaCppBakLLaVA1Prompt = void 0;
29
+ exports.llamacpp = exports.LlamaCppBakLLaVA1Prompt = void 0;
30
30
  __exportStar(require("./LlamaCppApiConfiguration.cjs"), exports);
31
31
  exports.LlamaCppBakLLaVA1Prompt = __importStar(require("./LlamaCppBakLLaVA1PromptTemplate.cjs"));
32
- var LlamaCppError_js_1 = require("./LlamaCppError.cjs");
33
- Object.defineProperty(exports, "LlamaCppError", { enumerable: true, get: function () { return LlamaCppError_js_1.LlamaCppError; } });
34
32
  exports.llamacpp = __importStar(require("./LlamaCppFacade.cjs"));
35
33
  __exportStar(require("./LlamaCppTextEmbeddingModel.cjs"), exports);
36
34
  __exportStar(require("./LlamaCppCompletionModel.cjs"), exports);
@@ -1,6 +1,6 @@
1
1
  export * from "./LlamaCppApiConfiguration.js";
2
2
  export * as LlamaCppBakLLaVA1Prompt from "./LlamaCppBakLLaVA1PromptTemplate.js";
3
- export { LlamaCppError, LlamaCppErrorData } from "./LlamaCppError.js";
3
+ export { LlamaCppErrorData } from "./LlamaCppError.js";
4
4
  export * as llamacpp from "./LlamaCppFacade.js";
5
5
  export * from "./LlamaCppTextEmbeddingModel.js";
6
6
  export * from "./LlamaCppCompletionModel.js";
@@ -1,6 +1,5 @@
1
1
  export * from "./LlamaCppApiConfiguration.js";
2
2
  export * as LlamaCppBakLLaVA1Prompt from "./LlamaCppBakLLaVA1PromptTemplate.js";
3
- export { LlamaCppError } from "./LlamaCppError.js";
4
3
  export * as llamacpp from "./LlamaCppFacade.js";
5
4
  export * from "./LlamaCppTextEmbeddingModel.js";
6
5
  export * from "./LlamaCppCompletionModel.js";
@@ -3,19 +3,27 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LmntApiConfiguration = 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 LmntApiConfiguration extends BaseUrlApiConfiguration_js_1.BaseUrlApiConfiguration {
7
- constructor({ baseUrl = "https://api.lmnt.com/speech/beta", apiKey, retry, throttle, } = {}) {
6
+ /**
7
+ * Creates an API configuration for the LMNT API.
8
+ * It calls the API at https://api.lmnt.com/v1 and uses the `LMNT_API_KEY` env variable by default.
9
+ */
10
+ class LmntApiConfiguration extends BaseUrlApiConfiguration_js_1.BaseUrlApiConfigurationWithDefaults {
11
+ constructor(settings = {}) {
8
12
  super({
9
- baseUrl,
13
+ ...settings,
10
14
  headers: {
11
15
  "X-API-Key": (0, loadApiKey_js_1.loadApiKey)({
12
- apiKey,
16
+ apiKey: settings.apiKey,
13
17
  environmentVariableName: "LMNT_API_KEY",
14
18
  description: "LMNT",
15
19
  }),
16
20
  },
17
- retry,
18
- throttle,
21
+ baseUrlDefaults: {
22
+ protocol: "https",
23
+ host: "api.lmnt.com",
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 LmntApiConfiguration 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 LMNT API.
4
+ * It calls the API at https://api.lmnt.com/v1 and uses the `LMNT_API_KEY` env variable by default.
5
+ */
6
+ export declare class LmntApiConfiguration 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 LmntApiConfiguration extends BaseUrlApiConfiguration {
4
- constructor({ baseUrl = "https://api.lmnt.com/speech/beta", apiKey, retry, throttle, } = {}) {
3
+ /**
4
+ * Creates an API configuration for the LMNT API.
5
+ * It calls the API at https://api.lmnt.com/v1 and uses the `LMNT_API_KEY` env variable by default.
6
+ */
7
+ export class LmntApiConfiguration extends BaseUrlApiConfigurationWithDefaults {
8
+ constructor(settings = {}) {
5
9
  super({
6
- baseUrl,
10
+ ...settings,
7
11
  headers: {
8
12
  "X-API-Key": loadApiKey({
9
- apiKey,
13
+ apiKey: settings.apiKey,
10
14
  environmentVariableName: "LMNT_API_KEY",
11
15
  description: "LMNT",
12
16
  }),
13
17
  },
14
- retry,
15
- throttle,
18
+ baseUrlDefaults: {
19
+ protocol: "https",
20
+ host: "api.lmnt.com",
21
+ port: "443",
22
+ path: "/v1",
23
+ },
16
24
  });
17
25
  }
18
26
  }
@@ -1,11 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SpeechGenerator = void 0;
3
+ exports.SpeechGenerator = exports.Api = void 0;
4
4
  const LmntSpeechModel_js_1 = require("./LmntSpeechModel.cjs");
5
+ const LmntApiConfiguration_js_1 = require("./LmntApiConfiguration.cjs");
6
+ /**
7
+ * Creates an API configuration for the LMNT API.
8
+ * It calls the API at https://api.lmnt.com/v1 and uses the `LMNT_API_KEY` env variable by default.
9
+ */
10
+ function Api(settings) {
11
+ return new LmntApiConfiguration_js_1.LmntApiConfiguration(settings);
12
+ }
13
+ exports.Api = Api;
5
14
  /**
6
15
  * Synthesize speech using the LMNT API.
7
16
  *
8
- * @see https://www.lmnt.com/docs/rest/#synthesize-speech
17
+ * @see https://docs.lmnt.com/api-reference/speech/synthesize-speech-1
9
18
  *
10
19
  * @returns A new instance of {@link LmntSpeechModel}.
11
20
  */
@@ -1,8 +1,17 @@
1
1
  import { LmntSpeechModel, LmntSpeechModelSettings } from "./LmntSpeechModel.js";
2
+ import { PartialBaseUrlPartsApiConfigurationOptions } from "../../core/api/BaseUrlApiConfiguration.js";
3
+ import { LmntApiConfiguration } from "./LmntApiConfiguration.js";
4
+ /**
5
+ * Creates an API configuration for the LMNT API.
6
+ * It calls the API at https://api.lmnt.com/v1 and uses the `LMNT_API_KEY` env variable by default.
7
+ */
8
+ export declare function Api(settings: PartialBaseUrlPartsApiConfigurationOptions & {
9
+ apiKey?: string;
10
+ }): LmntApiConfiguration;
2
11
  /**
3
12
  * Synthesize speech using the LMNT API.
4
13
  *
5
- * @see https://www.lmnt.com/docs/rest/#synthesize-speech
14
+ * @see https://docs.lmnt.com/api-reference/speech/synthesize-speech-1
6
15
  *
7
16
  * @returns A new instance of {@link LmntSpeechModel}.
8
17
  */
@@ -1,8 +1,16 @@
1
1
  import { LmntSpeechModel } from "./LmntSpeechModel.js";
2
+ import { LmntApiConfiguration } from "./LmntApiConfiguration.js";
3
+ /**
4
+ * Creates an API configuration for the LMNT API.
5
+ * It calls the API at https://api.lmnt.com/v1 and uses the `LMNT_API_KEY` env variable by default.
6
+ */
7
+ export function Api(settings) {
8
+ return new LmntApiConfiguration(settings);
9
+ }
2
10
  /**
3
11
  * Synthesize speech using the LMNT API.
4
12
  *
5
- * @see https://www.lmnt.com/docs/rest/#synthesize-speech
13
+ * @see https://docs.lmnt.com/api-reference/speech/synthesize-speech-1
6
14
  *
7
15
  * @returns A new instance of {@link LmntSpeechModel}.
8
16
  */