Proper params adjust for Horde

This commit is contained in:
SillyLossy
2023-05-06 19:02:49 +03:00
parent 137c0e53e6
commit 2f7a5885f3

View File

@ -1780,18 +1780,16 @@ async function Generate(type, { automatic_trigger, force_name2, resolve, reject,
} }
// Adjust token limit for Horde // Adjust token limit for Horde
let hordeAmountGen = null;
if (main_api == 'kobold' && horde_settings.use_horde && horde_settings.auto_adjust) {
let adjustedParams; let adjustedParams;
if (main_api == 'kobold' && horde_settings.use_horde && horde_settings.auto_adjust) {
try { try {
adjustedParams = await adjustHordeGenerationParams(this_max_context, amount_gen); adjustedParams = await adjustHordeGenerationParams(max_context, amount_gen);
} }
catch { catch {
activateSendButtons(); activateSendButtons();
return; return;
} }
this_max_context = adjustedParams.maxContextLength; this_max_context = (adjustedParams.maxContextLength - adjustedParams.maxLength);
hordeAmountGen = adjustedParams.maxLength;
} }
// Extension added strings // Extension added strings
@ -2096,8 +2094,8 @@ async function Generate(type, { automatic_trigger, force_name2, resolve, reject,
} }
} }
if (main_api == 'kobold' && horde_settings.use_horde && hordeAmountGen) { if (main_api == 'kobold' && horde_settings.use_horde && adjustedParams) {
this_amount_gen = Math.min(this_amount_gen, hordeAmountGen); this_amount_gen = Math.min(this_amount_gen, adjustedParams.maxLength);
this_amount_gen = Math.max(this_amount_gen, MIN_AMOUNT_GEN); // prevent validation errors this_amount_gen = Math.max(this_amount_gen, MIN_AMOUNT_GEN); // prevent validation errors
} }
@ -2113,7 +2111,8 @@ async function Generate(type, { automatic_trigger, force_name2, resolve, reject,
}; };
if (preset_settings != 'gui' || horde_settings.use_horde) { if (preset_settings != 'gui' || horde_settings.use_horde) {
generate_data = getKoboldGenerationData(finalPromt, this_settings, this_amount_gen, max_context, isImpersonate); const maxContext = horde_settings.use_horde && adjustedParams ? adjustedParams.maxContextLength : max_context;
generate_data = getKoboldGenerationData(finalPromt, this_settings, this_amount_gen, maxContext, isImpersonate);
} }
} }