modelfusion 0.110.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.
- package/CHANGELOG.md +15 -0
- package/core/api/ApiFacade.cjs +20 -0
- package/core/api/ApiFacade.d.ts +4 -0
- package/core/api/ApiFacade.js +4 -0
- package/core/api/BaseUrlApiConfiguration.cjs +47 -5
- package/core/api/BaseUrlApiConfiguration.d.ts +23 -6
- package/core/api/BaseUrlApiConfiguration.js +45 -4
- package/core/api/BaseUrlApiConfiguration.test.cjs +11 -0
- package/core/api/BaseUrlApiConfiguration.test.d.ts +1 -0
- package/core/api/BaseUrlApiConfiguration.test.js +9 -0
- package/core/api/callWithRetryAndThrottle.cjs +3 -3
- package/core/api/callWithRetryAndThrottle.js +3 -3
- package/core/api/index.cjs +15 -2
- package/core/api/index.d.ts +2 -2
- package/core/api/index.js +2 -2
- package/core/api/postToApi.cjs +28 -5
- package/core/api/postToApi.d.ts +5 -4
- package/core/api/postToApi.js +26 -4
- package/core/api/throttleOff.cjs +8 -0
- package/core/api/throttleOff.d.ts +5 -0
- package/core/api/throttleOff.js +4 -0
- package/internal/index.cjs +2 -8
- package/internal/index.d.ts +1 -1
- package/internal/index.js +1 -1
- package/model-function/generate-structure/generateStructure.d.ts +1 -1
- package/model-provider/anthropic/AnthropicApiConfiguration.cjs +14 -6
- package/model-provider/anthropic/AnthropicApiConfiguration.d.ts +7 -8
- package/model-provider/anthropic/AnthropicApiConfiguration.js +15 -7
- package/model-provider/anthropic/AnthropicError.cjs +7 -27
- package/model-provider/anthropic/AnthropicError.d.ts +21 -16
- package/model-provider/anthropic/AnthropicError.js +7 -25
- package/model-provider/anthropic/AnthropicFacade.cjs +10 -1
- package/model-provider/anthropic/AnthropicFacade.d.ts +9 -0
- package/model-provider/anthropic/AnthropicFacade.js +8 -0
- package/model-provider/anthropic/AnthropicTextGenerationModel.cjs +22 -24
- package/model-provider/anthropic/AnthropicTextGenerationModel.js +23 -25
- package/model-provider/anthropic/index.cjs +1 -4
- package/model-provider/anthropic/index.d.ts +1 -1
- package/model-provider/anthropic/index.js +0 -1
- package/model-provider/automatic1111/Automatic1111ApiConfiguration.cjs +12 -4
- package/model-provider/automatic1111/Automatic1111ApiConfiguration.d.ts +3 -3
- package/model-provider/automatic1111/Automatic1111ApiConfiguration.js +12 -4
- package/model-provider/automatic1111/Automatic1111Error.cjs +3 -3
- package/model-provider/automatic1111/Automatic1111Error.d.ts +13 -3
- package/model-provider/automatic1111/Automatic1111Error.js +4 -4
- package/model-provider/automatic1111/Automatic1111Facade.cjs +9 -9
- package/model-provider/automatic1111/Automatic1111Facade.d.ts +6 -6
- package/model-provider/automatic1111/Automatic1111Facade.js +7 -7
- package/model-provider/automatic1111/Automatic1111ImageGenerationModel.cjs +11 -7
- package/model-provider/automatic1111/Automatic1111ImageGenerationModel.js +11 -7
- package/model-provider/cohere/CohereApiConfiguration.cjs +14 -6
- package/model-provider/cohere/CohereApiConfiguration.d.ts +7 -8
- package/model-provider/cohere/CohereApiConfiguration.js +15 -7
- package/model-provider/cohere/CohereError.cjs +8 -43
- package/model-provider/cohere/CohereError.d.ts +9 -16
- package/model-provider/cohere/CohereError.js +8 -41
- package/model-provider/cohere/CohereFacade.cjs +12 -3
- package/model-provider/cohere/CohereFacade.d.ts +11 -2
- package/model-provider/cohere/CohereFacade.js +10 -2
- package/model-provider/cohere/CohereTextEmbeddingModel.cjs +18 -22
- package/model-provider/cohere/CohereTextEmbeddingModel.js +18 -22
- package/model-provider/cohere/CohereTextGenerationModel.cjs +31 -39
- package/model-provider/cohere/CohereTextGenerationModel.d.ts +110 -8
- package/model-provider/cohere/CohereTextGenerationModel.js +31 -39
- package/model-provider/cohere/CohereTokenizer.cjs +32 -41
- package/model-provider/cohere/CohereTokenizer.d.ts +2 -2
- package/model-provider/cohere/CohereTokenizer.js +32 -41
- package/model-provider/cohere/index.cjs +1 -3
- package/model-provider/cohere/index.d.ts +1 -1
- package/model-provider/cohere/index.js +0 -1
- package/model-provider/elevenlabs/ElevenLabsApiConfiguration.cjs +14 -6
- package/model-provider/elevenlabs/ElevenLabsApiConfiguration.d.ts +7 -8
- package/model-provider/elevenlabs/ElevenLabsApiConfiguration.js +15 -7
- package/model-provider/elevenlabs/ElevenLabsFacade.cjs +10 -1
- package/model-provider/elevenlabs/ElevenLabsFacade.d.ts +9 -0
- package/model-provider/elevenlabs/ElevenLabsFacade.js +8 -0
- package/model-provider/elevenlabs/ElevenLabsSpeechModel.cjs +42 -53
- package/model-provider/elevenlabs/ElevenLabsSpeechModel.js +44 -55
- package/model-provider/huggingface/HuggingFaceApiConfiguration.cjs +14 -6
- package/model-provider/huggingface/HuggingFaceApiConfiguration.d.ts +7 -8
- package/model-provider/huggingface/HuggingFaceApiConfiguration.js +15 -7
- package/model-provider/huggingface/HuggingFaceError.cjs +7 -29
- package/model-provider/huggingface/HuggingFaceError.d.ts +9 -16
- package/model-provider/huggingface/HuggingFaceError.js +7 -27
- package/model-provider/huggingface/HuggingFaceFacade.cjs +10 -1
- package/model-provider/huggingface/HuggingFaceFacade.d.ts +9 -0
- package/model-provider/huggingface/HuggingFaceFacade.js +8 -0
- package/model-provider/huggingface/HuggingFaceTextEmbeddingModel.cjs +17 -27
- package/model-provider/huggingface/HuggingFaceTextEmbeddingModel.js +17 -27
- package/model-provider/huggingface/HuggingFaceTextGenerationModel.cjs +22 -23
- package/model-provider/huggingface/HuggingFaceTextGenerationModel.js +22 -23
- package/model-provider/huggingface/index.cjs +1 -3
- package/model-provider/huggingface/index.d.ts +1 -1
- package/model-provider/huggingface/index.js +0 -1
- package/model-provider/llamacpp/LlamaCppApiConfiguration.cjs +13 -6
- package/model-provider/llamacpp/LlamaCppApiConfiguration.d.ts +7 -9
- package/model-provider/llamacpp/LlamaCppApiConfiguration.js +14 -7
- package/model-provider/llamacpp/LlamaCppCompletionModel.cjs +4 -4
- package/model-provider/llamacpp/LlamaCppCompletionModel.d.ts +173 -5
- package/model-provider/llamacpp/LlamaCppCompletionModel.js +4 -4
- package/model-provider/llamacpp/LlamaCppError.cjs +7 -27
- package/model-provider/llamacpp/LlamaCppError.d.ts +9 -16
- package/model-provider/llamacpp/LlamaCppError.js +7 -25
- package/model-provider/llamacpp/LlamaCppFacade.cjs +10 -2
- package/model-provider/llamacpp/LlamaCppFacade.d.ts +8 -1
- package/model-provider/llamacpp/LlamaCppFacade.js +8 -1
- package/model-provider/llamacpp/LlamaCppTextEmbeddingModel.cjs +10 -14
- package/model-provider/llamacpp/LlamaCppTextEmbeddingModel.js +10 -14
- package/model-provider/llamacpp/LlamaCppTokenizer.cjs +14 -18
- package/model-provider/llamacpp/LlamaCppTokenizer.js +14 -18
- package/model-provider/llamacpp/index.cjs +1 -3
- package/model-provider/llamacpp/index.d.ts +1 -1
- package/model-provider/llamacpp/index.js +0 -1
- package/model-provider/lmnt/LmntApiConfiguration.cjs +14 -6
- package/model-provider/lmnt/LmntApiConfiguration.d.ts +7 -8
- package/model-provider/lmnt/LmntApiConfiguration.js +15 -7
- package/model-provider/lmnt/LmntFacade.cjs +11 -2
- package/model-provider/lmnt/LmntFacade.d.ts +10 -1
- package/model-provider/lmnt/LmntFacade.js +9 -1
- package/model-provider/lmnt/LmntSpeechModel.cjs +53 -41
- package/model-provider/lmnt/LmntSpeechModel.d.ts +51 -3
- package/model-provider/lmnt/LmntSpeechModel.js +54 -42
- package/model-provider/mistral/MistralApiConfiguration.cjs +14 -6
- package/model-provider/mistral/MistralApiConfiguration.d.ts +9 -11
- package/model-provider/mistral/MistralApiConfiguration.js +15 -7
- package/model-provider/mistral/MistralChatModel.cjs +4 -4
- package/model-provider/mistral/MistralChatModel.d.ts +48 -3
- package/model-provider/mistral/MistralChatModel.js +5 -5
- package/model-provider/mistral/MistralError.cjs +3 -3
- package/model-provider/mistral/MistralError.d.ts +15 -3
- package/model-provider/mistral/MistralError.js +4 -4
- package/model-provider/mistral/MistralFacade.cjs +5 -1
- package/model-provider/mistral/MistralFacade.d.ts +10 -3
- package/model-provider/mistral/MistralFacade.js +6 -2
- package/model-provider/mistral/MistralTextEmbeddingModel.cjs +2 -1
- package/model-provider/mistral/MistralTextEmbeddingModel.js +2 -1
- package/model-provider/ollama/OllamaApiConfiguration.cjs +13 -6
- package/model-provider/ollama/OllamaApiConfiguration.d.ts +7 -10
- package/model-provider/ollama/OllamaApiConfiguration.js +14 -7
- package/model-provider/ollama/OllamaChatModel.cjs +4 -4
- package/model-provider/ollama/OllamaChatModel.d.ts +46 -5
- package/model-provider/ollama/OllamaChatModel.js +5 -5
- package/model-provider/ollama/OllamaCompletionModel.cjs +4 -4
- package/model-provider/ollama/OllamaCompletionModel.d.ts +40 -5
- package/model-provider/ollama/OllamaCompletionModel.js +5 -5
- package/model-provider/ollama/OllamaError.cjs +3 -3
- package/model-provider/ollama/OllamaError.d.ts +7 -3
- package/model-provider/ollama/OllamaError.js +4 -4
- package/model-provider/ollama/OllamaFacade.cjs +6 -2
- package/model-provider/ollama/OllamaFacade.d.ts +8 -3
- package/model-provider/ollama/OllamaFacade.js +6 -2
- package/model-provider/ollama/OllamaTextEmbeddingModel.cjs +15 -16
- package/model-provider/ollama/OllamaTextEmbeddingModel.js +15 -16
- package/model-provider/openai/AbstractOpenAIChatModel.cjs +4 -4
- package/model-provider/openai/AbstractOpenAIChatModel.d.ts +148 -2
- package/model-provider/openai/AbstractOpenAIChatModel.js +4 -4
- package/model-provider/openai/AbstractOpenAICompletionModel.cjs +30 -32
- package/model-provider/openai/AbstractOpenAICompletionModel.js +30 -32
- package/model-provider/openai/AzureOpenAIApiConfiguration.d.ts +9 -8
- package/model-provider/openai/OpenAIApiConfiguration.cjs +14 -6
- package/model-provider/openai/OpenAIApiConfiguration.d.ts +7 -8
- package/model-provider/openai/OpenAIApiConfiguration.js +15 -7
- package/model-provider/openai/OpenAIError.cjs +8 -8
- package/model-provider/openai/OpenAIError.d.ts +27 -3
- package/model-provider/openai/OpenAIError.js +9 -9
- package/model-provider/openai/OpenAIFacade.cjs +23 -2
- package/model-provider/openai/OpenAIFacade.d.ts +20 -2
- package/model-provider/openai/OpenAIFacade.js +20 -1
- package/model-provider/openai/OpenAIImageGenerationModel.cjs +20 -21
- package/model-provider/openai/OpenAIImageGenerationModel.js +20 -21
- package/model-provider/openai/OpenAISpeechModel.cjs +17 -22
- package/model-provider/openai/OpenAISpeechModel.js +17 -22
- package/model-provider/openai/OpenAITextEmbeddingModel.cjs +18 -23
- package/model-provider/openai/OpenAITextEmbeddingModel.js +18 -23
- package/model-provider/openai/OpenAITranscriptionModel.cjs +42 -48
- package/model-provider/openai/OpenAITranscriptionModel.d.ts +14 -10
- package/model-provider/openai/OpenAITranscriptionModel.js +42 -48
- package/model-provider/openai-compatible/FireworksAIApiConfiguration.cjs +11 -7
- package/model-provider/openai-compatible/FireworksAIApiConfiguration.d.ts +4 -9
- package/model-provider/openai-compatible/FireworksAIApiConfiguration.js +12 -8
- package/model-provider/openai-compatible/OpenAICompatibleFacade.cjs +25 -1
- package/model-provider/openai-compatible/OpenAICompatibleFacade.d.ts +23 -0
- package/model-provider/openai-compatible/OpenAICompatibleFacade.js +22 -0
- package/model-provider/openai-compatible/TogetherAIApiConfiguration.cjs +11 -7
- package/model-provider/openai-compatible/TogetherAIApiConfiguration.d.ts +4 -9
- package/model-provider/openai-compatible/TogetherAIApiConfiguration.js +12 -8
- package/model-provider/stability/StabilityApiConfiguration.cjs +13 -12
- package/model-provider/stability/StabilityApiConfiguration.d.ts +4 -4
- package/model-provider/stability/StabilityApiConfiguration.js +13 -12
- package/model-provider/stability/StabilityError.cjs +3 -3
- package/model-provider/stability/StabilityError.d.ts +7 -3
- package/model-provider/stability/StabilityError.js +4 -4
- package/model-provider/stability/StabilityFacade.cjs +9 -9
- package/model-provider/stability/StabilityFacade.d.ts +8 -8
- package/model-provider/stability/StabilityFacade.js +7 -7
- package/model-provider/stability/StabilityImageGenerationModel.cjs +2 -1
- package/model-provider/stability/StabilityImageGenerationModel.js +2 -1
- package/model-provider/whispercpp/WhisperCppApiConfiguration.cjs +13 -6
- package/model-provider/whispercpp/WhisperCppApiConfiguration.d.ts +7 -10
- package/model-provider/whispercpp/WhisperCppApiConfiguration.js +14 -7
- package/model-provider/whispercpp/WhisperCppFacade.cjs +9 -5
- package/model-provider/whispercpp/WhisperCppFacade.d.ts +7 -2
- package/model-provider/whispercpp/WhisperCppFacade.js +8 -4
- package/model-provider/whispercpp/WhisperCppTranscriptionModel.cjs +5 -2
- package/model-provider/whispercpp/WhisperCppTranscriptionModel.js +6 -3
- package/package.json +1 -1
- package/tool/WebSearchTool.cjs +2 -2
- package/tool/WebSearchTool.d.ts +1 -2
- package/tool/WebSearchTool.js +3 -3
- package/vector-index/memory/MemoryVectorIndex.cjs +2 -2
- package/vector-index/memory/MemoryVectorIndex.js +3 -3
- package/core/api/BaseUrlPartsApiConfiguration.cjs +0 -53
- package/core/api/BaseUrlPartsApiConfiguration.d.ts +0 -26
- package/core/api/BaseUrlPartsApiConfiguration.js +0 -49
- package/core/api/throttleUnlimitedConcurrency.cjs +0 -8
- package/core/api/throttleUnlimitedConcurrency.d.ts +0 -5
- package/core/api/throttleUnlimitedConcurrency.js +0 -4
- package/model-provider/elevenlabs/ElevenLabsError.cjs +0 -30
- package/model-provider/elevenlabs/ElevenLabsError.d.ts +0 -3
- package/model-provider/elevenlabs/ElevenLabsError.js +0 -26
- package/model-provider/lmnt/LmntError.cjs +0 -30
- package/model-provider/lmnt/LmntError.d.ts +0 -3
- package/model-provider/lmnt/LmntError.js +0 -26
@@ -16,16 +16,10 @@ const CohereError_js_1 = require("./CohereError.cjs");
|
|
16
16
|
const CohereTokenizer_js_1 = require("./CohereTokenizer.cjs");
|
17
17
|
exports.COHERE_TEXT_GENERATION_MODELS = {
|
18
18
|
command: {
|
19
|
-
contextWindowSize:
|
20
|
-
},
|
21
|
-
"command-nightly": {
|
22
|
-
contextWindowSize: 2048,
|
19
|
+
contextWindowSize: 4096,
|
23
20
|
},
|
24
21
|
"command-light": {
|
25
|
-
contextWindowSize:
|
26
|
-
},
|
27
|
-
"command-light-nightly": {
|
28
|
-
contextWindowSize: 2048,
|
22
|
+
contextWindowSize: 4096,
|
29
23
|
},
|
30
24
|
};
|
31
25
|
/**
|
@@ -35,7 +29,7 @@ exports.COHERE_TEXT_GENERATION_MODELS = {
|
|
35
29
|
*
|
36
30
|
* @example
|
37
31
|
* const model = new CohereTextGenerationModel({
|
38
|
-
* model: "command
|
32
|
+
* model: "command",
|
39
33
|
* temperature: 0.7,
|
40
34
|
* maxGenerationTokens: 500,
|
41
35
|
* });
|
@@ -86,32 +80,30 @@ class CohereTextGenerationModel extends AbstractModel_js_1.AbstractModel {
|
|
86
80
|
return (0, callWithRetryAndThrottle_js_1.callWithRetryAndThrottle)({
|
87
81
|
retry: api.retry,
|
88
82
|
throttle: api.throttle,
|
89
|
-
call: async () => {
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
});
|
114
|
-
},
|
83
|
+
call: async () => (0, postToApi_js_1.postJsonToApi)({
|
84
|
+
url: api.assembleUrl(`/generate`),
|
85
|
+
headers: api.headers,
|
86
|
+
body: {
|
87
|
+
stream: responseFormat.stream,
|
88
|
+
model: this.settings.model,
|
89
|
+
prompt,
|
90
|
+
num_generations: this.settings.numberOfGenerations,
|
91
|
+
max_tokens: this.settings.maxGenerationTokens,
|
92
|
+
temperature: this.settings.temperature,
|
93
|
+
k: this.settings.k,
|
94
|
+
p: this.settings.p,
|
95
|
+
frequency_penalty: this.settings.frequencyPenalty,
|
96
|
+
presence_penalty: this.settings.presencePenalty,
|
97
|
+
end_sequences: this.settings.stopSequences,
|
98
|
+
stop_sequences: this.settings.cohereStopSequences,
|
99
|
+
return_likelihoods: this.settings.returnLikelihoods,
|
100
|
+
logit_bias: this.settings.logitBias,
|
101
|
+
truncate: this.settings.truncate,
|
102
|
+
},
|
103
|
+
failedResponseHandler: CohereError_js_1.failedCohereCallResponseHandler,
|
104
|
+
successfulResponseHandler: responseFormat.handler,
|
105
|
+
abortSignal,
|
106
|
+
}),
|
115
107
|
});
|
116
108
|
}
|
117
109
|
get settingsForEvent() {
|
@@ -210,7 +202,7 @@ const cohereTextGenerationResponseSchema = zod_1.z.object({
|
|
210
202
|
})
|
211
203
|
.optional(),
|
212
204
|
});
|
213
|
-
const cohereTextStreamChunkSchema =
|
205
|
+
const cohereTextStreamChunkSchema = zod_1.z.discriminatedUnion("is_finished", [
|
214
206
|
zod_1.z.object({
|
215
207
|
text: zod_1.z.string(),
|
216
208
|
is_finished: zod_1.z.literal(false),
|
@@ -220,14 +212,14 @@ const cohereTextStreamChunkSchema = (0, ZodSchema_js_1.zodSchema)(zod_1.z.discri
|
|
220
212
|
finish_reason: zod_1.z.string(),
|
221
213
|
response: cohereTextGenerationResponseSchema,
|
222
214
|
}),
|
223
|
-
])
|
215
|
+
]);
|
224
216
|
exports.CohereTextGenerationResponseFormat = {
|
225
217
|
/**
|
226
218
|
* Returns the response as a JSON object.
|
227
219
|
*/
|
228
220
|
json: {
|
229
221
|
stream: false,
|
230
|
-
handler: (0, postToApi_js_1.createJsonResponseHandler)(cohereTextGenerationResponseSchema),
|
222
|
+
handler: (0, postToApi_js_1.createJsonResponseHandler)((0, ZodSchema_js_1.zodSchema)(cohereTextGenerationResponseSchema)),
|
231
223
|
},
|
232
224
|
/**
|
233
225
|
* Returns an async iterable over the full deltas (all choices, including full current state at time of event)
|
@@ -235,6 +227,6 @@ exports.CohereTextGenerationResponseFormat = {
|
|
235
227
|
*/
|
236
228
|
deltaIterable: {
|
237
229
|
stream: true,
|
238
|
-
handler: (0, createJsonStreamResponseHandler_js_1.createJsonStreamResponseHandler)(cohereTextStreamChunkSchema),
|
230
|
+
handler: (0, createJsonStreamResponseHandler_js_1.createJsonStreamResponseHandler)((0, ZodSchema_js_1.zodSchema)(cohereTextStreamChunkSchema)),
|
239
231
|
},
|
240
232
|
};
|
@@ -12,15 +12,9 @@ export declare const COHERE_TEXT_GENERATION_MODELS: {
|
|
12
12
|
command: {
|
13
13
|
contextWindowSize: number;
|
14
14
|
};
|
15
|
-
"command-nightly": {
|
16
|
-
contextWindowSize: number;
|
17
|
-
};
|
18
15
|
"command-light": {
|
19
16
|
contextWindowSize: number;
|
20
17
|
};
|
21
|
-
"command-light-nightly": {
|
22
|
-
contextWindowSize: number;
|
23
|
-
};
|
24
18
|
};
|
25
19
|
export type CohereTextGenerationModelType = keyof typeof COHERE_TEXT_GENERATION_MODELS;
|
26
20
|
export interface CohereTextGenerationModelSettings extends TextGenerationModelSettings {
|
@@ -43,7 +37,7 @@ export interface CohereTextGenerationModelSettings extends TextGenerationModelSe
|
|
43
37
|
*
|
44
38
|
* @example
|
45
39
|
* const model = new CohereTextGenerationModel({
|
46
|
-
* model: "command
|
40
|
+
* model: "command",
|
47
41
|
* temperature: 0.7,
|
48
42
|
* maxGenerationTokens: 500,
|
49
43
|
* });
|
@@ -56,7 +50,7 @@ export interface CohereTextGenerationModelSettings extends TextGenerationModelSe
|
|
56
50
|
export declare class CohereTextGenerationModel extends AbstractModel<CohereTextGenerationModelSettings> implements TextStreamingModel<string, CohereTextGenerationModelSettings> {
|
57
51
|
constructor(settings: CohereTextGenerationModelSettings);
|
58
52
|
readonly provider: "cohere";
|
59
|
-
get modelName(): "command" | "command-
|
53
|
+
get modelName(): "command" | "command-light";
|
60
54
|
readonly contextWindowSize: number;
|
61
55
|
readonly tokenizer: CohereTokenizer;
|
62
56
|
countPromptTokens(input: string): Promise<number>;
|
@@ -182,6 +176,114 @@ declare const cohereTextGenerationResponseSchema: z.ZodObject<{
|
|
182
176
|
} | undefined;
|
183
177
|
}>;
|
184
178
|
export type CohereTextGenerationResponse = z.infer<typeof cohereTextGenerationResponseSchema>;
|
179
|
+
declare const cohereTextStreamChunkSchema: z.ZodDiscriminatedUnion<"is_finished", [z.ZodObject<{
|
180
|
+
text: z.ZodString;
|
181
|
+
is_finished: z.ZodLiteral<false>;
|
182
|
+
}, "strip", z.ZodTypeAny, {
|
183
|
+
text: string;
|
184
|
+
is_finished: false;
|
185
|
+
}, {
|
186
|
+
text: string;
|
187
|
+
is_finished: false;
|
188
|
+
}>, z.ZodObject<{
|
189
|
+
is_finished: z.ZodLiteral<true>;
|
190
|
+
finish_reason: z.ZodString;
|
191
|
+
response: z.ZodObject<{
|
192
|
+
id: z.ZodString;
|
193
|
+
generations: z.ZodArray<z.ZodObject<{
|
194
|
+
id: z.ZodString;
|
195
|
+
text: z.ZodString;
|
196
|
+
finish_reason: z.ZodOptional<z.ZodString>;
|
197
|
+
}, "strip", z.ZodTypeAny, {
|
198
|
+
text: string;
|
199
|
+
id: string;
|
200
|
+
finish_reason?: string | undefined;
|
201
|
+
}, {
|
202
|
+
text: string;
|
203
|
+
id: string;
|
204
|
+
finish_reason?: string | undefined;
|
205
|
+
}>, "many">;
|
206
|
+
prompt: z.ZodString;
|
207
|
+
meta: z.ZodOptional<z.ZodObject<{
|
208
|
+
api_version: z.ZodObject<{
|
209
|
+
version: z.ZodString;
|
210
|
+
}, "strip", z.ZodTypeAny, {
|
211
|
+
version: string;
|
212
|
+
}, {
|
213
|
+
version: string;
|
214
|
+
}>;
|
215
|
+
}, "strip", z.ZodTypeAny, {
|
216
|
+
api_version: {
|
217
|
+
version: string;
|
218
|
+
};
|
219
|
+
}, {
|
220
|
+
api_version: {
|
221
|
+
version: string;
|
222
|
+
};
|
223
|
+
}>>;
|
224
|
+
}, "strip", z.ZodTypeAny, {
|
225
|
+
id: string;
|
226
|
+
prompt: string;
|
227
|
+
generations: {
|
228
|
+
text: string;
|
229
|
+
id: string;
|
230
|
+
finish_reason?: string | undefined;
|
231
|
+
}[];
|
232
|
+
meta?: {
|
233
|
+
api_version: {
|
234
|
+
version: string;
|
235
|
+
};
|
236
|
+
} | undefined;
|
237
|
+
}, {
|
238
|
+
id: string;
|
239
|
+
prompt: string;
|
240
|
+
generations: {
|
241
|
+
text: string;
|
242
|
+
id: string;
|
243
|
+
finish_reason?: string | undefined;
|
244
|
+
}[];
|
245
|
+
meta?: {
|
246
|
+
api_version: {
|
247
|
+
version: string;
|
248
|
+
};
|
249
|
+
} | undefined;
|
250
|
+
}>;
|
251
|
+
}, "strip", z.ZodTypeAny, {
|
252
|
+
response: {
|
253
|
+
id: string;
|
254
|
+
prompt: string;
|
255
|
+
generations: {
|
256
|
+
text: string;
|
257
|
+
id: string;
|
258
|
+
finish_reason?: string | undefined;
|
259
|
+
}[];
|
260
|
+
meta?: {
|
261
|
+
api_version: {
|
262
|
+
version: string;
|
263
|
+
};
|
264
|
+
} | undefined;
|
265
|
+
};
|
266
|
+
finish_reason: string;
|
267
|
+
is_finished: true;
|
268
|
+
}, {
|
269
|
+
response: {
|
270
|
+
id: string;
|
271
|
+
prompt: string;
|
272
|
+
generations: {
|
273
|
+
text: string;
|
274
|
+
id: string;
|
275
|
+
finish_reason?: string | undefined;
|
276
|
+
}[];
|
277
|
+
meta?: {
|
278
|
+
api_version: {
|
279
|
+
version: string;
|
280
|
+
};
|
281
|
+
} | undefined;
|
282
|
+
};
|
283
|
+
finish_reason: string;
|
284
|
+
is_finished: true;
|
285
|
+
}>]>;
|
286
|
+
export type CohereTextStreamChunk = z.infer<typeof cohereTextStreamChunkSchema>;
|
185
287
|
export type CohereTextGenerationResponseFormatType<T> = {
|
186
288
|
stream: boolean;
|
187
289
|
handler: ResponseHandler<T>;
|
@@ -13,16 +13,10 @@ import { failedCohereCallResponseHandler } from "./CohereError.js";
|
|
13
13
|
import { CohereTokenizer } from "./CohereTokenizer.js";
|
14
14
|
export const COHERE_TEXT_GENERATION_MODELS = {
|
15
15
|
command: {
|
16
|
-
contextWindowSize:
|
17
|
-
},
|
18
|
-
"command-nightly": {
|
19
|
-
contextWindowSize: 2048,
|
16
|
+
contextWindowSize: 4096,
|
20
17
|
},
|
21
18
|
"command-light": {
|
22
|
-
contextWindowSize:
|
23
|
-
},
|
24
|
-
"command-light-nightly": {
|
25
|
-
contextWindowSize: 2048,
|
19
|
+
contextWindowSize: 4096,
|
26
20
|
},
|
27
21
|
};
|
28
22
|
/**
|
@@ -32,7 +26,7 @@ export const COHERE_TEXT_GENERATION_MODELS = {
|
|
32
26
|
*
|
33
27
|
* @example
|
34
28
|
* const model = new CohereTextGenerationModel({
|
35
|
-
* model: "command
|
29
|
+
* model: "command",
|
36
30
|
* temperature: 0.7,
|
37
31
|
* maxGenerationTokens: 500,
|
38
32
|
* });
|
@@ -83,32 +77,30 @@ export class CohereTextGenerationModel extends AbstractModel {
|
|
83
77
|
return callWithRetryAndThrottle({
|
84
78
|
retry: api.retry,
|
85
79
|
throttle: api.throttle,
|
86
|
-
call: async () => {
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
});
|
111
|
-
},
|
80
|
+
call: async () => postJsonToApi({
|
81
|
+
url: api.assembleUrl(`/generate`),
|
82
|
+
headers: api.headers,
|
83
|
+
body: {
|
84
|
+
stream: responseFormat.stream,
|
85
|
+
model: this.settings.model,
|
86
|
+
prompt,
|
87
|
+
num_generations: this.settings.numberOfGenerations,
|
88
|
+
max_tokens: this.settings.maxGenerationTokens,
|
89
|
+
temperature: this.settings.temperature,
|
90
|
+
k: this.settings.k,
|
91
|
+
p: this.settings.p,
|
92
|
+
frequency_penalty: this.settings.frequencyPenalty,
|
93
|
+
presence_penalty: this.settings.presencePenalty,
|
94
|
+
end_sequences: this.settings.stopSequences,
|
95
|
+
stop_sequences: this.settings.cohereStopSequences,
|
96
|
+
return_likelihoods: this.settings.returnLikelihoods,
|
97
|
+
logit_bias: this.settings.logitBias,
|
98
|
+
truncate: this.settings.truncate,
|
99
|
+
},
|
100
|
+
failedResponseHandler: failedCohereCallResponseHandler,
|
101
|
+
successfulResponseHandler: responseFormat.handler,
|
102
|
+
abortSignal,
|
103
|
+
}),
|
112
104
|
});
|
113
105
|
}
|
114
106
|
get settingsForEvent() {
|
@@ -206,7 +198,7 @@ const cohereTextGenerationResponseSchema = z.object({
|
|
206
198
|
})
|
207
199
|
.optional(),
|
208
200
|
});
|
209
|
-
const cohereTextStreamChunkSchema =
|
201
|
+
const cohereTextStreamChunkSchema = z.discriminatedUnion("is_finished", [
|
210
202
|
z.object({
|
211
203
|
text: z.string(),
|
212
204
|
is_finished: z.literal(false),
|
@@ -216,14 +208,14 @@ const cohereTextStreamChunkSchema = zodSchema(z.discriminatedUnion("is_finished"
|
|
216
208
|
finish_reason: z.string(),
|
217
209
|
response: cohereTextGenerationResponseSchema,
|
218
210
|
}),
|
219
|
-
])
|
211
|
+
]);
|
220
212
|
export const CohereTextGenerationResponseFormat = {
|
221
213
|
/**
|
222
214
|
* Returns the response as a JSON object.
|
223
215
|
*/
|
224
216
|
json: {
|
225
217
|
stream: false,
|
226
|
-
handler: createJsonResponseHandler(cohereTextGenerationResponseSchema),
|
218
|
+
handler: createJsonResponseHandler(zodSchema(cohereTextGenerationResponseSchema)),
|
227
219
|
},
|
228
220
|
/**
|
229
221
|
* Returns an async iterable over the full deltas (all choices, including full current state at time of event)
|
@@ -231,6 +223,6 @@ export const CohereTextGenerationResponseFormat = {
|
|
231
223
|
*/
|
232
224
|
deltaIterable: {
|
233
225
|
stream: true,
|
234
|
-
handler: createJsonStreamResponseHandler(cohereTextStreamChunkSchema),
|
226
|
+
handler: createJsonStreamResponseHandler(zodSchema(cohereTextStreamChunkSchema)),
|
235
227
|
},
|
236
228
|
};
|
@@ -4,16 +4,17 @@ exports.CohereTokenizer = 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
|
7
|
+
const ZodSchema_js_1 = require("../../core/schema/ZodSchema.cjs");
|
8
8
|
const CohereApiConfiguration_js_1 = require("./CohereApiConfiguration.cjs");
|
9
|
+
const CohereError_js_1 = require("./CohereError.cjs");
|
9
10
|
/**
|
10
11
|
* Tokenizer for the Cohere models. It uses the Co.Tokenize and Co.Detokenize APIs.
|
11
12
|
*
|
12
13
|
* @see https://docs.cohere.com/reference/tokenize
|
13
|
-
* @see https://docs.cohere.com/reference/detokenize
|
14
|
+
* @see https://docs.cohere.com/reference/detokenize
|
14
15
|
*
|
15
16
|
* @example
|
16
|
-
* const tokenizer = new CohereTokenizer({ model: "command
|
17
|
+
* const tokenizer = new CohereTokenizer({ model: "command" });
|
17
18
|
*
|
18
19
|
* const text = "At first, Nox didn't know what to do with the pup.";
|
19
20
|
*
|
@@ -33,24 +34,40 @@ class CohereTokenizer {
|
|
33
34
|
this.settings = settings;
|
34
35
|
}
|
35
36
|
async callTokenizeAPI(text, context) {
|
37
|
+
const api = this.settings.api ?? new CohereApiConfiguration_js_1.CohereApiConfiguration();
|
38
|
+
const abortSignal = context?.abortSignal;
|
36
39
|
return (0, callWithRetryAndThrottle_js_1.callWithRetryAndThrottle)({
|
37
|
-
retry:
|
38
|
-
throttle:
|
39
|
-
call: async () =>
|
40
|
-
|
41
|
-
|
42
|
-
|
40
|
+
retry: api.retry,
|
41
|
+
throttle: api.throttle,
|
42
|
+
call: async () => (0, postToApi_js_1.postJsonToApi)({
|
43
|
+
url: api.assembleUrl(`/tokenize`),
|
44
|
+
headers: api.headers,
|
45
|
+
body: {
|
46
|
+
model: this.settings.model,
|
47
|
+
text,
|
48
|
+
},
|
49
|
+
failedResponseHandler: CohereError_js_1.failedCohereCallResponseHandler,
|
50
|
+
successfulResponseHandler: (0, postToApi_js_1.createJsonResponseHandler)((0, ZodSchema_js_1.zodSchema)(cohereTokenizationResponseSchema)),
|
51
|
+
abortSignal,
|
43
52
|
}),
|
44
53
|
});
|
45
54
|
}
|
46
55
|
async callDeTokenizeAPI(tokens, context) {
|
56
|
+
const api = this.settings.api ?? new CohereApiConfiguration_js_1.CohereApiConfiguration();
|
57
|
+
const abortSignal = context?.abortSignal;
|
47
58
|
return (0, callWithRetryAndThrottle_js_1.callWithRetryAndThrottle)({
|
48
|
-
retry:
|
49
|
-
throttle:
|
50
|
-
call: async () =>
|
51
|
-
|
52
|
-
|
53
|
-
|
59
|
+
retry: api.retry,
|
60
|
+
throttle: api.throttle,
|
61
|
+
call: async () => (0, postToApi_js_1.postJsonToApi)({
|
62
|
+
url: api.assembleUrl(`/detokenize`),
|
63
|
+
headers: api.headers,
|
64
|
+
body: {
|
65
|
+
model: this.settings.model,
|
66
|
+
tokens,
|
67
|
+
},
|
68
|
+
failedResponseHandler: CohereError_js_1.failedCohereCallResponseHandler,
|
69
|
+
successfulResponseHandler: (0, postToApi_js_1.createJsonResponseHandler)((0, ZodSchema_js_1.zodSchema)(cohereDetokenizationResponseSchema)),
|
70
|
+
abortSignal,
|
54
71
|
}),
|
55
72
|
});
|
56
73
|
}
|
@@ -78,19 +95,6 @@ const cohereDetokenizationResponseSchema = zod_1.z.object({
|
|
78
95
|
}),
|
79
96
|
}),
|
80
97
|
});
|
81
|
-
async function callCohereDetokenizeAPI({ api = new CohereApiConfiguration_js_1.CohereApiConfiguration(), abortSignal, model, tokens, }) {
|
82
|
-
return (0, postToApi_js_1.postJsonToApi)({
|
83
|
-
url: api.assembleUrl(`/detokenize`),
|
84
|
-
headers: api.headers,
|
85
|
-
body: {
|
86
|
-
model,
|
87
|
-
tokens,
|
88
|
-
},
|
89
|
-
failedResponseHandler: CohereError_js_1.failedCohereCallResponseHandler,
|
90
|
-
successfulResponseHandler: (0, postToApi_js_1.createJsonResponseHandler)(cohereDetokenizationResponseSchema),
|
91
|
-
abortSignal,
|
92
|
-
});
|
93
|
-
}
|
94
98
|
const cohereTokenizationResponseSchema = zod_1.z.object({
|
95
99
|
tokens: zod_1.z.array(zod_1.z.number()),
|
96
100
|
token_strings: zod_1.z.array(zod_1.z.string()),
|
@@ -100,16 +104,3 @@ const cohereTokenizationResponseSchema = zod_1.z.object({
|
|
100
104
|
}),
|
101
105
|
}),
|
102
106
|
});
|
103
|
-
async function callCohereTokenizeAPI({ api = new CohereApiConfiguration_js_1.CohereApiConfiguration(), abortSignal, model, text, }) {
|
104
|
-
return (0, postToApi_js_1.postJsonToApi)({
|
105
|
-
url: api.assembleUrl(`/tokenize`),
|
106
|
-
headers: api.headers,
|
107
|
-
body: {
|
108
|
-
model,
|
109
|
-
text,
|
110
|
-
},
|
111
|
-
failedResponseHandler: CohereError_js_1.failedCohereCallResponseHandler,
|
112
|
-
successfulResponseHandler: (0, postToApi_js_1.createJsonResponseHandler)(cohereTokenizationResponseSchema),
|
113
|
-
abortSignal,
|
114
|
-
});
|
115
|
-
}
|
@@ -13,10 +13,10 @@ export interface CohereTokenizerSettings {
|
|
13
13
|
* Tokenizer for the Cohere models. It uses the Co.Tokenize and Co.Detokenize APIs.
|
14
14
|
*
|
15
15
|
* @see https://docs.cohere.com/reference/tokenize
|
16
|
-
* @see https://docs.cohere.com/reference/detokenize
|
16
|
+
* @see https://docs.cohere.com/reference/detokenize
|
17
17
|
*
|
18
18
|
* @example
|
19
|
-
* const tokenizer = new CohereTokenizer({ model: "command
|
19
|
+
* const tokenizer = new CohereTokenizer({ model: "command" });
|
20
20
|
*
|
21
21
|
* const text = "At first, Nox didn't know what to do with the pup.";
|
22
22
|
*
|
@@ -1,16 +1,17 @@
|
|
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 {
|
4
|
+
import { zodSchema } from "../../core/schema/ZodSchema.js";
|
5
5
|
import { CohereApiConfiguration } from "./CohereApiConfiguration.js";
|
6
|
+
import { failedCohereCallResponseHandler } from "./CohereError.js";
|
6
7
|
/**
|
7
8
|
* Tokenizer for the Cohere models. It uses the Co.Tokenize and Co.Detokenize APIs.
|
8
9
|
*
|
9
10
|
* @see https://docs.cohere.com/reference/tokenize
|
10
|
-
* @see https://docs.cohere.com/reference/detokenize
|
11
|
+
* @see https://docs.cohere.com/reference/detokenize
|
11
12
|
*
|
12
13
|
* @example
|
13
|
-
* const tokenizer = new CohereTokenizer({ model: "command
|
14
|
+
* const tokenizer = new CohereTokenizer({ model: "command" });
|
14
15
|
*
|
15
16
|
* const text = "At first, Nox didn't know what to do with the pup.";
|
16
17
|
*
|
@@ -30,24 +31,40 @@ export class CohereTokenizer {
|
|
30
31
|
this.settings = settings;
|
31
32
|
}
|
32
33
|
async callTokenizeAPI(text, context) {
|
34
|
+
const api = this.settings.api ?? new CohereApiConfiguration();
|
35
|
+
const abortSignal = context?.abortSignal;
|
33
36
|
return callWithRetryAndThrottle({
|
34
|
-
retry:
|
35
|
-
throttle:
|
36
|
-
call: async () =>
|
37
|
-
|
38
|
-
|
39
|
-
|
37
|
+
retry: api.retry,
|
38
|
+
throttle: api.throttle,
|
39
|
+
call: async () => postJsonToApi({
|
40
|
+
url: api.assembleUrl(`/tokenize`),
|
41
|
+
headers: api.headers,
|
42
|
+
body: {
|
43
|
+
model: this.settings.model,
|
44
|
+
text,
|
45
|
+
},
|
46
|
+
failedResponseHandler: failedCohereCallResponseHandler,
|
47
|
+
successfulResponseHandler: createJsonResponseHandler(zodSchema(cohereTokenizationResponseSchema)),
|
48
|
+
abortSignal,
|
40
49
|
}),
|
41
50
|
});
|
42
51
|
}
|
43
52
|
async callDeTokenizeAPI(tokens, context) {
|
53
|
+
const api = this.settings.api ?? new CohereApiConfiguration();
|
54
|
+
const abortSignal = context?.abortSignal;
|
44
55
|
return callWithRetryAndThrottle({
|
45
|
-
retry:
|
46
|
-
throttle:
|
47
|
-
call: async () =>
|
48
|
-
|
49
|
-
|
50
|
-
|
56
|
+
retry: api.retry,
|
57
|
+
throttle: api.throttle,
|
58
|
+
call: async () => postJsonToApi({
|
59
|
+
url: api.assembleUrl(`/detokenize`),
|
60
|
+
headers: api.headers,
|
61
|
+
body: {
|
62
|
+
model: this.settings.model,
|
63
|
+
tokens,
|
64
|
+
},
|
65
|
+
failedResponseHandler: failedCohereCallResponseHandler,
|
66
|
+
successfulResponseHandler: createJsonResponseHandler(zodSchema(cohereDetokenizationResponseSchema)),
|
67
|
+
abortSignal,
|
51
68
|
}),
|
52
69
|
});
|
53
70
|
}
|
@@ -74,19 +91,6 @@ const cohereDetokenizationResponseSchema = z.object({
|
|
74
91
|
}),
|
75
92
|
}),
|
76
93
|
});
|
77
|
-
async function callCohereDetokenizeAPI({ api = new CohereApiConfiguration(), abortSignal, model, tokens, }) {
|
78
|
-
return postJsonToApi({
|
79
|
-
url: api.assembleUrl(`/detokenize`),
|
80
|
-
headers: api.headers,
|
81
|
-
body: {
|
82
|
-
model,
|
83
|
-
tokens,
|
84
|
-
},
|
85
|
-
failedResponseHandler: failedCohereCallResponseHandler,
|
86
|
-
successfulResponseHandler: createJsonResponseHandler(cohereDetokenizationResponseSchema),
|
87
|
-
abortSignal,
|
88
|
-
});
|
89
|
-
}
|
90
94
|
const cohereTokenizationResponseSchema = z.object({
|
91
95
|
tokens: z.array(z.number()),
|
92
96
|
token_strings: z.array(z.string()),
|
@@ -96,16 +100,3 @@ const cohereTokenizationResponseSchema = z.object({
|
|
96
100
|
}),
|
97
101
|
}),
|
98
102
|
});
|
99
|
-
async function callCohereTokenizeAPI({ api = new CohereApiConfiguration(), abortSignal, model, text, }) {
|
100
|
-
return postJsonToApi({
|
101
|
-
url: api.assembleUrl(`/tokenize`),
|
102
|
-
headers: api.headers,
|
103
|
-
body: {
|
104
|
-
model,
|
105
|
-
text,
|
106
|
-
},
|
107
|
-
failedResponseHandler: failedCohereCallResponseHandler,
|
108
|
-
successfulResponseHandler: createJsonResponseHandler(cohereTokenizationResponseSchema),
|
109
|
-
abortSignal,
|
110
|
-
});
|
111
|
-
}
|
@@ -26,10 +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.cohere =
|
29
|
+
exports.cohere = void 0;
|
30
30
|
__exportStar(require("./CohereApiConfiguration.cjs"), exports);
|
31
|
-
var CohereError_js_1 = require("./CohereError.cjs");
|
32
|
-
Object.defineProperty(exports, "CohereError", { enumerable: true, get: function () { return CohereError_js_1.CohereError; } });
|
33
31
|
exports.cohere = __importStar(require("./CohereFacade.cjs"));
|
34
32
|
__exportStar(require("./CohereTextEmbeddingModel.cjs"), exports);
|
35
33
|
__exportStar(require("./CohereTextGenerationModel.cjs"), exports);
|
@@ -1,5 +1,5 @@
|
|
1
1
|
export * from "./CohereApiConfiguration.js";
|
2
|
-
export {
|
2
|
+
export { CohereErrorData } from "./CohereError.js";
|
3
3
|
export * as cohere from "./CohereFacade.js";
|
4
4
|
export * from "./CohereTextEmbeddingModel.js";
|
5
5
|
export * from "./CohereTextGenerationModel.js";
|