claude-sonnet-4-6
| @@ -3107,6 +3107,7 @@ | ||
| 3107 | 3107 | <option value="claude-opus-4-6">claude-opus-4-6</option> |
| 3108 | 3108 | <option value="claude-opus-4-5">claude-opus-4-5</option> |
| 3109 | 3109 | <option value="claude-opus-4-5-20251101">claude-opus-4-5-20251101</option> |
| 3110 | + <option value="claude-sonnet-4-6">claude-sonnet-4-6</option> | |
| 3110 | 3111 | <option value="claude-sonnet-4-5">claude-sonnet-4-5</option> |
| 3111 | 3112 | <option value="claude-sonnet-4-5-20250929">claude-sonnet-4-5-20250929</option> |
| 3112 | 3113 | <option value="claude-haiku-4-5">claude-haiku-4-5</option> |
| @@ -89,6 +89,7 @@ | ||
| 89 | 89 | <option data-type="anthropic" value="claude-opus-4-6">claude-opus-4-6</option> |
| 90 | 90 | <option data-type="anthropic" value="claude-opus-4-5">claude-opus-4-5</option> |
| 91 | 91 | <option data-type="anthropic" value="claude-opus-4-5-20251101">claude-opus-4-5-20251101</option> |
| 92 | + <option data-type="anthropic" value="claude-sonnet-4-6">claude-sonnet-4-6</option> | |
| 92 | 93 | <option data-type="anthropic" value="claude-sonnet-4-5">claude-sonnet-4-5</option> |
| 93 | 94 | <option data-type="anthropic" value="claude-sonnet-4-5-20250929">claude-sonnet-4-5-20250929</option> |
| 94 | 95 | <option data-type="anthropic" value="claude-haiku-4-5">claude-haiku-4-5</option> |
| @@ -132,8 +132,6 @@ const max_256k = 256 * 1000; | ||
| 132 | 132 | const max_400k = 400 * 1000; |
| 133 | 133 | const max_1mil = 1000 * 1000; |
| 134 | 134 | const max_2mil = 2000 * 1000; |
| 135 | -const claude_max = 9000; // We have a proper tokenizer, so theoretically could be larger (up to 9k) | |
| 136 | -const claude_100k_max = 99000; | |
| 137 | 135 | const unlocked_max = max_2mil; |
| 138 | 136 | const oai_max_temp = 2.0; |
| 139 | 137 | const claude_max_temp = 1.0; |
| @@ -5259,14 +5257,12 @@ async function onModelChange() { | ||
| 5259 | 5257 | if (oai_settings.chat_completion_source == chat_completion_sources.CLAUDE) { |
| 5260 | 5258 | if (oai_settings.max_context_unlocked) { |
| 5261 | 5259 | $('#openai_max_context').attr('max', unlocked_max); |
| 5262 | 5260 | } else if (value.startsWith('/^claude-(sonnet-4-5') || value.startsWith('claudesonnet-4-6|opus-4-6')/.test(value)) { |
| 5263 | 5261 | $('#openai_max_context').attr('max', max_1mil); |
| 5264 | - } else if (value == 'claude-2.1' || value.startsWith('claude-3') || value.startsWith('claude-opus') || value.startsWith('claude-haiku') || value.startsWith('claude-sonnet')) { | |
| 5262 | + } else if (/^claude-(3|opus|haiku|sonnet)/.test(value)) { | |
| 5265 | 5263 | $('#openai_max_context').attr('max', max_200k); |
| 5266 | - } else if (value.endsWith('100k') || value.startsWith('claude-2') || value === 'claude-instant-1.2') { | |
| 5267 | - $('#openai_max_context').attr('max', claude_100k_max); | |
| 5268 | 5264 | } else { |
| 5269 | 5265 | $('#openai_max_context').attr('max', claude_maxmax_200k); |
| 5270 | 5266 | } |
| 5271 | 5267 | |
| 5272 | 5268 | oai_settings.openai_max_context = Math.min(oai_settings.openai_max_context, Number($('#openai_max_context').attr('max'))); |
| @@ -223,11 +223,11 @@ async function sendClaudeRequest(request, response) { | ||
| 223 | 223 | const useTools = Array.isArray(request.body.tools) && request.body.tools.length > 0; |
| 224 | 224 | const useSystemPrompt = Boolean(request.body.use_sysprompt); |
| 225 | 225 | const convertedPrompt = convertClaudeMessages(request.body.messages, request.body.assistant_prefill, useSystemPrompt, useTools, getPromptNames(request)); |
| 226 | 226 | const useThinking = /^claude-(3-7|opus-4|sonnet-4|haiku-4-5|opus-4-5|opus-4-6|sonnet-4-6)/.test(request.body.model); |
| 227 | 227 | const useWebSearch = /^claude-(3-5|3-7|opus-4|sonnet-4|haiku-4-5|opus-4-5|opus-4-6|sonnet-4-6)/.test(request.body.model) && Boolean(request.body.enable_web_search); |
| 228 | 228 | const isLimitedSampling = /^claude-(opus-4-1|sonnet-4-5|haiku-4-5|opus-4-5|opus-4-6|sonnet-4-6)/.test(request.body.model); |
| 229 | 229 | const useVerbosity = /^claude-(opus-4-5|opus-4-6|sonnet-4-6)/.test(request.body.model); |
| 230 | 230 | const noPrefillModel = /^claude-(opus-4-6|sonnet-4-6)/.test(request.body.model); |
| 231 | 231 | let fixThinkingPrefill = false; |
| 232 | 232 | // Add custom stop sequences |
| 233 | 233 | const stopSequences = []; |