Added stop sequences for Kobold.cpp

This commit is contained in:
SillyLossy
2023-04-16 23:02:23 +03:00
parent 247d65f30b
commit 9616b26402
3 changed files with 12 additions and 7 deletions

View File

@@ -128,6 +128,7 @@ export {
getTokenCount,
isStreamingEnabled,
getThumbnailUrl,
getStoppingStrings,
chat,
this_chid,
settings,
@@ -1013,10 +1014,11 @@ function substituteParams(content, _name1, _name2) {
return content;
}
function getStoppingStrings(isImpersonate) {
const charString = `"\n${name2}: "`;
const userString = is_pygmalion ? `"\nYou: "` : `"\n${name1}: "`;
return isImpersonate ? charString : userString;
function getStoppingStrings(isImpersonate, wrapInQuotes) {
const charString = `\n${name2}: `;
const userString = is_pygmalion ? `\nYou: ` : `\n${name1}: `;
const result = isImpersonate ? charString : userString;
return wrapInQuotes ? `"${result}"` : result;
}
function getSlashCommand(message, type) {
@@ -1862,7 +1864,7 @@ async function Generate(type, automatic_trigger, force_name2) {
};
if (preset_settings != 'gui' || horde_settings.use_horde) {
generate_data = getKoboldGenerationData(finalPromt, this_settings, this_amount_gen, this_max_context);
generate_data = getKoboldGenerationData(finalPromt, this_settings, this_amount_gen, this_max_context, isImpersonate);
}
}
@@ -1886,7 +1888,7 @@ async function Generate(type, automatic_trigger, force_name2) {
'early_stopping': textgenerationwebui_settings.early_stopping,
'seed': textgenerationwebui_settings.seed,
'add_bos_token': textgenerationwebui_settings.add_bos_token,
'custom_stopping_strings': JSON.stringify(getStoppingStrings(isImpersonate)),
'custom_stopping_strings': JSON.stringify(getStoppingStrings(isImpersonate, false)),
'truncation_length': max_context,
'ban_eos_token': textgenerationwebui_settings.ban_eos_token,
'skip_special_tokens': textgenerationwebui_settings.skip_special_tokens,

View File

@@ -1,5 +1,6 @@
import {
saveSettingsDebounced,
getStoppingStrings,
} from "../script.js";
export {
@@ -55,7 +56,7 @@ function loadKoboldSettings(preset) {
}
}
function getKoboldGenerationData(finalPromt, this_settings, this_amount_gen, this_max_context) {
function getKoboldGenerationData(finalPromt, this_settings, this_amount_gen, this_max_context, isImpersonate) {
let generate_data = {
prompt: finalPromt,
gui_settings: false,
@@ -80,6 +81,7 @@ function getKoboldGenerationData(finalPromt, this_settings, this_amount_gen, thi
s7: this_settings.sampler_order[6],
use_world_info: false,
singleline: kai_settings.single_line,
stop_sequence: [getStoppingStrings(isImpersonate, false)],
};
return generate_data;
}

View File

@@ -270,6 +270,7 @@ app.post("/generate", jsonParser, async function (request, response_generate = r
typical: request.body.typical,
sampler_order: sampler_order,
singleline: !!request.body.singleline,
stop_sequence: request.body.stop_sequence || [],
};
}