New Jeremy 2.5
| @@ -3192,12 +3192,15 @@ | |||
| 3192 | <h4 data-i18n="Google Model">Google Model</h4> | 3192 | <h4 data-i18n="Google Model">Google Model</h4> |
| 3193 | <select id="model_google_select"> | 3193 | <select id="model_google_select"> |
| 3194 | <optgroup label="Gemini 2.5"> | 3194 | <optgroup label="Gemini 2.5"> |
| 3195 | <option value="gemini-2.5-pro">gemini-2.5-pro</option> | ||
| 3195 | <option value="gemini-2.5-pro-preview-06-05">gemini-2.5-pro-preview-06-05</option> | 3196 | <option value="gemini-2.5-pro-preview-06-05">gemini-2.5-pro-preview-06-05</option> |
| 3196 | <option value="gemini-2.5-pro-preview-05-06">gemini-2.5-pro-preview-05-06</option> | 3197 | <option value="gemini-2.5-pro-preview-05-06">gemini-2.5-pro-preview-05-06</option> |
| 3197 | <option value="gemini-2.5-pro-preview-03-25">gemini-2.5-pro-preview-03-25</option> | 3198 | <option value="gemini-2.5-pro-preview-03-25">gemini-2.5-pro-preview-03-25</option> |
| 3198 | <option value="gemini-2.5-pro-exp-03-25">gemini-2.5-pro-exp-03-25</option> | 3199 | <option value="gemini-2.5-pro-exp-03-25">gemini-2.5-pro-exp-03-25</option> |
| 3200 | <option value="gemini-2.5-flash">gemini-2.5-flash</option> | ||
| 3199 | <option value="gemini-2.5-flash-preview-05-20">gemini-2.5-flash-preview-05-20</option> | 3201 | <option value="gemini-2.5-flash-preview-05-20">gemini-2.5-flash-preview-05-20</option> |
| 3200 | <option value="gemini-2.5-flash-preview-04-17">gemini-2.5-flash-preview-04-17</option> | 3202 | <option value="gemini-2.5-flash-preview-04-17">gemini-2.5-flash-preview-04-17</option> |
| 3203 | <option value="gemini-2.5-flash-lite-preview-06-17">gemini-2.5-flash-lite-preview-06-17</option> | ||
| 3201 | </optgroup> | 3204 | </optgroup> |
| 3202 | <optgroup label="Gemini 2.0"> | 3205 | <optgroup label="Gemini 2.0"> |
| 3203 | <option value="gemini-2.0-pro-exp-02-05">gemini-2.0-pro-exp-02-05 → 2.5-pro-exp-03-25</option> | 3206 | <option value="gemini-2.0-pro-exp-02-05">gemini-2.0-pro-exp-02-05 → 2.5-pro-exp-03-25</option> |
| @@ -3362,12 +3365,15 @@ | |||
| 3362 | <select id="model_vertexai_select"> | 3365 | <select id="model_vertexai_select"> |
| 3363 | <!-- data-mode="full" is for models that require a service account --> | 3366 | <!-- data-mode="full" is for models that require a service account --> |
| 3364 | <optgroup label="Gemini 2.5"> | 3367 | <optgroup label="Gemini 2.5"> |
| 3368 | <option value="gemini-2.5-pro">gemini-2.5-pro</option> | ||
| 3365 | <option value="gemini-2.5-pro-preview-06-05">gemini-2.5-pro-preview-06-05</option> | 3369 | <option value="gemini-2.5-pro-preview-06-05">gemini-2.5-pro-preview-06-05</option> |
| 3366 | <option value="gemini-2.5-pro-preview-05-06">gemini-2.5-pro-preview-05-06</option> | 3370 | <option value="gemini-2.5-pro-preview-05-06">gemini-2.5-pro-preview-05-06</option> |
| 3367 | <option value="gemini-2.5-pro-preview-03-25">gemini-2.5-pro-preview-03-25</option> | 3371 | <option value="gemini-2.5-pro-preview-03-25">gemini-2.5-pro-preview-03-25</option> |
| 3368 | <option value="gemini-2.5-pro-exp-03-25" data-mode="full">gemini-2.5-pro-exp-03-25</option> | 3372 | <option value="gemini-2.5-pro-exp-03-25" data-mode="full">gemini-2.5-pro-exp-03-25</option> |
| 3373 | <option value="gemini-2.5-flash">gemini-2.5-flash</option> | ||
| 3369 | <option value="gemini-2.5-flash-preview-05-20">gemini-2.5-flash-preview-05-20</option> | 3374 | <option value="gemini-2.5-flash-preview-05-20">gemini-2.5-flash-preview-05-20</option> |
| 3370 | <option value="gemini-2.5-flash-preview-04-17">gemini-2.5-flash-preview-04-17</option> | 3375 | <option value="gemini-2.5-flash-preview-04-17">gemini-2.5-flash-preview-04-17</option> |
| 3376 | <option value="gemini-2.5-flash-lite-preview-06-17">gemini-2.5-flash-lite-preview-06-17</option> | ||
| 3371 | </optgroup> | 3377 | </optgroup> |
| 3372 | <optgroup label="Gemini 2.0"> | 3378 | <optgroup label="Gemini 2.0"> |
| 3373 | <option value="gemini-2.0-flash-exp" data-mode="full">gemini-2.0-flash-exp</option> | 3379 | <option value="gemini-2.0-flash-exp" data-mode="full">gemini-2.0-flash-exp</option> |
| @@ -86,12 +86,15 @@ | |||
| 86 | <option data-type="anthropic" value="claude-3-opus-20240229">claude-3-opus-20240229</option> | 86 | <option data-type="anthropic" value="claude-3-opus-20240229">claude-3-opus-20240229</option> |
| 87 | <option data-type="anthropic" value="claude-3-sonnet-20240229">claude-3-sonnet-20240229</option> | 87 | <option data-type="anthropic" value="claude-3-sonnet-20240229">claude-3-sonnet-20240229</option> |
| 88 | <option data-type="anthropic" value="claude-3-haiku-20240307">claude-3-haiku-20240307</option> | 88 | <option data-type="anthropic" value="claude-3-haiku-20240307">claude-3-haiku-20240307</option> |
| 89 | <option data-type="google" value="gemini-2.5-pro">gemini-2.5-pro</option> | ||
| 89 | <option data-type="google" value="gemini-2.5-pro-preview-06-05">gemini-2.5-pro-preview-06-05</option> | 90 | <option data-type="google" value="gemini-2.5-pro-preview-06-05">gemini-2.5-pro-preview-06-05</option> |
| 90 | <option data-type="google" value="gemini-2.5-pro-preview-05-06">gemini-2.5-pro-preview-05-06</option> | 91 | <option data-type="google" value="gemini-2.5-pro-preview-05-06">gemini-2.5-pro-preview-05-06</option> |
| 91 | <option data-type="google" value="gemini-2.5-pro-preview-03-25">gemini-2.5-pro-preview-03-25</option> | 92 | <option data-type="google" value="gemini-2.5-pro-preview-03-25">gemini-2.5-pro-preview-03-25</option> |
| 92 | <option data-type="google" value="gemini-2.5-pro-exp-03-25">gemini-2.5-pro-exp-03-25</option> | 93 | <option data-type="google" value="gemini-2.5-pro-exp-03-25">gemini-2.5-pro-exp-03-25</option> |
| 94 | <option data-type="google" value="gemini-2.5-flash">gemini-2.5-flash</option> | ||
| 93 | <option data-type="google" value="gemini-2.5-flash-preview-05-20">gemini-2.5-flash-preview-05-20</option> | 95 | <option data-type="google" value="gemini-2.5-flash-preview-05-20">gemini-2.5-flash-preview-05-20</option> |
| 94 | <option data-type="google" value="gemini-2.5-flash-preview-04-17">gemini-2.5-flash-preview-04-17</option> | 96 | <option data-type="google" value="gemini-2.5-flash-preview-04-17">gemini-2.5-flash-preview-04-17</option> |
| 97 | <option data-type="google" value="gemini-2.5-flash-lite-preview-06-17">gemini-2.5-flash-lite-preview-06-17</option> | ||
| 95 | <option data-type="google" value="gemini-2.0-pro-exp-02-05">gemini-2.0-pro-exp-02-05 → 2.5-pro-exp-03-25</option> | 98 | <option data-type="google" value="gemini-2.0-pro-exp-02-05">gemini-2.0-pro-exp-02-05 → 2.5-pro-exp-03-25</option> |
| 96 | <option data-type="google" value="gemini-2.0-pro-exp">gemini-2.0-pro-exp → 2.5-pro-exp-03-25</option> | 99 | <option data-type="google" value="gemini-2.0-pro-exp">gemini-2.0-pro-exp → 2.5-pro-exp-03-25</option> |
| 97 | <option data-type="google" value="gemini-exp-1206">gemini-exp-1206 → 2.5-pro-exp-03-25</option> | 100 | <option data-type="google" value="gemini-exp-1206">gemini-exp-1206 → 2.5-pro-exp-03-25</option> |
| @@ -118,11 +121,14 @@ | |||
| 118 | <option data-type="google" value="gemini-1.5-flash-8b-exp-0827">gemini-1.5-flash-8b-exp-0827</option> | 121 | <option data-type="google" value="gemini-1.5-flash-8b-exp-0827">gemini-1.5-flash-8b-exp-0827</option> |
| 119 | <option data-type="google" value="learnlm-2.0-flash-experimental">learnlm-2.0-flash-experimental</option> | 122 | <option data-type="google" value="learnlm-2.0-flash-experimental">learnlm-2.0-flash-experimental</option> |
| 120 | <option data-type="google" value="learnlm-1.5-pro-experimental">learnlm-1.5-pro-experimental</option> | 123 | <option data-type="google" value="learnlm-1.5-pro-experimental">learnlm-1.5-pro-experimental</option> |
| 124 | <option data-type="vertexai" value="gemini-2.5-pro">gemini-2.5-pro</option> | ||
| 121 | <option data-type="vertexai" value="gemini-2.5-pro-preview-06-05">gemini-2.5-pro-preview-06-05</option> | 125 | <option data-type="vertexai" value="gemini-2.5-pro-preview-06-05">gemini-2.5-pro-preview-06-05</option> |
| 122 | <option data-type="vertexai" value="gemini-2.5-pro-preview-05-06">gemini-2.5-pro-preview-05-06</option> | 126 | <option data-type="vertexai" value="gemini-2.5-pro-preview-05-06">gemini-2.5-pro-preview-05-06</option> |
| 123 | <option data-type="vertexai" value="gemini-2.5-pro-preview-03-25">gemini-2.5-pro-preview-03-25</option> | 127 | <option data-type="vertexai" value="gemini-2.5-pro-preview-03-25">gemini-2.5-pro-preview-03-25</option> |
| 128 | <option data-type="vertexai" value="gemini-2.5-flash">gemini-2.5-flash</option> | ||
| 124 | <option data-type="vertexai" value="gemini-2.5-flash-preview-05-20">gemini-2.5-flash-preview-05-20</option> | 129 | <option data-type="vertexai" value="gemini-2.5-flash-preview-05-20">gemini-2.5-flash-preview-05-20</option> |
| 125 | <option data-type="vertexai" value="gemini-2.5-flash-preview-04-17">gemini-2.5-flash-preview-04-17</option> | 130 | <option data-type="vertexai" value="gemini-2.5-flash-preview-04-17">gemini-2.5-flash-preview-04-17</option> |
| 131 | <option data-type="vertexai" value="gemini-2.5-flash-lite-preview-06-17">gemini-2.5-flash-lite-preview-06-17</option> | ||
| 126 | <option data-type="vertexai" value="gemini-2.0-flash-001">gemini-2.0-flash-001</option> | 132 | <option data-type="vertexai" value="gemini-2.0-flash-001">gemini-2.0-flash-001</option> |
| 127 | <option data-type="vertexai" value="gemini-2.0-flash-lite-001">gemini-2.0-flash-lite-001</option> | 133 | <option data-type="vertexai" value="gemini-2.0-flash-lite-001">gemini-2.0-flash-lite-001</option> |
| 128 | <option data-type="groq" value="llama-3.2-11b-vision-preview">llama-3.2-11b-vision-preview</option> | 134 | <option data-type="groq" value="llama-3.2-11b-vision-preview">llama-3.2-11b-vision-preview</option> |
| @@ -451,6 +451,12 @@ async function sendMakerSuiteRequest(request, response) { | |||
| 451 | thinkingConfig.thinkingBudget = thinkingBudget; | 451 | thinkingConfig.thinkingBudget = thinkingBudget; |
| 452 | } | 452 | } |
| 453 | 453 | ||
| 454 | // Vertex doesn't allow mixing disabled thinking with includeThoughts | ||
| 455 | if (useVertexAi && thinkingBudget === 0 && thinkingConfig.includeThoughts) { | ||
| 456 | console.info('Thinking budget is 0, but includeThoughts is true. Thoughts will not be included in the response.'); | ||
| 457 | thinkingConfig.includeThoughts = false; | ||
| 458 | } | ||
| 459 | |||
| 454 | generationConfig.thinkingConfig = thinkingConfig; | 460 | generationConfig.thinkingConfig = thinkingConfig; |
| 455 | } | 461 | } |
| 456 | 462 | ||
| @@ -1063,10 +1063,9 @@ export function calculateGoogleBudgetTokens(maxTokens, reasoningEffort, model) { | |||
| 1063 | 1063 | ||
| 1064 | switch (reasoningEffort) { | 1064 | switch (reasoningEffort) { |
| 1065 | case REASONING_EFFORT.auto: | 1065 | case REASONING_EFFORT.auto: |
| 1066 | return null; | 1066 | return -1; |
| 1067 | case REASONING_EFFORT.min: | 1067 | case REASONING_EFFORT.min: |
| 1068 | budgetTokens = 0; | 1068 | return 0; |
| 1069 | break; | ||
| 1070 | case REASONING_EFFORT.low: | 1069 | case REASONING_EFFORT.low: |
| 1071 | budgetTokens = Math.floor(maxTokens * 0.1); | 1070 | budgetTokens = Math.floor(maxTokens * 0.1); |
| 1072 | break; | 1071 | break; |
| @@ -1086,12 +1085,39 @@ export function calculateGoogleBudgetTokens(maxTokens, reasoningEffort, model) { | |||
| 1086 | return budgetTokens; | 1085 | return budgetTokens; |
| 1087 | } | 1086 | } |
| 1088 | 1087 | ||
| 1088 | function getFlashLiteBudget() { | ||
| 1089 | let budgetTokens = 0; | ||
| 1090 | |||
| 1091 | switch (reasoningEffort) { | ||
| 1092 | case REASONING_EFFORT.auto: | ||
| 1093 | return -1; | ||
| 1094 | case REASONING_EFFORT.min: | ||
| 1095 | return 0; | ||
| 1096 | case REASONING_EFFORT.low: | ||
| 1097 | budgetTokens = Math.floor(maxTokens * 0.1); | ||
| 1098 | break; | ||
| 1099 | case REASONING_EFFORT.medium: | ||
| 1100 | budgetTokens = Math.floor(maxTokens * 0.25); | ||
| 1101 | break; | ||
| 1102 | case REASONING_EFFORT.high: | ||
| 1103 | budgetTokens = Math.floor(maxTokens * 0.5); | ||
| 1104 | break; | ||
| 1105 | case REASONING_EFFORT.max: | ||
| 1106 | budgetTokens = maxTokens; | ||
| 1107 | break; | ||
| 1108 | } | ||
| 1109 | |||
| 1110 | budgetTokens = Math.max(Math.min(budgetTokens, 24576), 512); | ||
| 1111 | |||
| 1112 | return budgetTokens; | ||
| 1113 | } | ||
| 1114 | |||
| 1089 | function getProBudget() { | 1115 | function getProBudget() { |
| 1090 | let budgetTokens = 0; | 1116 | let budgetTokens = 0; |
| 1091 | 1117 | ||
| 1092 | switch (reasoningEffort) { | 1118 | switch (reasoningEffort) { |
| 1093 | case REASONING_EFFORT.auto: | 1119 | case REASONING_EFFORT.auto: |
| 1094 | return null; | 1120 | return -1; |
| 1095 | case REASONING_EFFORT.min: | 1121 | case REASONING_EFFORT.min: |
| 1096 | budgetTokens = 128; | 1122 | budgetTokens = 128; |
| 1097 | break; | 1123 | break; |
| @@ -1114,6 +1140,10 @@ export function calculateGoogleBudgetTokens(maxTokens, reasoningEffort, model) { | |||
| 1114 | return budgetTokens; | 1140 | return budgetTokens; |
| 1115 | } | 1141 | } |
| 1116 | 1142 | ||
| 1143 | if (model.includes('flash-lite')) { | ||
| 1144 | return getFlashLiteBudget(); | ||
| 1145 | } | ||
| 1146 | |||
| 1117 | if (model.includes('flash')) { | 1147 | if (model.includes('flash')) { |
| 1118 | return getFlashBudget(); | 1148 | return getFlashBudget(); |
| 1119 | } | 1149 | } |