mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-06-05 21:59:27 +02:00
New Jeremy 2.5 Pro
This commit is contained in:
@@ -2098,8 +2098,8 @@
|
||||
<div class="toggle-description justifyLeft marginBot5" data-source="claude" data-i18n="Allocates a portion of the response length for thinking (min: 1024 tokens, low: 10%, medium: 25%, high: 50%, max: 95%), but minimum 1024 tokens. Auto does not request thinking.">
|
||||
Allocates a portion of the response length for thinking (min: 1024 tokens, low: 10%, medium: 25%, high: 50%, max: 95%), but minimum 1024 tokens. Auto does not request thinking.
|
||||
</div>
|
||||
<div class="toggle-description justifyLeft marginBot5" data-source="makersuite,vertexai" data-i18n="Allocates a portion of the response length for thinking (min: 0 tokens, low: 10%, medium: 25%, high: 50%, max: 24576 tokens). Auto lets the model decide.">
|
||||
Allocates a portion of the response length for thinking (min: 0 tokens, low: 10%, medium: 25%, high: 50%, max: 24576 tokens). Auto lets the model decide.
|
||||
<div class="toggle-description justifyLeft marginBot5" data-source="makersuite,vertexai" data-i18n="Allocates a portion of the response length for thinking (Flash 2.5/Pro 2.5) (min: 0/128 tokens, low: 10%, medium: 25%, high: 50%, max: 24576/32768 tokens). Auto lets the model decide.">
|
||||
Allocates a portion of the response length for thinking (Flash 2.5/Pro 2.5) (min: 0/128 tokens, low: 10%, medium: 25%, high: 50%, max: 24576/32768 tokens). Auto lets the model decide.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -3190,6 +3190,7 @@
|
||||
<h4 data-i18n="Google Model">Google Model</h4>
|
||||
<select id="model_google_select">
|
||||
<optgroup label="Gemini 2.5">
|
||||
<option value="gemini-2.5-pro-preview-06-05">gemini-2.5-pro-preview-06-05</option>
|
||||
<option value="gemini-2.5-pro-preview-05-06">gemini-2.5-pro-preview-05-06</option>
|
||||
<option value="gemini-2.5-pro-preview-03-25">gemini-2.5-pro-preview-03-25</option>
|
||||
<option value="gemini-2.5-pro-exp-03-25">gemini-2.5-pro-exp-03-25</option>
|
||||
@@ -3336,6 +3337,7 @@
|
||||
|
||||
<!-- Full Version Models -->
|
||||
<optgroup id="vertexai_full_gemini_25" label="Gemini 2.5" data-mode="full">
|
||||
<option value="gemini-2.5-pro-preview-06-05">gemini-2.5-pro-preview-06-05</option>
|
||||
<option value="gemini-2.5-pro-preview-05-06">gemini-2.5-pro-preview-05-06</option>
|
||||
<option value="gemini-2.5-pro-preview-03-25">gemini-2.5-pro-preview-03-25</option>
|
||||
<option value="gemini-2.5-pro-exp-03-25">gemini-2.5-pro-exp-03-25</option>
|
||||
|
@@ -85,6 +85,7 @@
|
||||
<option data-type="anthropic" value="claude-3-opus-20240229">claude-3-opus-20240229</option>
|
||||
<option data-type="anthropic" value="claude-3-sonnet-20240229">claude-3-sonnet-20240229</option>
|
||||
<option data-type="anthropic" value="claude-3-haiku-20240307">claude-3-haiku-20240307</option>
|
||||
<option data-type="google" value="gemini-2.5-pro-preview-06-05">gemini-2.5-pro-preview-06-05</option>
|
||||
<option data-type="google" value="gemini-2.5-pro-preview-05-06">gemini-2.5-pro-preview-05-06</option>
|
||||
<option data-type="google" value="gemini-2.5-pro-preview-03-25">gemini-2.5-pro-preview-03-25</option>
|
||||
<option data-type="google" value="gemini-2.5-pro-exp-03-25">gemini-2.5-pro-exp-03-25</option>
|
||||
@@ -116,6 +117,7 @@
|
||||
<option data-type="google" value="gemini-1.5-flash-8b-exp-0827">gemini-1.5-flash-8b-exp-0827</option>
|
||||
<option data-type="google" value="learnlm-2.0-flash-experimental">learnlm-2.0-flash-experimental</option>
|
||||
<option data-type="google" value="learnlm-1.5-pro-experimental">learnlm-1.5-pro-experimental</option>
|
||||
<option data-type="vertexai" value="gemini-2.5-pro-preview-06-05">gemini-2.5-pro-preview-06-05</option>
|
||||
<option data-type="vertexai" value="gemini-2.5-pro-preview-05-06">gemini-2.5-pro-preview-05-06</option>
|
||||
<option data-type="vertexai" value="gemini-2.5-pro-preview-03-25">gemini-2.5-pro-preview-03-25</option>
|
||||
<option data-type="vertexai" value="gemini-2.5-flash-preview-05-20">gemini-2.5-flash-preview-05-20</option>
|
||||
|
@@ -414,7 +414,6 @@ async function sendMakerSuiteRequest(request, response) {
|
||||
];
|
||||
|
||||
const isThinkingConfigModel = m => /^gemini-2.5-(flash|pro)/.test(m);
|
||||
const isThinkingBudgetModel = m => /^gemini-2.5-flash/.test(m);
|
||||
|
||||
const noSearchModels = [
|
||||
'gemini-2.0-flash-lite',
|
||||
@@ -470,12 +469,10 @@ async function sendMakerSuiteRequest(request, response) {
|
||||
if (isThinkingConfigModel(model)) {
|
||||
const thinkingConfig = { includeThoughts: includeReasoning };
|
||||
|
||||
if (isThinkingBudgetModel(model)) {
|
||||
const thinkingBudget = calculateGoogleBudgetTokens(generationConfig.maxOutputTokens, reasoningEffort);
|
||||
const thinkingBudget = calculateGoogleBudgetTokens(generationConfig.maxOutputTokens, reasoningEffort, model);
|
||||
if (Number.isInteger(thinkingBudget)) {
|
||||
thinkingConfig.thinkingBudget = thinkingBudget;
|
||||
}
|
||||
}
|
||||
|
||||
generationConfig.thinkingConfig = thinkingConfig;
|
||||
}
|
||||
|
@@ -992,9 +992,11 @@ export function calculateClaudeBudgetTokens(maxTokens, reasoningEffort, stream)
|
||||
* Calculate the Google budget tokens for a given reasoning effort.
|
||||
* @param {number} maxTokens Maximum tokens
|
||||
* @param {string} reasoningEffort Reasoning effort
|
||||
* @param {string} model Model name
|
||||
* @returns {number?} Budget tokens
|
||||
*/
|
||||
export function calculateGoogleBudgetTokens(maxTokens, reasoningEffort) {
|
||||
export function calculateGoogleBudgetTokens(maxTokens, reasoningEffort, model) {
|
||||
function getFlashBudget() {
|
||||
let budgetTokens = 0;
|
||||
|
||||
switch (reasoningEffort) {
|
||||
@@ -1021,3 +1023,42 @@ export function calculateGoogleBudgetTokens(maxTokens, reasoningEffort) {
|
||||
|
||||
return budgetTokens;
|
||||
}
|
||||
|
||||
function getProBudget() {
|
||||
let budgetTokens = 0;
|
||||
|
||||
switch (reasoningEffort) {
|
||||
case REASONING_EFFORT.auto:
|
||||
return null;
|
||||
case REASONING_EFFORT.min:
|
||||
budgetTokens = 128;
|
||||
break;
|
||||
case REASONING_EFFORT.low:
|
||||
budgetTokens = Math.floor(maxTokens * 0.1);
|
||||
break;
|
||||
case REASONING_EFFORT.medium:
|
||||
budgetTokens = Math.floor(maxTokens * 0.25);
|
||||
break;
|
||||
case REASONING_EFFORT.high:
|
||||
budgetTokens = Math.floor(maxTokens * 0.5);
|
||||
break;
|
||||
case REASONING_EFFORT.max:
|
||||
budgetTokens = maxTokens;
|
||||
break;
|
||||
}
|
||||
|
||||
budgetTokens = Math.max(Math.min(budgetTokens, 32768), 128);
|
||||
|
||||
return budgetTokens;
|
||||
}
|
||||
|
||||
if (model.includes('flash')) {
|
||||
return getFlashBudget();
|
||||
}
|
||||
|
||||
if (model.includes('pro')) {
|
||||
return getProBudget();
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
Reference in New Issue
Block a user