modelmix 4.7.2 → 4.7.4

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 CHANGED
@@ -190,6 +190,7 @@ Here's a comprehensive list of available methods:
190
190
  | `gemini31pro()` | Google | gemini-3.1-pro-preview | [\$2.00 / \$12.00][3] |
191
191
  | `gemini36flash()` | Google | gemini-3.6-flash | [\$1.50 / \$7.50][3] |
192
192
  | `gemini35flash()` | Google | gemini-3.5-flash | [\$0.75 / \$4.50][3] |
193
+ | `gemini35flashLite()`| Google | gemini-3.5-flash-lite | [\$0.30 / \$2.50][3] |
193
194
  | `gemini31flashLite()`| Google | gemini-3.1-flash-lite-preview | [\$0.25 / \$1.50][3] |
194
195
  | `grok45()` | Grok | grok-4.5 | [\$2.00 / \$6.00][6] |
195
196
  | `grok43()` | Grok | grok-4.3 | [\$1.25 / \$2.50][6] |
package/index.d.ts CHANGED
@@ -302,6 +302,7 @@ export declare class ModelMix {
302
302
  gemini3flash(args?: ModelAttachArgs): this;
303
303
  gemini36flash(args?: ModelAttachArgs): this;
304
304
  gemini35flash(args?: ModelAttachArgs): this;
305
+ gemini35flashLite(args?: ModelAttachArgs): this;
305
306
  gemini31flashLite(args?: ModelAttachArgs): this;
306
307
  gemini25pro(args?: ModelAttachArgs): this;
307
308
 
package/index.js CHANGED
@@ -82,6 +82,7 @@ const MODEL_PRICING = {
82
82
  'gemini-3-flash-preview': [0.50, 3.00],
83
83
  'gemini-3.6-flash': [1.50, 7.50],
84
84
  'gemini-3.5-flash': [0.75, 4.50],
85
+ 'gemini-3.5-flash-lite': [0.30, 2.50],
85
86
  'gemini-2.5-pro': [1.25, 10.00],
86
87
  'gemini-2.5-flash': [0.30, 2.50],
87
88
  'gemini-3.1-flash-lite-preview': [0.25, 1.50],
@@ -429,6 +430,9 @@ class ModelMix {
429
430
  gemini35flash({ options = {}, config = {} } = {}) {
430
431
  return this.attach('gemini-3.5-flash', new MixGoogle({ options, config }));
431
432
  }
433
+ gemini35flashLite({ options = {}, config = {} } = {}) {
434
+ return this.attach('gemini-3.5-flash-lite', new MixGoogle({ options, config }));
435
+ }
432
436
  gemini31flashLite({ options = {}, config = {} } = {}) {
433
437
  return this.attach('gemini-3.1-flash-lite-preview', new MixGoogle({ options, config }));
434
438
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "modelmix",
3
- "version": "4.7.2",
3
+ "version": "4.7.4",
4
4
  "description": "🧬 Reliable interface with automatic fallback for AI LLMs.",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
@@ -127,7 +127,7 @@ ModelMix.new({ config: { effort: 80 } })
127
127
  Use `.effort(n)` (or `config.effort`) to enable Anthropic thinking — e.g. `.effort(100).opus5()`.
128
128
 
129
129
  ### Google
130
- `gemini3pro()` `gemini3flash()` `gemini36flash()` `gemini35flash()` `gemini25pro()` `gemini25flash()`
130
+ `gemini3pro()` `gemini3flash()` `gemini36flash()` `gemini35flash()` `gemini35flashLite()` `gemini31flashLite()` `gemini25pro()` `gemini25flash()`
131
131
 
132
132
  ### Grok
133
133
  `grok45()` `grok43()` `grok420multiAgent()` `grok420()`
@@ -108,15 +108,18 @@ describe('Token Usage Tracking', () => {
108
108
  it('should register Gemini Flash shortcuts with Google provider', function () {
109
109
  const model = ModelMix.new()
110
110
  .gemini36flash()
111
- .gemini35flash();
111
+ .gemini35flash()
112
+ .gemini35flashLite();
112
113
 
113
114
  expect(model.models.map(({ key }) => key)).to.deep.equal([
114
115
  'gemini-3.6-flash',
115
- 'gemini-3.5-flash'
116
+ 'gemini-3.5-flash',
117
+ 'gemini-3.5-flash-lite'
116
118
  ]);
117
119
  expect(model.models.every(({ provider }) => provider instanceof MixGoogle)).to.equal(true);
118
120
  expect(ModelMix.calculateCost('gemini-3.6-flash', { input: 1_000_000, output: 1_000_000 })).to.equal(9);
119
121
  expect(ModelMix.calculateCost('gemini-3.5-flash', { input: 1_000_000, output: 1_000_000 })).to.equal(5.25);
122
+ expect(ModelMix.calculateCost('gemini-3.5-flash-lite', { input: 1_000_000, output: 1_000_000 })).to.equal(2.8);
120
123
  });
121
124
 
122
125
  it('should register MiMo shortcuts with native and OpenRouter providers', function () {