mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-06-05 21:59:27 +02:00
Sonnet 3.7
This commit is contained in:
@ -2915,6 +2915,8 @@
|
|||||||
<h4 data-i18n="Claude Model">Claude Model</h4>
|
<h4 data-i18n="Claude Model">Claude Model</h4>
|
||||||
<select id="model_claude_select">
|
<select id="model_claude_select">
|
||||||
<optgroup label="Versions">
|
<optgroup label="Versions">
|
||||||
|
<option value="claude-3-7-sonnet-latest">claude-3-7-sonnet-latest</option>
|
||||||
|
<option value="claude-3-7-sonnet-20250219">claude-3-7-sonnet-20250219</option>
|
||||||
<option value="claude-3-5-sonnet-latest">claude-3-5-sonnet-latest</option>
|
<option value="claude-3-5-sonnet-latest">claude-3-5-sonnet-latest</option>
|
||||||
<option value="claude-3-5-sonnet-20241022">claude-3-5-sonnet-20241022</option>
|
<option value="claude-3-5-sonnet-20241022">claude-3-5-sonnet-20241022</option>
|
||||||
<option value="claude-3-5-sonnet-20240620">claude-3-5-sonnet-20240620</option>
|
<option value="claude-3-5-sonnet-20240620">claude-3-5-sonnet-20240620</option>
|
||||||
|
@ -45,6 +45,8 @@
|
|||||||
<option data-type="openai" value="gpt-4o">gpt-4o</option>
|
<option data-type="openai" value="gpt-4o">gpt-4o</option>
|
||||||
<option data-type="openai" value="gpt-4o-mini">gpt-4o-mini</option>
|
<option data-type="openai" value="gpt-4o-mini">gpt-4o-mini</option>
|
||||||
<option data-type="openai" value="chatgpt-4o-latest">chatgpt-4o-latest</option>
|
<option data-type="openai" value="chatgpt-4o-latest">chatgpt-4o-latest</option>
|
||||||
|
<option data-type="anthropic" value="claude-3-7-sonnet-latest">claude-3-7-sonnet-latest</option>
|
||||||
|
<option data-type="anthropic" value="claude-3-7-sonnet-20250219">claude-3-7-sonnet-20250219</option>
|
||||||
<option data-type="anthropic" value="claude-3-5-sonnet-latest">claude-3-5-sonnet-latest</option>
|
<option data-type="anthropic" value="claude-3-5-sonnet-latest">claude-3-5-sonnet-latest</option>
|
||||||
<option data-type="anthropic" value="claude-3-5-sonnet-20241022">claude-3-5-sonnet-20241022</option>
|
<option data-type="anthropic" value="claude-3-5-sonnet-20241022">claude-3-5-sonnet-20241022</option>
|
||||||
<option data-type="anthropic" value="claude-3-5-sonnet-20240620">claude-3-5-sonnet-20240620</option>
|
<option data-type="anthropic" value="claude-3-5-sonnet-20240620">claude-3-5-sonnet-20240620</option>
|
||||||
|
@ -4981,6 +4981,7 @@ export function isImageInliningSupported() {
|
|||||||
'gemini-1.5-pro-exp-0827',
|
'gemini-1.5-pro-exp-0827',
|
||||||
'claude-3',
|
'claude-3',
|
||||||
'claude-3-5',
|
'claude-3-5',
|
||||||
|
'claude-3-7',
|
||||||
'gpt-4-turbo',
|
'gpt-4-turbo',
|
||||||
'gpt-4o',
|
'gpt-4o',
|
||||||
'gpt-4o-mini',
|
'gpt-4o-mini',
|
||||||
|
@ -125,6 +125,7 @@ async function sendClaudeRequest(request, response) {
|
|||||||
controller.abort();
|
controller.abort();
|
||||||
});
|
});
|
||||||
const additionalHeaders = {};
|
const additionalHeaders = {};
|
||||||
|
const betaHeaders = ['output-128k-2025-02-19'];
|
||||||
const useTools = request.body.model.startsWith('claude-3') && Array.isArray(request.body.tools) && request.body.tools.length > 0;
|
const useTools = request.body.model.startsWith('claude-3') && Array.isArray(request.body.tools) && request.body.tools.length > 0;
|
||||||
const useSystemPrompt = (request.body.model.startsWith('claude-2') || request.body.model.startsWith('claude-3')) && request.body.claude_use_sysprompt;
|
const useSystemPrompt = (request.body.model.startsWith('claude-2') || request.body.model.startsWith('claude-3')) && request.body.claude_use_sysprompt;
|
||||||
const convertedPrompt = convertClaudeMessages(request.body.messages, request.body.assistant_prefill, useSystemPrompt, useTools, getPromptNames(request));
|
const convertedPrompt = convertClaudeMessages(request.body.messages, request.body.assistant_prefill, useSystemPrompt, useTools, getPromptNames(request));
|
||||||
@ -155,7 +156,7 @@ async function sendClaudeRequest(request, response) {
|
|||||||
delete requestBody.system;
|
delete requestBody.system;
|
||||||
}
|
}
|
||||||
if (useTools) {
|
if (useTools) {
|
||||||
additionalHeaders['anthropic-beta'] = 'tools-2024-05-16';
|
betaHeaders.push('tools-2024-05-16');
|
||||||
requestBody.tool_choice = { type: request.body.tool_choice };
|
requestBody.tool_choice = { type: request.body.tool_choice };
|
||||||
requestBody.tools = request.body.tools
|
requestBody.tools = request.body.tools
|
||||||
.filter(tool => tool.type === 'function')
|
.filter(tool => tool.type === 'function')
|
||||||
@ -176,7 +177,11 @@ async function sendClaudeRequest(request, response) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (enableSystemPromptCache || cachingAtDepth !== -1) {
|
if (enableSystemPromptCache || cachingAtDepth !== -1) {
|
||||||
additionalHeaders['anthropic-beta'] = 'prompt-caching-2024-07-31';
|
betaHeaders.push('prompt-caching-2024-07-31');
|
||||||
|
}
|
||||||
|
|
||||||
|
if (betaHeaders.length) {
|
||||||
|
additionalHeaders['anthropic-beta'] = betaHeaders.join(',');
|
||||||
}
|
}
|
||||||
|
|
||||||
console.debug('Claude request:', requestBody);
|
console.debug('Claude request:', requestBody);
|
||||||
|
Reference in New Issue
Block a user