claude-haiku-4-5

23a59f27f13f40d8e01a8e2871aa76e459bba2b1

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

3 files changed, +10 -4Showing whitespace changes
public/index.html+3 -0
@@ -3017,6 +3017,9 @@
30173017 <select id="model_claude_select">
30183018 <optgroup label="Versions">
30193019 <option value="claude-sonnet-4-5">claude-sonnet-4-5</option>
3020+ <option value="claude-sonnet-4-5-20250929">claude-sonnet-4-5-20250929</option>
3021+ <option value="claude-haiku-4-5">claude-haiku-4-5</option>
3022+ <option value="claude-haiku-4-5-20251001">claude-haiku-4-5-20251001</option>
30203023 <option value="claude-opus-4-1">claude-opus-4-1</option>
30213024 <option value="claude-opus-4-1-20250805">claude-opus-4-1-20250805</option>
30223025 <option value="claude-opus-4-0">claude-opus-4-0</option>
public/scripts/extensions/caption/settings.html+3 -0
@@ -82,6 +82,9 @@
8282 <option data-type="openai" value="gpt-4.5-preview">gpt-4.5-preview</option>
8383 <option data-type="openai" value="gpt-4.5-preview-2025-02-27">gpt-4.5-preview-2025-02-27</option>
8484 <option data-type="anthropic" value="claude-sonnet-4-5">claude-sonnet-4-5</option>
85+ <option data-type="anthropic" value="claude-sonnet-4-5-20250929">claude-sonnet-4-5-20250929</option>
86+ <option data-type="anthropic" value="claude-haiku-4-5">claude-haiku-4-5</option>
87+ <option data-type="anthropic" value="claude-haiku-4-5-20251001">claude-haiku-4-5-20251001</option>
8588 <option data-type="anthropic" value="claude-opus-4-1">claude-opus-4-1</option>
8689 <option data-type="anthropic" value="claude-opus-4-1-20250805">claude-opus-4-1-20250805</option>
8790 <option data-type="anthropic" value="claude-opus-4-0">claude-opus-4-0</option>
src/endpoints/backends/chat-completions.js+4 -4
@@ -154,9 +154,9 @@ async function sendClaudeRequest(request, response) {
154154 const useTools = Array.isArray(request.body.tools) && request.body.tools.length > 0;
155155 const useSystemPrompt = Boolean(request.body.claude_use_sysprompt);
156156 const convertedPrompt = convertClaudeMessages(request.body.messages, request.body.assistant_prefill, useSystemPrompt, useTools, getPromptNames(request));
157157 const useThinking = /^claude-(3-7|opus-4|sonnet-4|haiku-4-5)/.test(request.body.model);
158158 const useWebSearch = /^claude-(3-5|3-7|opus-4|sonnet-4|haiku-4-5)/.test(request.body.model) && Boolean(request.body.enable_web_search);
159159 const isLimitedSampling = /^claude-(opus-4-1|sonnet-4-5|haiku-4-5)/.test(request.body.model);
160160 const cacheTTL = getConfigValue('claude.extendedTTL', false, 'boolean') ? '1h' : '5m';
161161 let fixThinkingPrefill = false;
162162 // Add custom stop sequences
@@ -1834,7 +1834,7 @@ router.post('/generate', function (request, response) {
18341834 }
18351835
18361836 const cachingAtDepth = getConfigValue('claude.cachingAtDepth', -1, 'number');
18371837 const isClaude3or4 = /anthropic\/claude-(3|opus-4|sonnet-4|haiku-4-5)/.test(request.body.model);
18381838 const cacheTTL = getConfigValue('claude.extendedTTL', false, 'boolean') ? '1h' : '5m';
18391839 if (Array.isArray(request.body.messages) && Number.isInteger(cachingAtDepth) && cachingAtDepth >= 0 && isClaude3or4) {
18401840 cachingAtDepthForOpenRouterClaude(request.body.messages, cachingAtDepth, cacheTTL);