Skip to content

Commit 29c1f99

Browse files
committed
feat: add gemini-2.5 and gemini-3 models to modelCapabilities.ts
Signed-off-by: Takuma IMAMURA <209989118+hyperfinitism@users.noreply.github.com>
1 parent 1ee8980 commit 29c1f99

File tree

1 file changed

+88
-3
lines changed

1 file changed

+88
-3
lines changed

src/vs/workbench/contrib/void/common/modelCapabilities.ts

Lines changed: 88 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,11 @@ export const defaultModelsOfProvider = {
9999
'grok-3-mini-fast'
100100
],
101101
gemini: [ // https://ai.google.dev/gemini-api/docs/models/gemini
102+
'gemini-3-pro-preview',
103+
'gemini-3-flash-preview',
104+
'gemini-2.5-flash',
105+
'gemini-2.5-flash-lite',
106+
'gemini-2.5-pro',
102107
'gemini-2.5-pro-exp-03-25',
103108
'gemini-2.5-flash-preview-04-17',
104109
'gemini-2.0-flash',
@@ -807,9 +812,89 @@ const xAISettings: VoidStaticProviderInfo = {
807812
// ---------------- GEMINI ----------------
808813
const geminiModelOptions = { // https://ai.google.dev/gemini-api/docs/pricing
809814
// https://ai.google.dev/gemini-api/docs/thinking#set-budget
815+
'gemini-3-pro-preview': {
816+
contextWindow: 1_048_576,
817+
reservedOutputTokenSpace: 8_192, // actual max: 65536
818+
cost: { input: 2.00, cache_write: 0.20, output: 12.00 },
819+
downloadable: false,
820+
supportsFIM: false,
821+
supportsSystemMessage: 'separated',
822+
specialToolFormat: 'gemini-style',
823+
reasoningCapabilities: {
824+
supportsReasoning: true,
825+
canTurnOffReasoning: false,
826+
canIOReasoning: false,
827+
reasoningSlider: { type: 'effort_slider', values: ['low', 'high'], default: 'low' },
828+
reasoningReservedOutputTokenSpace: 8192, // actual max: 65536
829+
},
830+
},
831+
'gemini-3-flash-preview': {
832+
contextWindow: 1_048_576,
833+
reservedOutputTokenSpace: 8_192, // actual max: 65536
834+
cost: { input: 0.50, cache_write: 0.05, output: 3.00 },
835+
downloadable: false,
836+
supportsFIM: false,
837+
supportsSystemMessage: 'separated',
838+
specialToolFormat: 'gemini-style',
839+
reasoningCapabilities: {
840+
supportsReasoning: true,
841+
canTurnOffReasoning: false,
842+
canIOReasoning: false,
843+
reasoningSlider: { type: 'effort_slider', values: ['minimal', 'low', 'medium', 'high'], default: 'low' },
844+
reasoningReservedOutputTokenSpace: 8192, // actual max: 65536
845+
},
846+
},
847+
'gemini-2.5-flash': {
848+
contextWindow: 1_048_576,
849+
reservedOutputTokenSpace: 8_192, // actual max: 65536
850+
cost: { input: 0.30, cache_write: 0.03, output: 2.50 },
851+
downloadable: false,
852+
supportsFIM: false,
853+
supportsSystemMessage: 'separated',
854+
specialToolFormat: 'gemini-style',
855+
reasoningCapabilities: {
856+
supportsReasoning: true,
857+
canTurnOffReasoning: true,
858+
canIOReasoning: false,
859+
reasoningSlider: { type: 'budget_slider', min: 0, max: 8192, default: 1024 }, // actual max: 24576
860+
reasoningReservedOutputTokenSpace: 8192, // actual max: 65536
861+
},
862+
},
863+
'gemini-2.5-flash-lite': {
864+
contextWindow: 1_048_576,
865+
reservedOutputTokenSpace: 8_192, // actual max: 65536
866+
cost: { input: 0.10, cache_write: 0.01, output: 0.40 },
867+
downloadable: false,
868+
supportsFIM: false,
869+
supportsSystemMessage: 'separated',
870+
specialToolFormat: 'gemini-style',
871+
reasoningCapabilities: {
872+
supportsReasoning: true,
873+
canTurnOffReasoning: true,
874+
canIOReasoning: false,
875+
reasoningSlider: { type: 'budget_slider', min: 512, max: 8192, default: 1024 }, // actual max: 24576
876+
reasoningReservedOutputTokenSpace: 8192, // actual max: 65536
877+
},
878+
},
879+
'gemini-2.5-pro': {
880+
contextWindow: 1_048_576,
881+
reservedOutputTokenSpace: 8_192, // actual max: 65536
882+
cost: { input: 1.25, cache_write: 0.125, output: 10.00 },
883+
downloadable: false,
884+
supportsFIM: false,
885+
supportsSystemMessage: 'separated',
886+
specialToolFormat: 'gemini-style',
887+
reasoningCapabilities: {
888+
supportsReasoning: true,
889+
canTurnOffReasoning: false,
890+
canIOReasoning: false,
891+
reasoningSlider: { type: 'budget_slider', min: 128, max: 8192, default: 1024 }, // actual max: 32768
892+
reasoningReservedOutputTokenSpace: 8192, // actual max: 65536
893+
},
894+
},
810895
'gemini-2.5-pro-preview-05-06': {
811896
contextWindow: 1_048_576,
812-
reservedOutputTokenSpace: 8_192,
897+
reservedOutputTokenSpace: 8_192, // actual max: 65536
813898
cost: { input: 0, output: 0 },
814899
downloadable: false,
815900
supportsFIM: false,
@@ -826,7 +911,7 @@ const geminiModelOptions = { // https://ai.google.dev/gemini-api/docs/pricing
826911
'gemini-2.0-flash-lite': {
827912
contextWindow: 1_048_576,
828913
reservedOutputTokenSpace: 8_192,
829-
cost: { input: 0, output: 0 },
914+
cost: { input: 0.075, output: 0.30 },
830915
downloadable: false,
831916
supportsFIM: false,
832917
supportsSystemMessage: 'separated',
@@ -868,7 +953,7 @@ const geminiModelOptions = { // https://ai.google.dev/gemini-api/docs/pricing
868953
'gemini-2.0-flash': {
869954
contextWindow: 1_048_576,
870955
reservedOutputTokenSpace: 8_192, // 8_192,
871-
cost: { input: 0.10, output: 0.40 },
956+
cost: { input: 0.10, cache_write: 0.025, output: 0.40 },
872957
downloadable: false,
873958
supportsFIM: false,
874959
supportsSystemMessage: 'separated',

0 commit comments

Comments
 (0)