mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-06-05 21:59:27 +02:00
@@ -61,6 +61,7 @@ const API_DEEPSEEK = 'https://api.deepseek.com/beta';
|
||||
* @returns
|
||||
*/
|
||||
function postProcessPrompt(messages, type, names) {
|
||||
const addAssistantPrefix = x => x.length && (x[x.length - 1].role !== 'assistant' || (x[x.length - 1].prefix = true)) ? x : x;
|
||||
switch (type) {
|
||||
case 'merge':
|
||||
case 'claude':
|
||||
@@ -70,7 +71,9 @@ function postProcessPrompt(messages, type, names) {
|
||||
case 'strict':
|
||||
return mergeMessages(messages, names, true, true);
|
||||
case 'deepseek':
|
||||
return (x => x.length && (x[x.length - 1].role !== 'assistant' || (x[x.length - 1].prefix = true)) ? x : x)(mergeMessages(messages, names, true, false));
|
||||
return addAssistantPrefix(mergeMessages(messages, names, true, false));
|
||||
case 'deepseek-reasoner':
|
||||
return addAssistantPrefix(mergeMessages(messages, names, true, true));
|
||||
default:
|
||||
return messages;
|
||||
}
|
||||
@@ -965,7 +968,8 @@ router.post('/generate', jsonParser, function (request, response) {
|
||||
bodyParams['logprobs'] = true;
|
||||
}
|
||||
|
||||
request.body.messages = postProcessPrompt(request.body.messages, 'deepseek', getPromptNames(request));
|
||||
const postProcessType = String(request.body.model).endsWith('-reasoner') ? 'deepseek-reasoner' : 'deepseek';
|
||||
request.body.messages = postProcessPrompt(request.body.messages, postProcessType, getPromptNames(request));
|
||||
} else {
|
||||
console.log('This chat completion source is not supported yet.');
|
||||
return response.status(400).send({ error: true });
|
||||
|
Reference in New Issue
Block a user