@cubos/ai-suite 1.0.2381126381-5.dev
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/README.md +68 -0
- package/dist/batch.d.ts +54 -0
- package/dist/batch.d.ts.map +1 -0
- package/dist/batch.js +85 -0
- package/dist/batch.js.map +1 -0
- package/dist/file.d.ts +72 -0
- package/dist/file.d.ts.map +1 -0
- package/dist/file.js +92 -0
- package/dist/file.js.map +1 -0
- package/dist/index.d.ts +78 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +189 -0
- package/dist/index.js.map +1 -0
- package/dist/providers/_base.d.ts +47 -0
- package/dist/providers/_base.d.ts.map +1 -0
- package/dist/providers/_base.js +75 -0
- package/dist/providers/_base.js.map +1 -0
- package/dist/providers/anthropic/anthropicProvider.d.ts +39 -0
- package/dist/providers/anthropic/anthropicProvider.d.ts.map +1 -0
- package/dist/providers/anthropic/anthropicProvider.js +293 -0
- package/dist/providers/anthropic/anthropicProvider.js.map +1 -0
- package/dist/providers/anthropic/batch/batchAnthropic.d.ts +15 -0
- package/dist/providers/anthropic/batch/batchAnthropic.d.ts.map +1 -0
- package/dist/providers/anthropic/batch/batchAnthropic.js +212 -0
- package/dist/providers/anthropic/batch/batchAnthropic.js.map +1 -0
- package/dist/providers/anthropic/batch/index.d.ts +2 -0
- package/dist/providers/anthropic/batch/index.d.ts.map +1 -0
- package/dist/providers/anthropic/batch/index.js +2 -0
- package/dist/providers/anthropic/batch/index.js.map +1 -0
- package/dist/providers/anthropic/file/fileAnthropic.d.ts +11 -0
- package/dist/providers/anthropic/file/fileAnthropic.d.ts.map +1 -0
- package/dist/providers/anthropic/file/fileAnthropic.js +76 -0
- package/dist/providers/anthropic/file/fileAnthropic.js.map +1 -0
- package/dist/providers/anthropic/file/index.d.ts +2 -0
- package/dist/providers/anthropic/file/index.d.ts.map +1 -0
- package/dist/providers/anthropic/file/index.js +2 -0
- package/dist/providers/anthropic/file/index.js.map +1 -0
- package/dist/providers/anthropic/index.d.ts +4 -0
- package/dist/providers/anthropic/index.d.ts.map +1 -0
- package/dist/providers/anthropic/index.js +4 -0
- package/dist/providers/anthropic/index.js.map +1 -0
- package/dist/providers/anthropic/types/anthropicContentBlock.d.ts +22 -0
- package/dist/providers/anthropic/types/anthropicContentBlock.d.ts.map +1 -0
- package/dist/providers/anthropic/types/anthropicContentBlock.js +2 -0
- package/dist/providers/anthropic/types/anthropicContentBlock.js.map +1 -0
- package/dist/providers/anthropic/types/anthropicModels.d.ts +4 -0
- package/dist/providers/anthropic/types/anthropicModels.d.ts.map +1 -0
- package/dist/providers/anthropic/types/anthropicModels.js +2 -0
- package/dist/providers/anthropic/types/anthropicModels.js.map +1 -0
- package/dist/providers/anthropic/types/index.d.ts +3 -0
- package/dist/providers/anthropic/types/index.d.ts.map +1 -0
- package/dist/providers/anthropic/types/index.js +3 -0
- package/dist/providers/anthropic/types/index.js.map +1 -0
- package/dist/providers/anthropic/utils/convertToAnthropicFunctions.d.ts +4 -0
- package/dist/providers/anthropic/utils/convertToAnthropicFunctions.d.ts.map +1 -0
- package/dist/providers/anthropic/utils/convertToAnthropicFunctions.js +17 -0
- package/dist/providers/anthropic/utils/convertToAnthropicFunctions.js.map +1 -0
- package/dist/providers/anthropic/utils/index.d.ts +2 -0
- package/dist/providers/anthropic/utils/index.d.ts.map +1 -0
- package/dist/providers/anthropic/utils/index.js +2 -0
- package/dist/providers/anthropic/utils/index.js.map +1 -0
- package/dist/providers/batchProviderBase.d.ts +13 -0
- package/dist/providers/batchProviderBase.d.ts.map +1 -0
- package/dist/providers/batchProviderBase.js +7 -0
- package/dist/providers/batchProviderBase.js.map +1 -0
- package/dist/providers/customLLM/customLLMProvider.d.ts +4 -0
- package/dist/providers/customLLM/customLLMProvider.d.ts.map +1 -0
- package/dist/providers/customLLM/customLLMProvider.js +4 -0
- package/dist/providers/customLLM/customLLMProvider.js.map +1 -0
- package/dist/providers/customLLM/index.d.ts +2 -0
- package/dist/providers/customLLM/index.d.ts.map +1 -0
- package/dist/providers/customLLM/index.js +2 -0
- package/dist/providers/customLLM/index.js.map +1 -0
- package/dist/providers/deepSeek/deepSeekProvider.d.ts +4 -0
- package/dist/providers/deepSeek/deepSeekProvider.d.ts.map +1 -0
- package/dist/providers/deepSeek/deepSeekProvider.js +4 -0
- package/dist/providers/deepSeek/deepSeekProvider.js.map +1 -0
- package/dist/providers/deepSeek/index.d.ts +3 -0
- package/dist/providers/deepSeek/index.d.ts.map +1 -0
- package/dist/providers/deepSeek/index.js +3 -0
- package/dist/providers/deepSeek/index.js.map +1 -0
- package/dist/providers/deepSeek/types/deepSeekModels.d.ts +3 -0
- package/dist/providers/deepSeek/types/deepSeekModels.d.ts.map +1 -0
- package/dist/providers/deepSeek/types/deepSeekModels.js +2 -0
- package/dist/providers/deepSeek/types/deepSeekModels.js.map +1 -0
- package/dist/providers/deepSeek/types/index.d.ts +2 -0
- package/dist/providers/deepSeek/types/index.d.ts.map +1 -0
- package/dist/providers/deepSeek/types/index.js +2 -0
- package/dist/providers/deepSeek/types/index.js.map +1 -0
- package/dist/providers/fileProviderBase.d.ts +13 -0
- package/dist/providers/fileProviderBase.d.ts.map +1 -0
- package/dist/providers/fileProviderBase.js +33 -0
- package/dist/providers/fileProviderBase.js.map +1 -0
- package/dist/providers/gemini/batch/batchGemini.d.ts +14 -0
- package/dist/providers/gemini/batch/batchGemini.d.ts.map +1 -0
- package/dist/providers/gemini/batch/batchGemini.js +322 -0
- package/dist/providers/gemini/batch/batchGemini.js.map +1 -0
- package/dist/providers/gemini/batch/index.d.ts +2 -0
- package/dist/providers/gemini/batch/index.d.ts.map +1 -0
- package/dist/providers/gemini/batch/index.js +2 -0
- package/dist/providers/gemini/batch/index.js.map +1 -0
- package/dist/providers/gemini/constants/index.d.ts +4 -0
- package/dist/providers/gemini/constants/index.d.ts.map +1 -0
- package/dist/providers/gemini/constants/index.js +4 -0
- package/dist/providers/gemini/constants/index.js.map +1 -0
- package/dist/providers/gemini/constants/notUseThinkingConfig.d.ts +2 -0
- package/dist/providers/gemini/constants/notUseThinkingConfig.d.ts.map +1 -0
- package/dist/providers/gemini/constants/notUseThinkingConfig.js +8 -0
- package/dist/providers/gemini/constants/notUseThinkingConfig.js.map +1 -0
- package/dist/providers/gemini/constants/onlyWorksWithThinking.d.ts +2 -0
- package/dist/providers/gemini/constants/onlyWorksWithThinking.d.ts.map +1 -0
- package/dist/providers/gemini/constants/onlyWorksWithThinking.js +2 -0
- package/dist/providers/gemini/constants/onlyWorksWithThinking.js.map +1 -0
- package/dist/providers/gemini/constants/useThinkingLevel.d.ts +2 -0
- package/dist/providers/gemini/constants/useThinkingLevel.d.ts.map +1 -0
- package/dist/providers/gemini/constants/useThinkingLevel.js +2 -0
- package/dist/providers/gemini/constants/useThinkingLevel.js.map +1 -0
- package/dist/providers/gemini/file/fileGemini.d.ts +11 -0
- package/dist/providers/gemini/file/fileGemini.d.ts.map +1 -0
- package/dist/providers/gemini/file/fileGemini.js +96 -0
- package/dist/providers/gemini/file/fileGemini.js.map +1 -0
- package/dist/providers/gemini/file/index.d.ts +2 -0
- package/dist/providers/gemini/file/index.d.ts.map +1 -0
- package/dist/providers/gemini/file/index.js +2 -0
- package/dist/providers/gemini/file/index.js.map +1 -0
- package/dist/providers/gemini/geminiProvider.d.ts +32 -0
- package/dist/providers/gemini/geminiProvider.d.ts.map +1 -0
- package/dist/providers/gemini/geminiProvider.js +311 -0
- package/dist/providers/gemini/geminiProvider.js.map +1 -0
- package/dist/providers/gemini/index.d.ts +6 -0
- package/dist/providers/gemini/index.d.ts.map +1 -0
- package/dist/providers/gemini/index.js +6 -0
- package/dist/providers/gemini/index.js.map +1 -0
- package/dist/providers/gemini/types/geminiModels.d.ts +3 -0
- package/dist/providers/gemini/types/geminiModels.d.ts.map +1 -0
- package/dist/providers/gemini/types/geminiModels.js +2 -0
- package/dist/providers/gemini/types/geminiModels.js.map +1 -0
- package/dist/providers/gemini/types/index.d.ts +3 -0
- package/dist/providers/gemini/types/index.d.ts.map +1 -0
- package/dist/providers/gemini/types/index.js +3 -0
- package/dist/providers/gemini/types/index.js.map +1 -0
- package/dist/providers/gemini/types/taskType.d.ts +2 -0
- package/dist/providers/gemini/types/taskType.d.ts.map +1 -0
- package/dist/providers/gemini/types/taskType.js +2 -0
- package/dist/providers/gemini/types/taskType.js.map +1 -0
- package/dist/providers/gemini/utils/convertToGeminiFunctions.d.ts +4 -0
- package/dist/providers/gemini/utils/convertToGeminiFunctions.d.ts.map +1 -0
- package/dist/providers/gemini/utils/convertToGeminiFunctions.js +46 -0
- package/dist/providers/gemini/utils/convertToGeminiFunctions.js.map +1 -0
- package/dist/providers/gemini/utils/index.d.ts +2 -0
- package/dist/providers/gemini/utils/index.d.ts.map +1 -0
- package/dist/providers/gemini/utils/index.js +2 -0
- package/dist/providers/gemini/utils/index.js.map +1 -0
- package/dist/providers/grok/grokProvider.d.ts +4 -0
- package/dist/providers/grok/grokProvider.d.ts.map +1 -0
- package/dist/providers/grok/grokProvider.js +4 -0
- package/dist/providers/grok/grokProvider.js.map +1 -0
- package/dist/providers/grok/index.d.ts +3 -0
- package/dist/providers/grok/index.d.ts.map +1 -0
- package/dist/providers/grok/index.js +3 -0
- package/dist/providers/grok/index.js.map +1 -0
- package/dist/providers/grok/types/grokModels.d.ts +2 -0
- package/dist/providers/grok/types/grokModels.d.ts.map +1 -0
- package/dist/providers/grok/types/grokModels.js +2 -0
- package/dist/providers/grok/types/grokModels.js.map +1 -0
- package/dist/providers/grok/types/index.d.ts +2 -0
- package/dist/providers/grok/types/index.d.ts.map +1 -0
- package/dist/providers/grok/types/index.js +2 -0
- package/dist/providers/grok/types/index.js.map +1 -0
- package/dist/providers/openai/batch/batchOpenai.d.ts +12 -0
- package/dist/providers/openai/batch/batchOpenai.d.ts.map +1 -0
- package/dist/providers/openai/batch/batchOpenai.js +284 -0
- package/dist/providers/openai/batch/batchOpenai.js.map +1 -0
- package/dist/providers/openai/batch/index.d.ts +2 -0
- package/dist/providers/openai/batch/index.d.ts.map +1 -0
- package/dist/providers/openai/batch/index.js +2 -0
- package/dist/providers/openai/batch/index.js.map +1 -0
- package/dist/providers/openai/file/fileOpenai.d.ts +11 -0
- package/dist/providers/openai/file/fileOpenai.d.ts.map +1 -0
- package/dist/providers/openai/file/fileOpenai.js +81 -0
- package/dist/providers/openai/file/fileOpenai.js.map +1 -0
- package/dist/providers/openai/file/index.d.ts +2 -0
- package/dist/providers/openai/file/index.d.ts.map +1 -0
- package/dist/providers/openai/file/index.js +2 -0
- package/dist/providers/openai/file/index.js.map +1 -0
- package/dist/providers/openai/index.d.ts +5 -0
- package/dist/providers/openai/index.d.ts.map +1 -0
- package/dist/providers/openai/index.js +5 -0
- package/dist/providers/openai/index.js.map +1 -0
- package/dist/providers/openai/openaiProvider.d.ts +34 -0
- package/dist/providers/openai/openaiProvider.d.ts.map +1 -0
- package/dist/providers/openai/openaiProvider.js +260 -0
- package/dist/providers/openai/openaiProvider.js.map +1 -0
- package/dist/providers/openai/types/index.d.ts +4 -0
- package/dist/providers/openai/types/index.d.ts.map +1 -0
- package/dist/providers/openai/types/index.js +4 -0
- package/dist/providers/openai/types/index.js.map +1 -0
- package/dist/providers/openai/types/openAIBatchChatCompletionCreateParams.d.ts +8 -0
- package/dist/providers/openai/types/openAIBatchChatCompletionCreateParams.d.ts.map +1 -0
- package/dist/providers/openai/types/openAIBatchChatCompletionCreateParams.js +2 -0
- package/dist/providers/openai/types/openAIBatchChatCompletionCreateParams.js.map +1 -0
- package/dist/providers/openai/types/openAIBatchEmbeddingCreateParams.d.ts +8 -0
- package/dist/providers/openai/types/openAIBatchEmbeddingCreateParams.d.ts.map +1 -0
- package/dist/providers/openai/types/openAIBatchEmbeddingCreateParams.js +2 -0
- package/dist/providers/openai/types/openAIBatchEmbeddingCreateParams.js.map +1 -0
- package/dist/providers/openai/types/openAIModels.d.ts +4 -0
- package/dist/providers/openai/types/openAIModels.d.ts.map +1 -0
- package/dist/providers/openai/types/openAIModels.js +2 -0
- package/dist/providers/openai/types/openAIModels.js.map +1 -0
- package/dist/providers/types/chatOptions.d.ts +5 -0
- package/dist/providers/types/chatOptions.d.ts.map +1 -0
- package/dist/providers/types/chatOptions.js +2 -0
- package/dist/providers/types/chatOptions.js.map +1 -0
- package/dist/providers/types/chatOptionsBase.d.ts +25 -0
- package/dist/providers/types/chatOptionsBase.d.ts.map +1 -0
- package/dist/providers/types/chatOptionsBase.js +2 -0
- package/dist/providers/types/chatOptionsBase.js.map +1 -0
- package/dist/providers/types/iJsonSchema.d.ts +13 -0
- package/dist/providers/types/iJsonSchema.d.ts.map +1 -0
- package/dist/providers/types/iJsonSchema.js +2 -0
- package/dist/providers/types/iJsonSchema.js.map +1 -0
- package/dist/providers/types/index.d.ts +11 -0
- package/dist/providers/types/index.d.ts.map +1 -0
- package/dist/providers/types/index.js +11 -0
- package/dist/providers/types/index.js.map +1 -0
- package/dist/providers/types/jsonObject.d.ts +8 -0
- package/dist/providers/types/jsonObject.d.ts.map +1 -0
- package/dist/providers/types/jsonObject.js +2 -0
- package/dist/providers/types/jsonObject.js.map +1 -0
- package/dist/providers/types/jsonSchema.d.ts +13 -0
- package/dist/providers/types/jsonSchema.d.ts.map +1 -0
- package/dist/providers/types/jsonSchema.js +2 -0
- package/dist/providers/types/jsonSchema.js.map +1 -0
- package/dist/providers/types/optionsBase.d.ts +21 -0
- package/dist/providers/types/optionsBase.d.ts.map +1 -0
- package/dist/providers/types/optionsBase.js +2 -0
- package/dist/providers/types/optionsBase.js.map +1 -0
- package/dist/providers/types/reasoningConfig.d.ts +9 -0
- package/dist/providers/types/reasoningConfig.d.ts.map +1 -0
- package/dist/providers/types/reasoningConfig.js +2 -0
- package/dist/providers/types/reasoningConfig.js.map +1 -0
- package/dist/providers/types/text.d.ts +8 -0
- package/dist/providers/types/text.d.ts.map +1 -0
- package/dist/providers/types/text.js +2 -0
- package/dist/providers/types/text.js.map +1 -0
- package/dist/providers/types/thinkingConfig.d.ts +11 -0
- package/dist/providers/types/thinkingConfig.d.ts.map +1 -0
- package/dist/providers/types/thinkingConfig.js +2 -0
- package/dist/providers/types/thinkingConfig.js.map +1 -0
- package/dist/providers/types/toolModel.d.ts +15 -0
- package/dist/providers/types/toolModel.d.ts.map +1 -0
- package/dist/providers/types/toolModel.js +2 -0
- package/dist/providers/types/toolModel.js.map +1 -0
- package/dist/types/batch.d.ts +280 -0
- package/dist/types/batch.d.ts.map +1 -0
- package/dist/types/batch.js +2 -0
- package/dist/types/batch.js.map +1 -0
- package/dist/types/chat.d.ts +144 -0
- package/dist/types/chat.d.ts.map +1 -0
- package/dist/types/chat.js +2 -0
- package/dist/types/chat.js.map +1 -0
- package/dist/types/embed.d.ts +70 -0
- package/dist/types/embed.d.ts.map +1 -0
- package/dist/types/embed.js +2 -0
- package/dist/types/embed.js.map +1 -0
- package/dist/types/file.d.ts +56 -0
- package/dist/types/file.d.ts.map +1 -0
- package/dist/types/file.js +2 -0
- package/dist/types/file.js.map +1 -0
- package/dist/types/handleErrorResponse.d.ts +35 -0
- package/dist/types/handleErrorResponse.d.ts.map +1 -0
- package/dist/types/handleErrorResponse.js +2 -0
- package/dist/types/handleErrorResponse.js.map +1 -0
- package/dist/types/index.d.ts +11 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +11 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/providerModel.d.ts +12 -0
- package/dist/types/providerModel.d.ts.map +1 -0
- package/dist/types/providerModel.js +2 -0
- package/dist/types/providerModel.js.map +1 -0
- package/dist/types/responseBase.d.ts +9 -0
- package/dist/types/responseBase.d.ts.map +1 -0
- package/dist/types/responseBase.js +2 -0
- package/dist/types/responseBase.js.map +1 -0
- package/dist/types/resultBase.d.ts +30 -0
- package/dist/types/resultBase.d.ts.map +1 -0
- package/dist/types/resultBase.js +2 -0
- package/dist/types/resultBase.js.map +1 -0
- package/dist/types/retryOptions.d.ts +5 -0
- package/dist/types/retryOptions.d.ts.map +1 -0
- package/dist/types/retryOptions.js +2 -0
- package/dist/types/retryOptions.js.map +1 -0
- package/dist/types/usage.d.ts +9 -0
- package/dist/types/usage.d.ts.map +1 -0
- package/dist/types/usage.js +2 -0
- package/dist/types/usage.js.map +1 -0
- package/dist/types/utils.d.ts +2 -0
- package/dist/types/utils.d.ts.map +1 -0
- package/dist/types/utils.js +2 -0
- package/dist/types/utils.js.map +1 -0
- package/dist/utils.d.ts +4 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +7 -0
- package/dist/utils.js.map +1 -0
- package/package.json +53 -0
package/README.md
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# AI-Suite
|
|
2
|
+
|
|
3
|
+
All AI providers in one place - a unified TypeScript interface for working with multiple AI models.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- **Unified API** for multiple AI providers (OpenAI, Anthropic, Google Gemini, DeepSeek, Grok, Custom LLMs)
|
|
8
|
+
- **Simple and consistent** message format across all providers
|
|
9
|
+
- **Multimodal Support** for images and files (PDF, PNG, JPG, GIF, WebP)
|
|
10
|
+
- **Structured Output** with JSON Schema support via Zod
|
|
11
|
+
- **Tool/Function Calling** for all compatible providers
|
|
12
|
+
- **Reasoning & Thinking Modes** (OpenAI o1/o3, Grok, Gemini 2.5)
|
|
13
|
+
- **Built-in Retry Logic** with exponential backoff
|
|
14
|
+
- **Hooks System** for request/response interceptors
|
|
15
|
+
- **Langfuse Integration** for tracking and monitoring
|
|
16
|
+
- **Robust TypeScript** typing with full type safety
|
|
17
|
+
- **Custom LLM Support** for any OpenAI-compatible API
|
|
18
|
+
|
|
19
|
+
## Installation
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
npm install @cubos/ai-suite
|
|
23
|
+
# or
|
|
24
|
+
yarn add @cubos/ai-suite
|
|
25
|
+
# or
|
|
26
|
+
pnpm add @cubos/ai-suite
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Quick Start
|
|
30
|
+
|
|
31
|
+
```typescript
|
|
32
|
+
import { AISuite } from '@cubos/ai-suite';
|
|
33
|
+
|
|
34
|
+
// Initialize with API keys
|
|
35
|
+
const aiSuite = new AISuite({
|
|
36
|
+
openaiKey: process.env.OPENAI_API_KEY,
|
|
37
|
+
anthropicKey: process.env.ANTHROPIC_API_KEY,
|
|
38
|
+
geminiKey: process.env.GEMINI_API_KEY,
|
|
39
|
+
deepseekKey: process.env.DEEPSEEK_API_KEY,
|
|
40
|
+
grokKey: process.env.GROK_API_KEY,
|
|
41
|
+
// Optional: for custom LLM providers
|
|
42
|
+
customURL: process.env.CUSTOM_LLM_URL,
|
|
43
|
+
customLLMKey: process.env.CUSTOM_LLM_KEY
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
// Single provider chat completion
|
|
47
|
+
const response = await aiSuite.createChatCompletion(
|
|
48
|
+
'openai/gpt-4o',
|
|
49
|
+
[{ role: 'user', content: 'Hello, world!' }],
|
|
50
|
+
{ responseFormat: 'text' }
|
|
51
|
+
);
|
|
52
|
+
|
|
53
|
+
if (response.success) {
|
|
54
|
+
console.log(response.content);
|
|
55
|
+
} else {
|
|
56
|
+
console.error('Error:', response.error);
|
|
57
|
+
}
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
## Supported Providers
|
|
61
|
+
|
|
62
|
+
- **OpenAI** - GPT-4o, GPT-4, o1, o3, and more
|
|
63
|
+
- **Anthropic** - Claude 3.5 Sonnet, Claude 3 Opus, Haiku
|
|
64
|
+
- **Google Gemini** - Gemini 2.5 Pro, 2.5 Flash, 2.0 Flash, 1.5 Pro/Flash
|
|
65
|
+
- **DeepSeek** - DeepSeek Chat, DeepSeek Coder
|
|
66
|
+
- **Grok** - Grok 3, Grok 3 Mini
|
|
67
|
+
- **Custom LLM** - Any OpenAI-compatible API (Ollama, LM Studio, vLLM, etc.)
|
|
68
|
+
|
package/dist/batch.d.ts
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import type Langfuse from "langfuse";
|
|
2
|
+
import type { AnthropicProvider } from "./providers/anthropic/anthropicProvider.js";
|
|
3
|
+
import type { GeminiProvider } from "./providers/gemini/geminiProvider.js";
|
|
4
|
+
import type { OpenAIProvider } from "./providers/openai/openaiProvider.js";
|
|
5
|
+
import type { LangfuseData, OptionsBase } from "./providers/types/optionsBase.js";
|
|
6
|
+
import type { ChatBatchOptions, ChatBatchRequest, EmbeddingBatchRequest, Endpoint, ListBatchOptions, ResultBatch, ResultCancelBatch, ResultCreateBatch, ResultListBatch, ResultRetrieveBatch } from "./types/batch.js";
|
|
7
|
+
import type { EmbeddingOptions } from "./types/embed.js";
|
|
8
|
+
import type { ErrorAISuite } from "./types/handleErrorResponse.js";
|
|
9
|
+
import type { ProviderBatchType, ProviderChatModel, ProviderEmbeddingModel, ProviderModel } from "./types/providerModel.js";
|
|
10
|
+
import type { ResponseBase } from "./types/responseBase.js";
|
|
11
|
+
import type { ResultBase } from "./types/resultBase.js";
|
|
12
|
+
export declare class Batch<S extends string = string> {
|
|
13
|
+
protected getProvider: (provider: ProviderModel<S>) => OpenAIProvider | AnthropicProvider | GeminiProvider;
|
|
14
|
+
protected resultWhithObservation: <R extends ResultBase>(func: () => Promise<R>, langfuseOptions: {
|
|
15
|
+
langfuseData: LangfuseData;
|
|
16
|
+
model: string;
|
|
17
|
+
input: unknown;
|
|
18
|
+
}, provider: OpenAIProvider | AnthropicProvider | GeminiProvider, start: number) => Promise<(R & ResponseBase) | (ErrorAISuite & ResponseBase)>;
|
|
19
|
+
protected openaiKey: string;
|
|
20
|
+
protected anthropicKey: string;
|
|
21
|
+
protected geminiKey: string;
|
|
22
|
+
protected deepseekKey: string;
|
|
23
|
+
protected grokKey: string;
|
|
24
|
+
protected customURL?: string;
|
|
25
|
+
protected customLLMKey?: string;
|
|
26
|
+
protected langFuse?: Langfuse;
|
|
27
|
+
constructor(keys: {
|
|
28
|
+
openaiKey?: string;
|
|
29
|
+
anthropicKey?: string;
|
|
30
|
+
geminiKey?: string;
|
|
31
|
+
deepseekKey?: string;
|
|
32
|
+
grokKey?: string;
|
|
33
|
+
customURL?: string;
|
|
34
|
+
customLLMKey?: string;
|
|
35
|
+
langFuse?: Langfuse;
|
|
36
|
+
}, getProvider: (provider: ProviderModel<S>) => OpenAIProvider | AnthropicProvider | GeminiProvider, resultWhithObservation: <R extends ResultBase>(func: () => Promise<R>, langfuseOptions: {
|
|
37
|
+
langfuseData: LangfuseData;
|
|
38
|
+
model: string;
|
|
39
|
+
input: unknown;
|
|
40
|
+
}, provider: OpenAIProvider | AnthropicProvider | GeminiProvider, start: number) => Promise<(R & ResponseBase) | (ErrorAISuite & ResponseBase)>);
|
|
41
|
+
/**
|
|
42
|
+
* Creates a batch resource on the provider's platform.
|
|
43
|
+
* @partam provider the AI provider to use for file management (e.g., "openai", "anthropic", "gemini").
|
|
44
|
+
* @param batch batch object.
|
|
45
|
+
* @param options options for batch creation, including optional expiration time and metadata for hooks.
|
|
46
|
+
* @return a promise that resolves to the result of the batch creation operation, including status and provider information.
|
|
47
|
+
*/
|
|
48
|
+
create<E extends Endpoint>(endpoint: E, provider: E extends "embeddings" ? ProviderEmbeddingModel<S> : ProviderChatModel<S>, batch: E extends "embeddings" ? EmbeddingBatchRequest : ChatBatchRequest, options: E extends "embeddings" ? EmbeddingOptions : ChatBatchOptions): Promise<ResultCreateBatch>;
|
|
49
|
+
list(provider: ProviderBatchType, options: ListBatchOptions): Promise<ResultListBatch>;
|
|
50
|
+
retrieve(provider: ProviderBatchType, id: string, options: OptionsBase): Promise<ResultRetrieveBatch>;
|
|
51
|
+
cancel(provider: ProviderBatchType, id: string, options: OptionsBase): Promise<ResultCancelBatch>;
|
|
52
|
+
result(provider: ProviderBatchType, id: string, options: OptionsBase): Promise<ResultBatch>;
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=batch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"batch.d.ts","sourceRoot":"","sources":["../src/batch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,UAAU,CAAC;AACrC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAEhB,qBAAqB,EACrB,QAAQ,EACR,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACpB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,KAAK,EACV,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,EACtB,aAAa,EACd,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAExD,qBAAa,KAAK,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IAoBxC,SAAS,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,cAAc,GAAG,iBAAiB,GAAG,cAAc;IAC1G,SAAS,CAAC,sBAAsB,EAAE,CAAC,CAAC,SAAS,UAAU,EACrD,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACtB,eAAe,EAAE;QAAE,YAAY,EAAE,YAAY,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,EAC9E,QAAQ,EAAE,cAAc,GAAG,iBAAiB,GAAG,cAAc,EAC7D,KAAK,EAAE,MAAM,KACV,OAAO,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,YAAY,GAAG,YAAY,CAAC,CAAC;IAzBlE,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC;IAC/B,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;IAC9B,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAChC,SAAS,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC;gBAE5B,IAAI,EAAE;QACJ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,EAAE,QAAQ,CAAC;KACrB,EACS,WAAW,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,cAAc,GAAG,iBAAiB,GAAG,cAAc,EAChG,sBAAsB,EAAE,CAAC,CAAC,SAAS,UAAU,EACrD,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACtB,eAAe,EAAE;QAAE,YAAY,EAAE,YAAY,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,EAC9E,QAAQ,EAAE,cAAc,GAAG,iBAAiB,GAAG,cAAc,EAC7D,KAAK,EAAE,MAAM,KACV,OAAO,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,YAAY,GAAG,YAAY,CAAC,CAAC;IAclE;;;;;;OAMG;IACG,MAAM,CAAC,CAAC,SAAS,QAAQ,EAC7B,QAAQ,EAAE,CAAC,EACX,QAAQ,EAAE,CAAC,SAAS,YAAY,GAAG,sBAAsB,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,EACnF,KAAK,EAAE,CAAC,SAAS,YAAY,GAAG,qBAAqB,GAAG,gBAAgB,EACxE,OAAO,EAAE,CAAC,SAAS,YAAY,GAAG,gBAAgB,GAAG,gBAAgB,GACpE,OAAO,CAAC,iBAAiB,CAAC;IAoBvB,IAAI,CAAC,QAAQ,EAAE,iBAAiB,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;IAmBtF,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAmBrG,MAAM,CAAC,QAAQ,EAAE,iBAAiB,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAmBjG,MAAM,CAAC,QAAQ,EAAE,iBAAiB,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;CAkBlG"}
|
package/dist/batch.js
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
export class Batch {
|
|
2
|
+
constructor(keys, getProvider, resultWhithObservation) {
|
|
3
|
+
this.getProvider = getProvider;
|
|
4
|
+
this.resultWhithObservation = resultWhithObservation;
|
|
5
|
+
this.openaiKey = keys.openaiKey || "";
|
|
6
|
+
this.anthropicKey = keys.anthropicKey || "";
|
|
7
|
+
this.geminiKey = keys.geminiKey || "";
|
|
8
|
+
this.deepseekKey = keys.deepseekKey || "";
|
|
9
|
+
this.grokKey = keys.grokKey || "";
|
|
10
|
+
this.customURL = keys.customURL || "";
|
|
11
|
+
this.customLLMKey = keys.customLLMKey || "";
|
|
12
|
+
this.langFuse = keys.langFuse;
|
|
13
|
+
this.getProvider = getProvider;
|
|
14
|
+
this.resultWhithObservation = resultWhithObservation;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Creates a batch resource on the provider's platform.
|
|
18
|
+
* @partam provider the AI provider to use for file management (e.g., "openai", "anthropic", "gemini").
|
|
19
|
+
* @param batch batch object.
|
|
20
|
+
* @param options options for batch creation, including optional expiration time and metadata for hooks.
|
|
21
|
+
* @return a promise that resolves to the result of the batch creation operation, including status and provider information.
|
|
22
|
+
*/
|
|
23
|
+
async create(endpoint, provider, batch, options) {
|
|
24
|
+
const start = Date.now();
|
|
25
|
+
const p = this.getProvider(provider);
|
|
26
|
+
const args = { endpoint, batch, options };
|
|
27
|
+
return this.resultWhithObservation(() => p.batch.create(args), {
|
|
28
|
+
langfuseData: {
|
|
29
|
+
name: "create-batch",
|
|
30
|
+
tags: ["batch", provider],
|
|
31
|
+
},
|
|
32
|
+
model: p.model,
|
|
33
|
+
input: batch,
|
|
34
|
+
}, p, start);
|
|
35
|
+
}
|
|
36
|
+
async list(provider, options) {
|
|
37
|
+
const start = Date.now();
|
|
38
|
+
const p = this.getProvider(provider);
|
|
39
|
+
return this.resultWhithObservation(() => p.batch.list(options), {
|
|
40
|
+
langfuseData: {
|
|
41
|
+
name: "list-batch",
|
|
42
|
+
tags: ["batch", provider],
|
|
43
|
+
},
|
|
44
|
+
model: p.model,
|
|
45
|
+
input: options,
|
|
46
|
+
}, p, start);
|
|
47
|
+
}
|
|
48
|
+
async retrieve(provider, id, options) {
|
|
49
|
+
const start = Date.now();
|
|
50
|
+
const p = this.getProvider(provider);
|
|
51
|
+
return this.resultWhithObservation(() => p.batch.retrieve(id, options), {
|
|
52
|
+
langfuseData: {
|
|
53
|
+
name: "retrieve-batch",
|
|
54
|
+
tags: ["batch", provider],
|
|
55
|
+
},
|
|
56
|
+
model: p.model,
|
|
57
|
+
input: id,
|
|
58
|
+
}, p, start);
|
|
59
|
+
}
|
|
60
|
+
async cancel(provider, id, options) {
|
|
61
|
+
const start = Date.now();
|
|
62
|
+
const p = this.getProvider(provider);
|
|
63
|
+
return this.resultWhithObservation(() => p.batch.cancel(id, options), {
|
|
64
|
+
langfuseData: {
|
|
65
|
+
name: "cancel-batch",
|
|
66
|
+
tags: ["batch", provider],
|
|
67
|
+
},
|
|
68
|
+
model: p.model,
|
|
69
|
+
input: id,
|
|
70
|
+
}, p, start);
|
|
71
|
+
}
|
|
72
|
+
async result(provider, id, options) {
|
|
73
|
+
const start = Date.now();
|
|
74
|
+
const p = this.getProvider(provider);
|
|
75
|
+
return this.resultWhithObservation(() => p.batch.result(id, options), {
|
|
76
|
+
langfuseData: {
|
|
77
|
+
name: "result-batch",
|
|
78
|
+
tags: ["batch", provider],
|
|
79
|
+
},
|
|
80
|
+
model: p.model,
|
|
81
|
+
input: id,
|
|
82
|
+
}, p, start);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=batch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"batch.js","sourceRoot":"","sources":["../src/batch.ts"],"names":[],"mappings":"AA6BA,MAAM,OAAO,KAAK;IAShB,YACE,IASC,EACS,WAAgG,EAChG,sBAKsD;QANtD,gBAAW,GAAX,WAAW,CAAqF;QAChG,2BAAsB,GAAtB,sBAAsB,CAKgC;QAEhE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;QACtC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC;QAC1C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;QACtC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC;QAC5C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;IACvD,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CACV,QAAW,EACX,QAAmF,EACnF,KAAwE,EACxE,OAAqE;QAErE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,IAAI,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAqB,CAAC;QAE7D,OAAO,IAAI,CAAC,sBAAsB,CAChC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAC1B;YACE,YAAY,EAAE;gBACZ,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;aAC1B;YACD,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,KAAK,EAAE,KAAK;SACb,EACD,CAAC,EACD,KAAK,CACN,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,QAA2B,EAAE,OAAyB;QAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAErC,OAAO,IAAI,CAAC,sBAAsB,CAChC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAC3B;YACE,YAAY,EAAE;gBACZ,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;aAC1B;YACD,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,KAAK,EAAE,OAAO;SACf,EACD,CAAC,EACD,KAAK,CACN,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,QAA2B,EAAE,EAAU,EAAE,OAAoB;QAC1E,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAErC,OAAO,IAAI,CAAC,sBAAsB,CAChC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC,EACnC;YACE,YAAY,EAAE;gBACZ,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;aAC1B;YACD,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,KAAK,EAAE,EAAE;SACV,EACD,CAAC,EACD,KAAK,CACN,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,QAA2B,EAAE,EAAU,EAAE,OAAoB;QACxE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAErC,OAAO,IAAI,CAAC,sBAAsB,CAChC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,EACjC;YACE,YAAY,EAAE;gBACZ,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;aAC1B;YACD,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,KAAK,EAAE,EAAE;SACV,EACD,CAAC,EACD,KAAK,CACN,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,QAA2B,EAAE,EAAU,EAAE,OAAoB;QACxE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAErC,OAAO,IAAI,CAAC,sBAAsB,CAChC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,EACjC;YACE,YAAY,EAAE;gBACZ,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;aAC1B;YACD,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,KAAK,EAAE,EAAE;SACV,EACD,CAAC,EACD,KAAK,CACN,CAAC;IACJ,CAAC;CACF"}
|
package/dist/file.d.ts
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import type Langfuse from "langfuse";
|
|
2
|
+
import type { AnthropicProvider } from "./providers/anthropic/anthropicProvider.js";
|
|
3
|
+
import type { GeminiProvider } from "./providers/gemini/geminiProvider.js";
|
|
4
|
+
import type { OpenAIProvider } from "./providers/openai/openaiProvider.js";
|
|
5
|
+
import type { LangfuseData, OptionsBase } from "./providers/types/optionsBase.js";
|
|
6
|
+
import type { CreateFileOptions, ListFileOptions, ResultCreateFile, ResultDeleteFile, ResultListFile } from "./types/file.js";
|
|
7
|
+
import type { ErrorAISuite } from "./types/handleErrorResponse.js";
|
|
8
|
+
import type { ProviderFileType, ProviderModel } from "./types/providerModel.js";
|
|
9
|
+
import type { ResponseBase } from "./types/responseBase.js";
|
|
10
|
+
import type { ResultBase } from "./types/resultBase.js";
|
|
11
|
+
export declare class File<S extends string = string> {
|
|
12
|
+
protected getProvider: (provider: ProviderModel<S>) => OpenAIProvider | AnthropicProvider | GeminiProvider;
|
|
13
|
+
protected resultWhithObservation: <R extends ResultBase>(func: () => Promise<R>, langfuseOptions: {
|
|
14
|
+
langfuseData: LangfuseData;
|
|
15
|
+
model: string;
|
|
16
|
+
input: unknown;
|
|
17
|
+
}, provider: OpenAIProvider | AnthropicProvider | GeminiProvider, start: number) => Promise<(R & ResponseBase) | (ErrorAISuite & ResponseBase)>;
|
|
18
|
+
protected openaiKey: string;
|
|
19
|
+
protected anthropicKey: string;
|
|
20
|
+
protected geminiKey: string;
|
|
21
|
+
protected deepseekKey: string;
|
|
22
|
+
protected grokKey: string;
|
|
23
|
+
protected customURL?: string;
|
|
24
|
+
protected customLLMKey?: string;
|
|
25
|
+
protected langFuse?: Langfuse;
|
|
26
|
+
constructor(keys: {
|
|
27
|
+
openaiKey?: string;
|
|
28
|
+
anthropicKey?: string;
|
|
29
|
+
geminiKey?: string;
|
|
30
|
+
deepseekKey?: string;
|
|
31
|
+
grokKey?: string;
|
|
32
|
+
customURL?: string;
|
|
33
|
+
customLLMKey?: string;
|
|
34
|
+
langFuse?: Langfuse;
|
|
35
|
+
}, getProvider: (provider: ProviderModel<S>) => OpenAIProvider | AnthropicProvider | GeminiProvider, resultWhithObservation: <R extends ResultBase>(func: () => Promise<R>, langfuseOptions: {
|
|
36
|
+
langfuseData: LangfuseData;
|
|
37
|
+
model: string;
|
|
38
|
+
input: unknown;
|
|
39
|
+
}, provider: OpenAIProvider | AnthropicProvider | GeminiProvider, start: number) => Promise<(R & ResponseBase) | (ErrorAISuite & ResponseBase)>);
|
|
40
|
+
/**
|
|
41
|
+
* Creates a file resource on the provider's platform.
|
|
42
|
+
* @partam provider the AI provider to use for file management (e.g., "openai", "anthropic", "gemini").
|
|
43
|
+
* @param file the file to be uploaded, must be a File object and of a supported type (e.g., "text/jsonl").
|
|
44
|
+
* @param options options for file creation, including optional expiration time and metadata for hooks.
|
|
45
|
+
* @return a promise that resolves to the result of the file creation operation, including success status, file details, and provider information.
|
|
46
|
+
*/
|
|
47
|
+
create(provider: ProviderFileType, file: globalThis.File, options: CreateFileOptions): Promise<ResultCreateFile>;
|
|
48
|
+
/**
|
|
49
|
+
* Lists files available on the provider's platform.
|
|
50
|
+
* @param provider the AI provider to use for file management (e.g., "openai", "anthropic", "gemini").
|
|
51
|
+
* @param options options for listing files, including pagination parameters and metadata for hooks.
|
|
52
|
+
* @return a promise that resolves to the result of the file listing operation, including success status, list of files, and provider information.
|
|
53
|
+
*/
|
|
54
|
+
list(provider: ProviderFileType, options: ListFileOptions): Promise<ResultListFile>;
|
|
55
|
+
/**
|
|
56
|
+
* Retrieves a specific file from the provider's platform using its unique identifier.
|
|
57
|
+
* @param provider the AI provider to use for file management (e.g., "openai", "anthropic", "gemini").
|
|
58
|
+
* @param id the unique identifier of the file to be retrieved.
|
|
59
|
+
* @param options options for retrieving the file, including metadata for hooks.
|
|
60
|
+
* @returns a promise that resolves to the result of the file retrieval operation, including success status, file details, and provider information.
|
|
61
|
+
*/
|
|
62
|
+
retrieve(provider: ProviderFileType, id: string, options: OptionsBase): Promise<ResultCreateFile>;
|
|
63
|
+
/**
|
|
64
|
+
* Deletes a specific file from the provider's platform using its unique identifier.
|
|
65
|
+
* @param provider the AI provider to use for file management (e.g., "openai", "anthropic", "gemini").
|
|
66
|
+
* @param id the unique identifier of the file to be deleted.
|
|
67
|
+
* @param options options for deleting the file, including metadata for hooks.
|
|
68
|
+
* @returns a promise that resolves to the result of the file deletion operation, including success status and provider information.
|
|
69
|
+
*/
|
|
70
|
+
delete(provider: ProviderFileType, id: string, options: OptionsBase): Promise<ResultDeleteFile>;
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=file.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../src/file.ts"],"names":[],"mappings":"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"}
|
package/dist/file.js
ADDED
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
export class File {
|
|
2
|
+
constructor(keys, getProvider, resultWhithObservation) {
|
|
3
|
+
this.getProvider = getProvider;
|
|
4
|
+
this.resultWhithObservation = resultWhithObservation;
|
|
5
|
+
this.openaiKey = keys.openaiKey || "";
|
|
6
|
+
this.anthropicKey = keys.anthropicKey || "";
|
|
7
|
+
this.geminiKey = keys.geminiKey || "";
|
|
8
|
+
this.deepseekKey = keys.deepseekKey || "";
|
|
9
|
+
this.grokKey = keys.grokKey || "";
|
|
10
|
+
this.customURL = keys.customURL || "";
|
|
11
|
+
this.customLLMKey = keys.customLLMKey || "";
|
|
12
|
+
this.langFuse = keys.langFuse;
|
|
13
|
+
this.getProvider = getProvider;
|
|
14
|
+
this.resultWhithObservation = resultWhithObservation;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Creates a file resource on the provider's platform.
|
|
18
|
+
* @partam provider the AI provider to use for file management (e.g., "openai", "anthropic", "gemini").
|
|
19
|
+
* @param file the file to be uploaded, must be a File object and of a supported type (e.g., "text/jsonl").
|
|
20
|
+
* @param options options for file creation, including optional expiration time and metadata for hooks.
|
|
21
|
+
* @return a promise that resolves to the result of the file creation operation, including success status, file details, and provider information.
|
|
22
|
+
*/
|
|
23
|
+
async create(provider, file, options) {
|
|
24
|
+
const start = Date.now();
|
|
25
|
+
const p = this.getProvider(provider);
|
|
26
|
+
return this.resultWhithObservation(() => p.file.create(file, options), {
|
|
27
|
+
langfuseData: {
|
|
28
|
+
name: "create-file",
|
|
29
|
+
tags: ["file", provider],
|
|
30
|
+
},
|
|
31
|
+
model: provider,
|
|
32
|
+
input: file,
|
|
33
|
+
}, p, start);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Lists files available on the provider's platform.
|
|
37
|
+
* @param provider the AI provider to use for file management (e.g., "openai", "anthropic", "gemini").
|
|
38
|
+
* @param options options for listing files, including pagination parameters and metadata for hooks.
|
|
39
|
+
* @return a promise that resolves to the result of the file listing operation, including success status, list of files, and provider information.
|
|
40
|
+
*/
|
|
41
|
+
async list(provider, options) {
|
|
42
|
+
const start = Date.now();
|
|
43
|
+
const p = this.getProvider(provider);
|
|
44
|
+
return this.resultWhithObservation(() => p.file.list(options), {
|
|
45
|
+
langfuseData: {
|
|
46
|
+
name: "list-files",
|
|
47
|
+
tags: ["file", provider],
|
|
48
|
+
},
|
|
49
|
+
model: provider,
|
|
50
|
+
input: { after: options.after, limit: options.limit },
|
|
51
|
+
}, p, start);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Retrieves a specific file from the provider's platform using its unique identifier.
|
|
55
|
+
* @param provider the AI provider to use for file management (e.g., "openai", "anthropic", "gemini").
|
|
56
|
+
* @param id the unique identifier of the file to be retrieved.
|
|
57
|
+
* @param options options for retrieving the file, including metadata for hooks.
|
|
58
|
+
* @returns a promise that resolves to the result of the file retrieval operation, including success status, file details, and provider information.
|
|
59
|
+
*/
|
|
60
|
+
async retrieve(provider, id, options) {
|
|
61
|
+
const start = Date.now();
|
|
62
|
+
const p = this.getProvider(provider);
|
|
63
|
+
return this.resultWhithObservation(() => p.file.retrieve(id, options), {
|
|
64
|
+
langfuseData: {
|
|
65
|
+
name: "retrieve-file",
|
|
66
|
+
tags: ["file", provider],
|
|
67
|
+
},
|
|
68
|
+
model: provider,
|
|
69
|
+
input: id,
|
|
70
|
+
}, p, start);
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Deletes a specific file from the provider's platform using its unique identifier.
|
|
74
|
+
* @param provider the AI provider to use for file management (e.g., "openai", "anthropic", "gemini").
|
|
75
|
+
* @param id the unique identifier of the file to be deleted.
|
|
76
|
+
* @param options options for deleting the file, including metadata for hooks.
|
|
77
|
+
* @returns a promise that resolves to the result of the file deletion operation, including success status and provider information.
|
|
78
|
+
*/
|
|
79
|
+
async delete(provider, id, options) {
|
|
80
|
+
const start = Date.now();
|
|
81
|
+
const p = this.getProvider(provider);
|
|
82
|
+
return this.resultWhithObservation(() => p.file.delete(id, options), {
|
|
83
|
+
langfuseData: {
|
|
84
|
+
name: "delete-file",
|
|
85
|
+
tags: ["file", provider],
|
|
86
|
+
},
|
|
87
|
+
model: provider,
|
|
88
|
+
input: id,
|
|
89
|
+
}, p, start);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=file.js.map
|
package/dist/file.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../src/file.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import type { Langfuse } from "langfuse";
|
|
2
|
+
import { Batch } from "./batch.js";
|
|
3
|
+
import { File } from "./file.js";
|
|
4
|
+
import type { ChatOptions } from "./providers/types/index.js";
|
|
5
|
+
import type { MessageModel, ResultChatCompletion } from "./types/chat.js";
|
|
6
|
+
import type { EmbeddingOptions, EmbeddingRequest, ResultEmbedding } from "./types/embed.js";
|
|
7
|
+
import type { ProviderChatModel, ProviderEmbeddingModel } from "./types/providerModel.js";
|
|
8
|
+
export declare class AISuite<S extends string = string> {
|
|
9
|
+
private openaiKey;
|
|
10
|
+
private anthropicKey;
|
|
11
|
+
private geminiKey;
|
|
12
|
+
private deepseekKey;
|
|
13
|
+
private grokKey;
|
|
14
|
+
private langFuse?;
|
|
15
|
+
private customURL?;
|
|
16
|
+
private customLLMKey?;
|
|
17
|
+
hooks?: {
|
|
18
|
+
handleRequest?: (req: unknown) => Promise<void>;
|
|
19
|
+
handleResponse?: (req: unknown, res: unknown, metadata: Record<string, unknown>) => Promise<void>;
|
|
20
|
+
failOnError?: boolean;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* The Batch class provides an interface for managing file resources across different AI providers.
|
|
24
|
+
*/
|
|
25
|
+
batch: Batch<S>;
|
|
26
|
+
/**
|
|
27
|
+
* The File class provides an interface for managing file resources across different AI providers.
|
|
28
|
+
* only batch file uploads are supported as of now.
|
|
29
|
+
*/
|
|
30
|
+
file: File<S>;
|
|
31
|
+
constructor(keys: {
|
|
32
|
+
openaiKey?: string;
|
|
33
|
+
anthropicKey?: string;
|
|
34
|
+
geminiKey?: string;
|
|
35
|
+
deepseekKey?: string;
|
|
36
|
+
grokKey?: string;
|
|
37
|
+
customURL?: string;
|
|
38
|
+
customLLMKey?: string;
|
|
39
|
+
}, options?: {
|
|
40
|
+
hooks?: {
|
|
41
|
+
handleRequest?: (req: unknown) => Promise<void>;
|
|
42
|
+
handleResponse?: (req: unknown, res: unknown, metadata: Record<string, unknown>) => Promise<void>;
|
|
43
|
+
failOnError?: boolean;
|
|
44
|
+
};
|
|
45
|
+
langFuse?: Langfuse;
|
|
46
|
+
});
|
|
47
|
+
/**
|
|
48
|
+
* Create a chat completion with multiple providers
|
|
49
|
+
* @param providers - The providers to use
|
|
50
|
+
* @param messages - The messages to send to the providers
|
|
51
|
+
* @param options - The options to use
|
|
52
|
+
* @returns The chat completion
|
|
53
|
+
*/
|
|
54
|
+
createChatCompletionMultiResult<T extends ProviderChatModel<S>>(providers: T[], messages: MessageModel[], options?: {
|
|
55
|
+
stream: false;
|
|
56
|
+
} & ChatOptions): Promise<ResultChatCompletion[]>;
|
|
57
|
+
/**
|
|
58
|
+
* Create a chat completion
|
|
59
|
+
* @param provider - The provider to use
|
|
60
|
+
* @param messages - The messages to send to the provider
|
|
61
|
+
* @param options - The options to use
|
|
62
|
+
* @returns The chat completion
|
|
63
|
+
*/
|
|
64
|
+
createChatCompletion(provider: ProviderChatModel<S>, messages: MessageModel[], options?: {
|
|
65
|
+
stream: false;
|
|
66
|
+
} & ChatOptions): Promise<ResultChatCompletion>;
|
|
67
|
+
/**
|
|
68
|
+
* Create a chat completion
|
|
69
|
+
* @param provider - The provider to use
|
|
70
|
+
* @param embedding- The embedding request to send to the provider
|
|
71
|
+
* @param options - The options to use
|
|
72
|
+
* @returns The chat completion
|
|
73
|
+
*/
|
|
74
|
+
createEmbedding(provider: ProviderEmbeddingModel<S>, embedding: EmbeddingRequest, options?: EmbeddingOptions): Promise<ResultEmbedding>;
|
|
75
|
+
private resultWhithObservation;
|
|
76
|
+
private getProvider;
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|