modelmix 4.4.26 → 4.4.30
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 +3 -3
- package/demo/json.js +1 -1
- package/demo/minimax.js +1 -1
- package/index.js +16 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -136,6 +136,8 @@ Here's a comprehensive list of available methods:
|
|
|
136
136
|
| Method | Provider | Model | Price (I/O) per 1 M tokens |
|
|
137
137
|
| ------------------ | ---------- | ------------------------------ | -------------------------- |
|
|
138
138
|
| `gpt54()` | OpenAI | gpt-5.4 | [\$2.50 / \$15.00][1] |
|
|
139
|
+
| `gpt54mini()` | OpenAI | gpt-5.4-mini | [\$0.75 / \$4.50][1] |
|
|
140
|
+
| `gpt54nano()` | OpenAI | gpt-5.4-nano | [\$0.20 / \$1.25][1] |
|
|
139
141
|
| `gpt53codex()` | OpenAI | gpt-5.3-codex | [\$1.25 / \$14.00][1] |
|
|
140
142
|
| `gpt52()` | OpenAI | gpt-5.2 | [\$1.75 / \$14.00][1] |
|
|
141
143
|
| `gpt51()` | OpenAI | gpt-5.1 | [\$1.25 / \$10.00][1] |
|
|
@@ -153,13 +155,11 @@ Here's a comprehensive list of available methods:
|
|
|
153
155
|
| `gemini31pro()` | Google | gemini-3.1-pro-preview | [\$2.00 / \$12.00][3] |
|
|
154
156
|
| `gemini3pro()` | Google | gemini-3-pro-preview | [\$2.00 / \$12.00][3] |
|
|
155
157
|
| `gemini3flash()` | Google | gemini-3-flash-preview | [\$0.50 / \$3.00][3] |
|
|
156
|
-
| `gemini25pro()` | Google | gemini-2.5-pro | [\$1.25 / \$10.00][3] |
|
|
157
|
-
| `gemini25flash()` | Google | gemini-2.5-flash | [\$0.30 / \$2.50][3] |
|
|
158
158
|
| `grok4()` | Grok | grok-4-0709 | [\$3.00 / \$15.00][6] |
|
|
159
159
|
| `grok41[think]()` | Grok | grok-4-1-fast | [\$0.20 / \$0.50][6] |
|
|
160
160
|
| `deepseekV32()` | Fireworks | fireworks/models/deepseek-v3p2 | [\$0.56 / \$1.68][10] |
|
|
161
161
|
| `GLM47()` | Fireworks | fireworks/models/glm-4p7 | [\$0.55 / \$2.19][10] |
|
|
162
|
-
| `
|
|
162
|
+
| `minimaxM27()` | MiniMax | MiniMax-M2.7 | [\$0.30 / \$1.20][9] |
|
|
163
163
|
| `sonar()` | Perplexity | sonar | [\$1.00 / \$1.00][4] |
|
|
164
164
|
| `sonarPro()` | Perplexity | sonar-pro | [\$3.00 / \$15.00][4] |
|
|
165
165
|
| `hermes3()` | Lambda | Hermes-3-Llama-3.1-405B-FP8 | [\$0.80 / \$0.80][8] |
|
package/demo/json.js
CHANGED
|
@@ -2,7 +2,7 @@ import { ModelMix } from '../index.js';
|
|
|
2
2
|
try { process.loadEnvFile(); } catch {}
|
|
3
3
|
|
|
4
4
|
const model = await ModelMix.new({ options: { max_tokens: 10000 }, config: { debug: 3 } })
|
|
5
|
-
.
|
|
5
|
+
.gpt54nano()
|
|
6
6
|
// .gptOss()
|
|
7
7
|
// .scout({ config: { temperature: 0 } })
|
|
8
8
|
// .o4mini()
|
package/demo/minimax.js
CHANGED
package/index.js
CHANGED
|
@@ -20,6 +20,8 @@ const MODEL_PRICING = {
|
|
|
20
20
|
'gpt-realtime': [4.00, 16.00],
|
|
21
21
|
'gpt-5.4': [2.50, 15.00],
|
|
22
22
|
'gpt-5.4-pro': [30, 180.00],
|
|
23
|
+
'gpt-5.4-mini': [0.75, 4.50],
|
|
24
|
+
'gpt-5.4-nano': [0.20, 1.25],
|
|
23
25
|
'gpt-5.3-codex': [1.75, 14.00],
|
|
24
26
|
'gpt-5.2': [1.75, 14.00],
|
|
25
27
|
'gpt-5.2-chat-latest': [1.75, 14.00],
|
|
@@ -61,7 +63,9 @@ const MODEL_PRICING = {
|
|
|
61
63
|
// MiniMax
|
|
62
64
|
'MiniMax-M2.1': [0.30, 1.20],
|
|
63
65
|
'MiniMax-M2.5': [0.30, 1.20],
|
|
66
|
+
'MiniMax-M2.7': [0.30, 1.20],
|
|
64
67
|
'fireworks/minimax-m2p5': [0.30, 1.20],
|
|
68
|
+
'minimax/minimax-m2.7': [0.30, 1.20],
|
|
65
69
|
// Perplexity
|
|
66
70
|
'sonar': [1.00, 1.00],
|
|
67
71
|
'sonar-pro': [3.00, 15.00],
|
|
@@ -278,6 +282,12 @@ class ModelMix {
|
|
|
278
282
|
gpt54({ options = {}, config = {} } = {}) {
|
|
279
283
|
return this.attach('gpt-5.4', new MixOpenAIResponses({ options, config }));
|
|
280
284
|
}
|
|
285
|
+
gpt54mini({ options = {}, config = {} } = {}) {
|
|
286
|
+
return this.attach('gpt-5.4-mini', new MixOpenAIResponses({ options, config }));
|
|
287
|
+
}
|
|
288
|
+
gpt54nano({ options = {}, config = {} } = {}) {
|
|
289
|
+
return this.attach('gpt-5.4-nano', new MixOpenAIResponses({ options, config }));
|
|
290
|
+
}
|
|
281
291
|
gpt54pro({ options = {}, config = {} } = {}) {
|
|
282
292
|
return this.attach('gpt-5.4-pro', new MixOpenAIResponses({ options, config }));
|
|
283
293
|
}
|
|
@@ -478,6 +488,12 @@ class ModelMix {
|
|
|
478
488
|
return this.attach('MiniMax-M2-Stable', new MixMiniMax({ options, config }));
|
|
479
489
|
}
|
|
480
490
|
|
|
491
|
+
minimaxM27({ options = {}, config = {}, mix = { openrouter: true, minimax: true } } = {}) {
|
|
492
|
+
if (mix.openrouter) return this.attach('minimax/minimax-m2.7', new MixOpenRouter({ options, config }));
|
|
493
|
+
if (mix.minimax) return this.attach('MiniMax-M2.7', new MixMiniMax({ options, config }));
|
|
494
|
+
return this;
|
|
495
|
+
}
|
|
496
|
+
|
|
481
497
|
deepseekV32({ options = {}, config = {}, mix = {} } = {}) {
|
|
482
498
|
mix = { ...this.mix, ...mix };
|
|
483
499
|
if (mix.fireworks) this.attach('accounts/fireworks/models/deepseek-v3p2', new MixFireworks({ options, config }));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "modelmix",
|
|
3
|
-
"version": "4.4.
|
|
3
|
+
"version": "4.4.30",
|
|
4
4
|
"description": "🧬 Reliable interface with automatic fallback for AI LLMs.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"repository": {
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
"@modelcontextprotocol/sdk": "^1.27.1",
|
|
51
51
|
"axios": "^1.13.5",
|
|
52
52
|
"bottleneck": "^2.19.5",
|
|
53
|
-
"file-type": "^21.3.
|
|
53
|
+
"file-type": "^21.3.3",
|
|
54
54
|
"form-data": "^4.0.4",
|
|
55
55
|
"lemonlog": "^1.2.0",
|
|
56
56
|
"ws": "^8.19.0"
|