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.
- package/CHANGELOG.md +26 -0
- package/README.md +41 -65
- package/core/FunctionEvent.d.ts +3 -3
- 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.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/ModelCallEvent.d.ts +3 -3
- package/model-function/generate-structure/generateStructure.d.ts +1 -1
- package/model-function/generate-text/PromptTemplateFullTextModel.cjs +2 -2
- package/model-function/generate-text/PromptTemplateFullTextModel.d.ts +3 -3
- package/model-function/generate-text/PromptTemplateFullTextModel.js +2 -2
- package/model-function/generate-text/PromptTemplateTextGenerationModel.cjs +2 -2
- package/model-function/generate-text/PromptTemplateTextGenerationModel.d.ts +3 -3
- package/model-function/generate-text/PromptTemplateTextGenerationModel.js +2 -2
- 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 +52 -7
- 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.d.ts +3 -3
- 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 +6 -6
- package/model-provider/ollama/OllamaChatModel.d.ts +49 -8
- package/model-provider/ollama/OllamaChatModel.js +7 -7
- package/model-provider/ollama/OllamaCompletionModel.cjs +6 -6
- package/model-provider/ollama/OllamaCompletionModel.d.ts +43 -8
- package/model-provider/ollama/OllamaCompletionModel.js +7 -7
- 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 +5 -5
- package/model-provider/openai/AbstractOpenAIChatModel.d.ts +155 -9
- package/model-provider/openai/AbstractOpenAIChatModel.js +5 -5
- package/model-provider/openai/AbstractOpenAICompletionModel.cjs +30 -32
- package/model-provider/openai/AbstractOpenAICompletionModel.d.ts +4 -4
- 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/OpenAIChatFunctionCallStructureGenerationModel.d.ts +1 -1
- package/model-provider/openai/OpenAIChatModel.d.ts +2 -2
- 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.d.ts +3 -3
- 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/OpenAICompatibleChatModel.d.ts +2 -2
- 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/Tool.cjs +0 -10
- package/tool/Tool.d.ts +0 -1
- package/tool/Tool.js +0 -10
- package/tool/WebSearchTool.cjs +2 -2
- package/tool/WebSearchTool.d.ts +1 -2
- package/tool/WebSearchTool.js +3 -3
- package/tool/{generate-tool-calls-or-text/TextGenerationToolCallsOrGenerateTextModel.cjs → generate-tool-calls/TextGenerationToolCallsModel.cjs} +7 -7
- package/tool/{generate-tool-calls-or-text/TextGenerationToolCallsOrGenerateTextModel.d.ts → generate-tool-calls/TextGenerationToolCallsModel.d.ts} +6 -6
- package/tool/{generate-tool-calls-or-text/TextGenerationToolCallsOrGenerateTextModel.js → generate-tool-calls/TextGenerationToolCallsModel.js} +5 -5
- package/tool/generate-tool-calls/ToolCallsGenerationEvent.d.ts +23 -0
- package/tool/{generate-tool-calls-or-text/ToolCallsOrTextGenerationModel.d.ts → generate-tool-calls/ToolCallsGenerationModel.d.ts} +3 -3
- package/tool/{generate-tool-calls-or-text/ToolCallsOrTextParseError.cjs → generate-tool-calls/ToolCallsParseError.cjs} +5 -5
- package/tool/{generate-tool-calls-or-text/ToolCallsOrTextParseError.d.ts → generate-tool-calls/ToolCallsParseError.d.ts} +1 -1
- package/tool/{generate-tool-calls-or-text/ToolCallsOrTextParseError.js → generate-tool-calls/ToolCallsParseError.js} +3 -3
- package/tool/{generate-tool-calls-or-text/ToolCallsOrGenerateTextPromptTemplate.d.ts → generate-tool-calls/ToolCallsPromptTemplate.d.ts} +1 -1
- package/tool/{generate-tool-calls-or-text/generateToolCallsOrText.cjs → generate-tool-calls/generateToolCalls.cjs} +5 -5
- package/tool/{generate-tool-calls-or-text/generateToolCallsOrText.d.ts → generate-tool-calls/generateToolCalls.d.ts} +3 -3
- package/tool/{generate-tool-calls-or-text/generateToolCallsOrText.js → generate-tool-calls/generateToolCalls.js} +3 -3
- package/tool/{generate-tool-calls-or-text → generate-tool-calls}/index.cjs +6 -6
- package/tool/generate-tool-calls/index.d.ts +6 -0
- package/tool/generate-tool-calls/index.js +6 -0
- package/tool/index.cjs +2 -3
- package/tool/index.d.ts +2 -3
- package/tool/index.js +2 -3
- package/tool/use-tools/UseToolsEvent.d.ts +7 -0
- package/tool/use-tools/UseToolsEvent.js +1 -0
- package/tool/{use-tools-or-generate-text → use-tools}/index.cjs +2 -2
- package/tool/use-tools/index.d.ts +2 -0
- package/tool/use-tools/index.js +2 -0
- package/tool/{use-tools-or-generate-text/useToolsOrGenerateText.cjs → use-tools/useTools.cjs} +6 -6
- package/tool/{use-tools-or-generate-text/useToolsOrGenerateText.d.ts → use-tools/useTools.d.ts} +2 -2
- package/tool/{use-tools-or-generate-text/useToolsOrGenerateText.js → use-tools/useTools.js} +4 -4
- 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
- package/tool/InvalidToolNameError.cjs +0 -17
- package/tool/InvalidToolNameError.d.ts +0 -7
- package/tool/InvalidToolNameError.js +0 -13
- package/tool/generate-tool-calls-or-text/ToolCallsOrTextGenerationEvent.d.ts +0 -23
- package/tool/generate-tool-calls-or-text/index.d.ts +0 -6
- package/tool/generate-tool-calls-or-text/index.js +0 -6
- package/tool/use-tools-or-generate-text/UseToolsOrGenerateTextEvent.d.ts +0 -7
- package/tool/use-tools-or-generate-text/index.d.ts +0 -2
- package/tool/use-tools-or-generate-text/index.js +0 -2
- /package/{tool/generate-tool-calls-or-text/ToolCallsOrGenerateTextPromptTemplate.js → core/api/BaseUrlApiConfiguration.test.d.ts} +0 -0
- /package/tool/{generate-tool-calls-or-text/ToolCallsOrGenerateTextPromptTemplate.cjs → generate-tool-calls/ToolCallsGenerationEvent.cjs} +0 -0
- /package/tool/{generate-tool-calls-or-text/ToolCallsOrTextGenerationEvent.js → generate-tool-calls/ToolCallsGenerationEvent.js} +0 -0
- /package/tool/{generate-tool-calls-or-text/ToolCallsOrTextGenerationEvent.cjs → generate-tool-calls/ToolCallsGenerationModel.cjs} +0 -0
- /package/tool/{generate-tool-calls-or-text/ToolCallsOrTextGenerationModel.js → generate-tool-calls/ToolCallsGenerationModel.js} +0 -0
- /package/tool/{generate-tool-calls-or-text/ToolCallsOrTextGenerationModel.cjs → generate-tool-calls/ToolCallsPromptTemplate.cjs} +0 -0
- /package/tool/{use-tools-or-generate-text/UseToolsOrGenerateTextEvent.js → generate-tool-calls/ToolCallsPromptTemplate.js} +0 -0
- /package/tool/{use-tools-or-generate-text/UseToolsOrGenerateTextEvent.cjs → use-tools/UseToolsEvent.cjs} +0 -0
@@ -1,9 +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
|
+
const CohereApiConfiguration_js_1 = require("./CohereApiConfiguration.cjs");
|
4
5
|
const CohereTextEmbeddingModel_js_1 = require("./CohereTextEmbeddingModel.cjs");
|
5
6
|
const CohereTextGenerationModel_js_1 = require("./CohereTextGenerationModel.cjs");
|
6
7
|
const CohereTokenizer_js_1 = require("./CohereTokenizer.cjs");
|
8
|
+
/**
|
9
|
+
* Creates an API configuration for the Cohere API.
|
10
|
+
* It calls the API at https://api.cohere.ai/v1 and uses the `COHERE_API_KEY` env variable by default.
|
11
|
+
*/
|
12
|
+
function Api(settings) {
|
13
|
+
return new CohereApiConfiguration_js_1.CohereApiConfiguration(settings);
|
14
|
+
}
|
15
|
+
exports.Api = Api;
|
7
16
|
/**
|
8
17
|
* Create a text generation model that calls the Cohere Co.Generate API.
|
9
18
|
*
|
@@ -11,7 +20,7 @@ const CohereTokenizer_js_1 = require("./CohereTokenizer.cjs");
|
|
11
20
|
*
|
12
21
|
* @example
|
13
22
|
* const model = cohere.TextGenerator({
|
14
|
-
* model: "command
|
23
|
+
* model: "command",
|
15
24
|
* temperature: 0.7,
|
16
25
|
* maxGenerationTokens: 500,
|
17
26
|
* });
|
@@ -54,7 +63,7 @@ exports.TextEmbedder = TextEmbedder;
|
|
54
63
|
* @see https://docs.cohere.com/reference/detokenize-1
|
55
64
|
*
|
56
65
|
* @example
|
57
|
-
* const tokenizer = cohere.Tokenizer({ model: "command
|
66
|
+
* const tokenizer = cohere.Tokenizer({ model: "command" });
|
58
67
|
*
|
59
68
|
* const text = "At first, Nox didn't know what to do with the pup.";
|
60
69
|
*
|
@@ -1,6 +1,15 @@
|
|
1
|
+
import { PartialBaseUrlPartsApiConfigurationOptions } from "../../core/api/BaseUrlApiConfiguration.js";
|
2
|
+
import { CohereApiConfiguration } from "./CohereApiConfiguration.js";
|
1
3
|
import { CohereTextEmbeddingModel, CohereTextEmbeddingModelSettings } from "./CohereTextEmbeddingModel.js";
|
2
4
|
import { CohereTextGenerationModel, CohereTextGenerationModelSettings } from "./CohereTextGenerationModel.js";
|
3
5
|
import { CohereTokenizer, CohereTokenizerSettings } from "./CohereTokenizer.js";
|
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
|
+
export declare function Api(settings: PartialBaseUrlPartsApiConfigurationOptions & {
|
11
|
+
apiKey?: string;
|
12
|
+
}): CohereApiConfiguration;
|
4
13
|
/**
|
5
14
|
* Create a text generation model that calls the Cohere Co.Generate API.
|
6
15
|
*
|
@@ -8,7 +17,7 @@ import { CohereTokenizer, CohereTokenizerSettings } from "./CohereTokenizer.js";
|
|
8
17
|
*
|
9
18
|
* @example
|
10
19
|
* const model = cohere.TextGenerator({
|
11
|
-
* model: "command
|
20
|
+
* model: "command",
|
12
21
|
* temperature: 0.7,
|
13
22
|
* maxGenerationTokens: 500,
|
14
23
|
* });
|
@@ -45,7 +54,7 @@ export declare function TextEmbedder(settings: CohereTextEmbeddingModelSettings)
|
|
45
54
|
* @see https://docs.cohere.com/reference/detokenize-1
|
46
55
|
*
|
47
56
|
* @example
|
48
|
-
* const tokenizer = cohere.Tokenizer({ model: "command
|
57
|
+
* const tokenizer = cohere.Tokenizer({ model: "command" });
|
49
58
|
*
|
50
59
|
* const text = "At first, Nox didn't know what to do with the pup.";
|
51
60
|
*
|
@@ -1,6 +1,14 @@
|
|
1
|
+
import { CohereApiConfiguration } from "./CohereApiConfiguration.js";
|
1
2
|
import { CohereTextEmbeddingModel, } from "./CohereTextEmbeddingModel.js";
|
2
3
|
import { CohereTextGenerationModel, } from "./CohereTextGenerationModel.js";
|
3
4
|
import { CohereTokenizer } from "./CohereTokenizer.js";
|
5
|
+
/**
|
6
|
+
* Creates an API configuration for the Cohere API.
|
7
|
+
* It calls the API at https://api.cohere.ai/v1 and uses the `COHERE_API_KEY` env variable by default.
|
8
|
+
*/
|
9
|
+
export function Api(settings) {
|
10
|
+
return new CohereApiConfiguration(settings);
|
11
|
+
}
|
4
12
|
/**
|
5
13
|
* Create a text generation model that calls the Cohere Co.Generate API.
|
6
14
|
*
|
@@ -8,7 +16,7 @@ import { CohereTokenizer } from "./CohereTokenizer.js";
|
|
8
16
|
*
|
9
17
|
* @example
|
10
18
|
* const model = cohere.TextGenerator({
|
11
|
-
* model: "command
|
19
|
+
* model: "command",
|
12
20
|
* temperature: 0.7,
|
13
21
|
* maxGenerationTokens: 500,
|
14
22
|
* });
|
@@ -49,7 +57,7 @@ export function TextEmbedder(settings) {
|
|
49
57
|
* @see https://docs.cohere.com/reference/detokenize-1
|
50
58
|
*
|
51
59
|
* @example
|
52
|
-
* const tokenizer = cohere.Tokenizer({ model: "command
|
60
|
+
* const tokenizer = cohere.Tokenizer({ model: "command" });
|
53
61
|
*
|
54
62
|
* const text = "At first, Nox didn't know what to do with the pup.";
|
55
63
|
*
|
@@ -4,6 +4,7 @@ exports.CohereTextEmbeddingModel = exports.COHERE_TEXT_EMBEDDING_MODELS = 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 CohereApiConfiguration_js_1 = require("./CohereApiConfiguration.cjs");
|
9
10
|
const CohereError_js_1 = require("./CohereError.cjs");
|
@@ -18,7 +19,7 @@ exports.COHERE_TEXT_EMBEDDING_MODELS = {
|
|
18
19
|
embeddingDimensions: 4096,
|
19
20
|
},
|
20
21
|
"embed-multilingual-v2.0": {
|
21
|
-
contextWindowSize:
|
22
|
+
contextWindowSize: 256,
|
22
23
|
embeddingDimensions: 768,
|
23
24
|
},
|
24
25
|
"embed-english-v3.0": {
|
@@ -116,13 +117,23 @@ class CohereTextEmbeddingModel extends AbstractModel_js_1.AbstractModel {
|
|
116
117
|
if (texts.length > this.maxValuesPerCall) {
|
117
118
|
throw new Error(`The Cohere embedding API only supports ${this.maxValuesPerCall} texts per API call.`);
|
118
119
|
}
|
120
|
+
const api = this.settings.api ?? new CohereApiConfiguration_js_1.CohereApiConfiguration();
|
121
|
+
const abortSignal = options?.run?.abortSignal;
|
119
122
|
return (0, callWithRetryAndThrottle_js_1.callWithRetryAndThrottle)({
|
120
|
-
retry:
|
121
|
-
throttle:
|
122
|
-
call: async () =>
|
123
|
-
|
124
|
-
|
125
|
-
|
123
|
+
retry: api.retry,
|
124
|
+
throttle: api.throttle,
|
125
|
+
call: async () => (0, postToApi_js_1.postJsonToApi)({
|
126
|
+
url: api.assembleUrl(`/embed`),
|
127
|
+
headers: api.headers,
|
128
|
+
body: {
|
129
|
+
model: this.settings.model,
|
130
|
+
texts,
|
131
|
+
input_type: this.settings.inputType,
|
132
|
+
truncate: this.settings.truncate,
|
133
|
+
},
|
134
|
+
failedResponseHandler: CohereError_js_1.failedCohereCallResponseHandler,
|
135
|
+
successfulResponseHandler: (0, postToApi_js_1.createJsonResponseHandler)((0, ZodSchema_js_1.zodSchema)(cohereTextEmbeddingResponseSchema)),
|
136
|
+
abortSignal,
|
126
137
|
}),
|
127
138
|
});
|
128
139
|
}
|
@@ -153,18 +164,3 @@ const cohereTextEmbeddingResponseSchema = zod_1.z.object({
|
|
153
164
|
}),
|
154
165
|
}),
|
155
166
|
});
|
156
|
-
async function callCohereEmbeddingAPI({ api = new CohereApiConfiguration_js_1.CohereApiConfiguration(), abortSignal, model, texts, inputType, truncate, }) {
|
157
|
-
return (0, postToApi_js_1.postJsonToApi)({
|
158
|
-
url: api.assembleUrl(`/embed`),
|
159
|
-
headers: api.headers,
|
160
|
-
body: {
|
161
|
-
model,
|
162
|
-
texts,
|
163
|
-
input_type: inputType,
|
164
|
-
truncate,
|
165
|
-
},
|
166
|
-
failedResponseHandler: CohereError_js_1.failedCohereCallResponseHandler,
|
167
|
-
successfulResponseHandler: (0, postToApi_js_1.createJsonResponseHandler)(cohereTextEmbeddingResponseSchema),
|
168
|
-
abortSignal,
|
169
|
-
});
|
170
|
-
}
|
@@ -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 { CohereApiConfiguration } from "./CohereApiConfiguration.js";
|
6
7
|
import { failedCohereCallResponseHandler } from "./CohereError.js";
|
@@ -15,7 +16,7 @@ export const COHERE_TEXT_EMBEDDING_MODELS = {
|
|
15
16
|
embeddingDimensions: 4096,
|
16
17
|
},
|
17
18
|
"embed-multilingual-v2.0": {
|
18
|
-
contextWindowSize:
|
19
|
+
contextWindowSize: 256,
|
19
20
|
embeddingDimensions: 768,
|
20
21
|
},
|
21
22
|
"embed-english-v3.0": {
|
@@ -113,13 +114,23 @@ export class CohereTextEmbeddingModel extends AbstractModel {
|
|
113
114
|
if (texts.length > this.maxValuesPerCall) {
|
114
115
|
throw new Error(`The Cohere embedding API only supports ${this.maxValuesPerCall} texts per API call.`);
|
115
116
|
}
|
117
|
+
const api = this.settings.api ?? new CohereApiConfiguration();
|
118
|
+
const abortSignal = options?.run?.abortSignal;
|
116
119
|
return callWithRetryAndThrottle({
|
117
|
-
retry:
|
118
|
-
throttle:
|
119
|
-
call: async () =>
|
120
|
-
|
121
|
-
|
122
|
-
|
120
|
+
retry: api.retry,
|
121
|
+
throttle: api.throttle,
|
122
|
+
call: async () => postJsonToApi({
|
123
|
+
url: api.assembleUrl(`/embed`),
|
124
|
+
headers: api.headers,
|
125
|
+
body: {
|
126
|
+
model: this.settings.model,
|
127
|
+
texts,
|
128
|
+
input_type: this.settings.inputType,
|
129
|
+
truncate: this.settings.truncate,
|
130
|
+
},
|
131
|
+
failedResponseHandler: failedCohereCallResponseHandler,
|
132
|
+
successfulResponseHandler: createJsonResponseHandler(zodSchema(cohereTextEmbeddingResponseSchema)),
|
133
|
+
abortSignal,
|
123
134
|
}),
|
124
135
|
});
|
125
136
|
}
|
@@ -149,18 +160,3 @@ const cohereTextEmbeddingResponseSchema = z.object({
|
|
149
160
|
}),
|
150
161
|
}),
|
151
162
|
});
|
152
|
-
async function callCohereEmbeddingAPI({ api = new CohereApiConfiguration(), abortSignal, model, texts, inputType, truncate, }) {
|
153
|
-
return postJsonToApi({
|
154
|
-
url: api.assembleUrl(`/embed`),
|
155
|
-
headers: api.headers,
|
156
|
-
body: {
|
157
|
-
model,
|
158
|
-
texts,
|
159
|
-
input_type: inputType,
|
160
|
-
truncate,
|
161
|
-
},
|
162
|
-
failedResponseHandler: failedCohereCallResponseHandler,
|
163
|
-
successfulResponseHandler: createJsonResponseHandler(cohereTextEmbeddingResponseSchema),
|
164
|
-
abortSignal,
|
165
|
-
});
|
166
|
-
}
|
@@ -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
|
};
|