mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-06-05 21:59:27 +02:00
Claude: "Auto" effort = no thinking
This commit is contained in:
@@ -200,11 +200,12 @@ async function sendClaudeRequest(request, response) {
|
||||
betaHeaders.push('prompt-caching-2024-07-31');
|
||||
}
|
||||
|
||||
if (useThinking) {
|
||||
const reasoningEffort = request.body.reasoning_effort;
|
||||
const budgetTokens = calculateClaudeBudgetTokens(requestBody.max_tokens, reasoningEffort, requestBody.stream);
|
||||
|
||||
if (useThinking && Number.isInteger(budgetTokens)) {
|
||||
// No prefill when thinking
|
||||
voidPrefill = true;
|
||||
const reasoningEffort = request.body.reasoning_effort;
|
||||
const budgetTokens = calculateClaudeBudgetTokens(requestBody.max_tokens, reasoningEffort, requestBody.stream);
|
||||
const minThinkTokens = 1024;
|
||||
if (requestBody.max_tokens <= minThinkTokens) {
|
||||
const newValue = requestBody.max_tokens + minThinkTokens;
|
||||
|
@@ -917,19 +917,20 @@ export function cachingAtDepthForOpenRouterClaude(messages, cachingAtDepth) {
|
||||
* @param {number} maxTokens Maximum tokens
|
||||
* @param {string} reasoningEffort Reasoning effort
|
||||
* @param {boolean} stream If streaming is enabled
|
||||
* @returns {number} Budget tokens
|
||||
* @returns {number?} Budget tokens
|
||||
*/
|
||||
export function calculateClaudeBudgetTokens(maxTokens, reasoningEffort, stream) {
|
||||
let budgetTokens = 0;
|
||||
|
||||
switch (reasoningEffort) {
|
||||
case REASONING_EFFORT.auto:
|
||||
return null;
|
||||
case REASONING_EFFORT.min:
|
||||
budgetTokens = 1024;
|
||||
break;
|
||||
case REASONING_EFFORT.low:
|
||||
budgetTokens = Math.floor(maxTokens * 0.1);
|
||||
break;
|
||||
case REASONING_EFFORT.auto:
|
||||
case REASONING_EFFORT.medium:
|
||||
budgetTokens = Math.floor(maxTokens * 0.25);
|
||||
break;
|
||||
|
Reference in New Issue
Block a user