1
- // src/utils/llm- globals.ts
1
+ // src/utils/globals/llms .ts
2
2
3
3
import { callOllama } from '../../llms/ollama'
4
4
import { callChatGPT } from '../../llms/chatgpt'
5
5
import { callClaude } from '../../llms/claude'
6
6
import { callGemini } from '../../llms/gemini'
7
7
import { callCohere } from '../../llms/cohere'
8
8
import { callMistral } from '../../llms/mistral'
9
+ import { callDeepSeek } from '../../llms/deepseek'
10
+ import { callGrok } from '../../llms/grok'
9
11
import { callFireworks } from '../../llms/fireworks'
10
12
import { callTogether } from '../../llms/together'
11
13
import { callGroq } from '../../llms/groq'
12
14
13
15
import type {
14
16
ModelConfig ,
17
+ OllamaModelType ,
15
18
ChatGPTModelType ,
16
19
ClaudeModelType ,
17
20
CohereModelType ,
18
21
GeminiModelType ,
19
22
MistralModelType ,
20
- OllamaModelType ,
23
+ DeepSeekModelType ,
24
+ GrokModelType ,
21
25
TogetherModelType ,
22
26
FireworksModelType ,
23
27
GroqModelType ,
@@ -43,6 +47,8 @@ export const LLM_SERVICES: Record<string, LLMServiceConfig> = {
43
47
GEMINI : { name : 'Google Gemini' , value : 'gemini' } ,
44
48
COHERE : { name : 'Cohere' , value : 'cohere' } ,
45
49
MISTRAL : { name : 'Mistral' , value : 'mistral' } ,
50
+ DEEPSEEK : { name : 'DeepSeek' , value : 'deepseek' } ,
51
+ GROK : { name : 'Grok' , value : 'grok' } ,
46
52
FIREWORKS : { name : 'Fireworks AI' , value : 'fireworks' } ,
47
53
TOGETHER : { name : 'Together AI' , value : 'together' } ,
48
54
GROQ : { name : 'Groq' , value : 'groq' } ,
@@ -105,6 +111,8 @@ export const LLM_FUNCTIONS = {
105
111
gemini : callGemini ,
106
112
cohere : callCohere ,
107
113
mistral : callMistral ,
114
+ deepseek : callDeepSeek ,
115
+ grok : callGrok ,
108
116
fireworks : callFireworks ,
109
117
together : callTogether ,
110
118
groq : callGroq ,
@@ -458,17 +466,53 @@ export const GROQ_MODELS: ModelConfig<GroqModelType> = {
458
466
} ,
459
467
}
460
468
469
+ /**
470
+ * Configuration for Grok models, mapping model types to their display names and identifiers.
471
+ * Pricing is hypothetical or as provided by xAI docs
472
+ * @type {ModelConfig<GrokModelType> }
473
+ */
474
+ export const GROK_MODELS : ModelConfig < GrokModelType > = {
475
+ GROK_2_LATEST : {
476
+ name : 'Grok 2 Latest' ,
477
+ modelId : 'grok-2-latest' ,
478
+ inputCostPer1M : 2.00 ,
479
+ outputCostPer1M : 10.00
480
+ } ,
481
+ }
482
+
483
+ /**
484
+ * Configuration for DeepSeek models, mapping model types to their display names and identifiers.
485
+ * Pricing is based on publicly listed rates for DeepSeek.
486
+ * @type {ModelConfig<DeepSeekModelType> }
487
+ */
488
+ export const DEEPSEEK_MODELS : ModelConfig < DeepSeekModelType > = {
489
+ DEEPSEEK_CHAT : {
490
+ name : 'DeepSeek Chat' ,
491
+ modelId : 'deepseek-chat' ,
492
+ inputCostPer1M : 0.07 ,
493
+ outputCostPer1M : 1.10
494
+ } ,
495
+ DEEPSEEK_REASONER : {
496
+ name : 'DeepSeek Reasoner' ,
497
+ modelId : 'deepseek-reasoner' ,
498
+ inputCostPer1M : 0.14 ,
499
+ outputCostPer1M : 2.19
500
+ } ,
501
+ }
502
+
461
503
/**
462
504
* All available model configurations combined
463
505
*/
464
506
export const ALL_MODELS : { [ key : string ] : ModelConfigValue } = {
507
+ ...OLLAMA_MODELS ,
465
508
...GPT_MODELS ,
466
509
...CLAUDE_MODELS ,
467
510
...GEMINI_MODELS ,
468
511
...COHERE_MODELS ,
469
512
...MISTRAL_MODELS ,
470
- ...OLLAMA_MODELS ,
513
+ ...DEEPSEEK_MODELS ,
514
+ ...GROK_MODELS ,
471
515
...FIREWORKS_MODELS ,
472
516
...TOGETHER_MODELS ,
473
- ...GROQ_MODELS
517
+ ...GROQ_MODELS ,
474
518
}
0 commit comments