claude-sonnet-4-5

c4cc6f611e1516a18c642a0e92cd447ce80bb927

Cohee <18619528+Cohee1207@users.noreply.github.com>

4 files changed, +7 -2Showing whitespace changes
public/index.html+1 -0
@@ -3016,6 +3016,7 @@
3016 <h4 data-i18n="Claude Model">Claude Model</h4>3016 <h4 data-i18n="Claude Model">Claude Model</h4>
3017 <select id="model_claude_select">3017 <select id="model_claude_select">
3018 <optgroup label="Versions">3018 <optgroup label="Versions">
3019 <option value="claude-sonnet-4-5">claude-sonnet-4-5</option>
3019 <option value="claude-opus-4-1">claude-opus-4-1</option>3020 <option value="claude-opus-4-1">claude-opus-4-1</option>
3020 <option value="claude-opus-4-1-20250805">claude-opus-4-1-20250805</option>3021 <option value="claude-opus-4-1-20250805">claude-opus-4-1-20250805</option>
3021 <option value="claude-opus-4-0">claude-opus-4-0</option>3022 <option value="claude-opus-4-0">claude-opus-4-0</option>
public/scripts/extensions/caption/settings.html+1 -0
@@ -81,6 +81,7 @@
81 <option data-type="openai" value="o4-mini-2025-04-16">o4-mini-2025-04-16</option>81 <option data-type="openai" value="o4-mini-2025-04-16">o4-mini-2025-04-16</option>
82 <option data-type="openai" value="gpt-4.5-preview">gpt-4.5-preview</option>82 <option data-type="openai" value="gpt-4.5-preview">gpt-4.5-preview</option>
83 <option data-type="openai" value="gpt-4.5-preview-2025-02-27">gpt-4.5-preview-2025-02-27</option>83 <option data-type="openai" value="gpt-4.5-preview-2025-02-27">gpt-4.5-preview-2025-02-27</option>
84 <option data-type="anthropic" value="claude-sonnet-4-5">claude-sonnet-4-5</option>
84 <option data-type="anthropic" value="claude-opus-4-1">claude-opus-4-1</option>85 <option data-type="anthropic" value="claude-opus-4-1">claude-opus-4-1</option>
85 <option data-type="anthropic" value="claude-opus-4-1-20250805">claude-opus-4-1-20250805</option>86 <option data-type="anthropic" value="claude-opus-4-1-20250805">claude-opus-4-1-20250805</option>
86 <option data-type="anthropic" value="claude-opus-4-0">claude-opus-4-0</option>87 <option data-type="anthropic" value="claude-opus-4-0">claude-opus-4-0</option>
public/scripts/openai.js+3 -0
@@ -5033,6 +5033,9 @@ async function onModelChange() {
5033 if (oai_settings.max_context_unlocked) {5033 if (oai_settings.max_context_unlocked) {
5034 $('#openai_max_context').attr('max', max_200k);5034 $('#openai_max_context').attr('max', max_200k);
5035 }5035 }
5036 else if (value.startsWith('claude-sonnet-4-5')) {
5037 $('#openai_max_context').attr('max', max_1mil);
5038 }
5036 else if (value == 'claude-2.1' || value.startsWith('claude-3') || value.startsWith('claude-opus') || value.startsWith('claude-sonnet')) {5039 else if (value == 'claude-2.1' || value.startsWith('claude-3') || value.startsWith('claude-opus') || value.startsWith('claude-sonnet')) {
5037 $('#openai_max_context').attr('max', max_200k);5040 $('#openai_max_context').attr('max', max_200k);
5038 }5041 }
src/endpoints/backends/chat-completions.js+2 -2
@@ -156,7 +156,7 @@ async function sendClaudeRequest(request, response) {
156 const convertedPrompt = convertClaudeMessages(request.body.messages, request.body.assistant_prefill, useSystemPrompt, useTools, getPromptNames(request));156 const convertedPrompt = convertClaudeMessages(request.body.messages, request.body.assistant_prefill, useSystemPrompt, useTools, getPromptNames(request));
157 const useThinking = /^claude-(3-7|opus-4|sonnet-4)/.test(request.body.model);157 const useThinking = /^claude-(3-7|opus-4|sonnet-4)/.test(request.body.model);
158 const useWebSearch = /^claude-(3-5|3-7|opus-4|sonnet-4)/.test(request.body.model) && Boolean(request.body.enable_web_search);158 const useWebSearch = /^claude-(3-5|3-7|opus-4|sonnet-4)/.test(request.body.model) && Boolean(request.body.enable_web_search);
159 const isOpus41 = /^claude-opus-4-1/.test(request.body.model);159 const isLimitedSampling = /^claude-(opus-4-1|sonnet-4-5)/.test(request.body.model);
160 const cacheTTL = getConfigValue('claude.extendedTTL', false, 'boolean') ? '1h' : '5m';160 const cacheTTL = getConfigValue('claude.extendedTTL', false, 'boolean') ? '1h' : '5m';
161 let fixThinkingPrefill = false;161 let fixThinkingPrefill = false;
162 // Add custom stop sequences162 // Add custom stop sequences
@@ -226,7 +226,7 @@ async function sendClaudeRequest(request, response) {
226 betaHeaders.push('extended-cache-ttl-2025-04-11');226 betaHeaders.push('extended-cache-ttl-2025-04-11');
227 }227 }
228228
229 if (isOpus41) {229 if (isLimitedSampling) {
230 if (requestBody.top_p < 1) {230 if (requestBody.top_p < 1) {
231 delete requestBody.temperature;231 delete requestBody.temperature;
232 } else {232 } else {