Refactor sequence breaker parsing in getTextGenGenerationData function

fc1020a8e4d640823a460ff1d9403e0f54fe7494

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

1 files changed, +12 -22Showing whitespace changes
public/scripts/textgen-settings.js+12 -22
@@ -1338,6 +1338,16 @@ export async function getTextGenGenerationData(finalPrompt, maxTokens, isImperso
13381338 'nsigma': settings.nsigma,
13391339 'top_n_sigma': settings.nsigma,
13401340 'min_keep': settings.min_keep,
1341+ parseSequenceBreakers: function () {
1342+ try {
1343+ return JSON.parse(this.dry_sequence_breakers);
1344+ } catch {
1345+ if (typeof this.dry_sequence_breakers === 'string') {
1346+ return this.dry_sequence_breakers.split(',');
1347+ }
1348+ return undefined;
1349+ }
1350+ },
13411351 };
13421352 const nonAphroditeParams = {
13431353 'rep_pen': settings.rep_pen,
@@ -1439,17 +1449,7 @@ export async function getTextGenGenerationData(finalPrompt, maxTokens, isImperso
14391449 params.dynatemp_max = params.dynatemp_high;
14401450 delete params.dynatemp_low;
14411451 delete params.dynatemp_high;
1442- const sequenceBreakers = (() => {
1452+ params.dry_sequence_breakers = params.parseSequenceBreakers();
1443- try {
1444- return JSON.parse(params.dry_sequence_breakers);
1445- } catch {
1446- if (typeof params.dry_sequence_breakers === 'string') {
1447- return params.dry_sequence_breakers.split(',');
1448- }
1449- return undefined;
1450- }
1451- })();
1452- params.dry_sequence_breakers = sequenceBreakers;
14531453 }
14541454
14551455 if (settings.type === TABBY) {
@@ -1485,17 +1485,7 @@ export async function getTextGenGenerationData(finalPrompt, maxTokens, isImperso
14851485 : [];
14861486 const tokenBans = toIntArray(banned_tokens);
14871487 logitBiasArray.push(...tokenBans.map(x => [Number(x), false]));
14881488 const sequenceBreakers = (params.parseSequenceBreakers() => {;
1489- try {
1490- return JSON.parse(params.dry_sequence_breakers);
1491- } catch {
1492- if (typeof params.dry_sequence_breakers === 'string') {
1493- return params.dry_sequence_breakers.split(',');
1494- }
1495-
1496- return undefined;
1497- }
1498- })();
14991489 const llamaCppParams = {
15001490 'logit_bias': logitBiasArray,
15011491 // Conflicts with ooba's grammar_string