diff --git a/api/models/tx.js b/api/models/tx.js index 92f2432d0e..48d2801dbd 100644 --- a/api/models/tx.js +++ b/api/models/tx.js @@ -156,6 +156,7 @@ const tokenValues = Object.assign( 'gemini-2.5-flash': { prompt: 0.3, completion: 2.5 }, 'gemini-2.5-flash-lite': { prompt: 0.1, completion: 0.4 }, 'gemini-2.5-pro': { prompt: 1.25, completion: 10 }, + 'gemini-3': { prompt: 2, completion: 12 }, 'gemini-pro-vision': { prompt: 0.5, completion: 1.5 }, grok: { prompt: 2.0, completion: 10.0 }, // Base pattern defaults to grok-2 'grok-beta': { prompt: 5.0, completion: 15.0 }, diff --git a/api/models/tx.spec.js b/api/models/tx.spec.js index 670ea9d5ec..7f11e4e466 100644 --- a/api/models/tx.spec.js +++ b/api/models/tx.spec.js @@ -1040,6 +1040,7 @@ describe('getCacheMultiplier', () => { describe('Google Model Tests', () => { const googleModels = [ + 'gemini-3', 'gemini-2.5-pro', 'gemini-2.5-flash', 'gemini-2.5-flash-lite', @@ -1083,6 +1084,7 @@ describe('Google Model Tests', () => { it('should map to the correct model keys', () => { const expected = { + 'gemini-3': 'gemini-3', 'gemini-2.5-pro': 'gemini-2.5-pro', 'gemini-2.5-flash': 'gemini-2.5-flash', 'gemini-2.5-flash-lite': 'gemini-2.5-flash-lite', diff --git a/api/package.json b/api/package.json index e5a4525ad1..1c153b4bff 100644 --- a/api/package.json +++ b/api/package.json @@ -47,7 +47,7 @@ "@langchain/google-genai": "^0.2.13", "@langchain/google-vertexai": "^0.2.13", "@langchain/textsplitters": "^0.1.0", - "@librechat/agents": "^3.0.25", + "@librechat/agents": "^3.0.26", "@librechat/api": "*", "@librechat/data-schemas": "*", "@microsoft/microsoft-graph-client": "^3.0.7", diff --git a/api/utils/tokens.spec.js b/api/utils/tokens.spec.js index 12daf64e47..dd01f4cb07 100644 --- a/api/utils/tokens.spec.js +++ b/api/utils/tokens.spec.js @@ -275,6 +275,9 @@ describe('getModelMaxTokens', () => { expect(getModelMaxTokens('gemini-1.5-pro-preview-0409', EModelEndpoint.google)).toBe( maxTokensMap[EModelEndpoint.google]['gemini-1.5'], ); + expect(getModelMaxTokens('gemini-3', EModelEndpoint.google)).toBe( + maxTokensMap[EModelEndpoint.google]['gemini-3'], + ); expect(getModelMaxTokens('gemini-2.5-pro', EModelEndpoint.google)).toBe( maxTokensMap[EModelEndpoint.google]['gemini-2.5-pro'], ); diff --git a/package-lock.json b/package-lock.json index e8a1826f86..0799d241de 100644 --- a/package-lock.json +++ b/package-lock.json @@ -63,7 +63,7 @@ "@langchain/google-genai": "^0.2.13", "@langchain/google-vertexai": "^0.2.13", "@langchain/textsplitters": "^0.1.0", - "@librechat/agents": "^3.0.25", + "@librechat/agents": "^3.0.26", "@librechat/api": "*", "@librechat/data-schemas": "*", "@microsoft/microsoft-graph-client": "^3.0.7", @@ -16426,9 +16426,9 @@ } }, "node_modules/@librechat/agents": { - "version": "3.0.25", - "resolved": "https://registry.npmjs.org/@librechat/agents/-/agents-3.0.25.tgz", - "integrity": "sha512-2TQETX++K75TEEG/30KZdwsPzUljH1MCrKkh55UcHM7OWvUNZCIRlgiWqov731NPwp1bCI3fbXoncbnWzL8NDA==", + "version": "3.0.26", + "resolved": "https://registry.npmjs.org/@librechat/agents/-/agents-3.0.26.tgz", + "integrity": "sha512-ALJQlry68RjxHE6Jq1S7l8M3bmBTrikkT5C6NhN8SRgq1DFoov383wDiHqOs7WwxG29Zh2FmBEGKd23bkjiTcw==", "license": "MIT", "dependencies": { "@langchain/anthropic": "^0.3.26", @@ -47440,7 +47440,7 @@ "@azure/storage-blob": "^12.27.0", "@keyv/redis": "^4.3.3", "@langchain/core": "^0.3.79", - "@librechat/agents": "^3.0.25", + "@librechat/agents": "^3.0.26", "@librechat/data-schemas": "*", "@modelcontextprotocol/sdk": "^1.21.0", "axios": "^1.12.1", diff --git a/packages/api/package.json b/packages/api/package.json index a48d8c74f1..92a31068f9 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -84,7 +84,7 @@ "@azure/storage-blob": "^12.27.0", "@keyv/redis": "^4.3.3", "@langchain/core": "^0.3.79", - "@librechat/agents": "^3.0.25", + "@librechat/agents": "^3.0.26", "@librechat/data-schemas": "*", "@modelcontextprotocol/sdk": "^1.21.0", "axios": "^1.12.1", diff --git a/packages/api/src/utils/tokens.ts b/packages/api/src/utils/tokens.ts index 32921ca851..3842e7bf3e 100644 --- a/packages/api/src/utils/tokens.ts +++ b/packages/api/src/utils/tokens.ts @@ -91,6 +91,7 @@ const googleModels = { gemini: 30720, // -2048 from max 'gemini-pro-vision': 12288, 'gemini-exp': 2000000, + 'gemini-3': 1000000, // 1M input tokens, 64k output tokens 'gemini-2.5': 1000000, // 1M input tokens, 64k output tokens 'gemini-2.5-pro': 1000000, 'gemini-2.5-flash': 1000000,