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');
|
betaHeaders.push('prompt-caching-2024-07-31');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (useThinking) {
|
|
||||||
// No prefill when thinking
|
|
||||||
voidPrefill = true;
|
|
||||||
const reasoningEffort = request.body.reasoning_effort;
|
const reasoningEffort = request.body.reasoning_effort;
|
||||||
const budgetTokens = calculateClaudeBudgetTokens(requestBody.max_tokens, reasoningEffort, requestBody.stream);
|
const budgetTokens = calculateClaudeBudgetTokens(requestBody.max_tokens, reasoningEffort, requestBody.stream);
|
||||||
|
|
||||||
|
if (useThinking && Number.isInteger(budgetTokens)) {
|
||||||
|
// No prefill when thinking
|
||||||
|
voidPrefill = true;
|
||||||
const minThinkTokens = 1024;
|
const minThinkTokens = 1024;
|
||||||
if (requestBody.max_tokens <= minThinkTokens) {
|
if (requestBody.max_tokens <= minThinkTokens) {
|
||||||
const newValue = 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 {number} maxTokens Maximum tokens
|
||||||
* @param {string} reasoningEffort Reasoning effort
|
* @param {string} reasoningEffort Reasoning effort
|
||||||
* @param {boolean} stream If streaming is enabled
|
* @param {boolean} stream If streaming is enabled
|
||||||
* @returns {number} Budget tokens
|
* @returns {number?} Budget tokens
|
||||||
*/
|
*/
|
||||||
export function calculateClaudeBudgetTokens(maxTokens, reasoningEffort, stream) {
|
export function calculateClaudeBudgetTokens(maxTokens, reasoningEffort, stream) {
|
||||||
let budgetTokens = 0;
|
let budgetTokens = 0;
|
||||||
|
|
||||||
switch (reasoningEffort) {
|
switch (reasoningEffort) {
|
||||||
|
case REASONING_EFFORT.auto:
|
||||||
|
return null;
|
||||||
case REASONING_EFFORT.min:
|
case REASONING_EFFORT.min:
|
||||||
budgetTokens = 1024;
|
budgetTokens = 1024;
|
||||||
break;
|
break;
|
||||||
case REASONING_EFFORT.low:
|
case REASONING_EFFORT.low:
|
||||||
budgetTokens = Math.floor(maxTokens * 0.1);
|
budgetTokens = Math.floor(maxTokens * 0.1);
|
||||||
break;
|
break;
|
||||||
case REASONING_EFFORT.auto:
|
|
||||||
case REASONING_EFFORT.medium:
|
case REASONING_EFFORT.medium:
|
||||||
budgetTokens = Math.floor(maxTokens * 0.25);
|
budgetTokens = Math.floor(maxTokens * 0.25);
|
||||||
break;
|
break;
|
||||||
|
Reference in New Issue
Block a user