diff --git a/public/index.html b/public/index.html
index 12e892856..241e5583b 100644
--- a/public/index.html
+++ b/public/index.html
@@ -276,6 +276,81 @@
+
diff --git a/public/script.js b/public/script.js
index efd2f4ecf..0ea1e79d3 100644
--- a/public/script.js
+++ b/public/script.js
@@ -3023,14 +3023,16 @@ function getNovelGenerationData(finalPromt, this_settings, this_amount_gen) {
"temperature": parseFloat(nai_settings.temp_novel),
"max_length": this_amount_gen, // this_settings.max_length, // <= why?
"min_length": this_settings.min_length,
- "tail_free_sampling": this_settings.tail_free_sampling,
+ "tail_free_sampling": parseFloat(nai_settings.tail_free_sampling_novel),
"repetition_penalty": parseFloat(nai_settings.rep_pen_novel),
"repetition_penalty_range": parseInt(nai_settings.rep_pen_size_novel),
- "repetition_penalty_frequency": this_settings.repetition_penalty_frequency,
- "repetition_penalty_presence": this_settings.repetition_penalty_presence,
+ "repetition_penalty_slope": parseFloat(nai_settings.rep_pen_slope_novel),
+ "repetition_penalty_frequency": parseFloat(nai_settings.rep_pen_freq_novel),
+ "repetition_penalty_presence": parseFloat(nai_settings.rep_pen_presence_novel),
"top_a": this_settings.top_a,
"top_p": this_settings.top_p,
"top_k": this_settings.top_k,
+ "typical_p": this_settings.typical_p,
//"stop_sequences": {{187}},
//bad_words_ids = {{50256}, {0}, {1}};
//generate_until_sentence = true;
@@ -6163,6 +6165,8 @@ $(document).ready(function () {
const preset = novelai_settings[novelai_setting_names[nai_settings.preset_settings_novel]];
loadNovelPreset(preset);
+ amount_gen = parseInt($("#amount_gen").val());
+ max_context = parseInt($("#max_context").val());
saveSettingsDebounced();
});
diff --git a/public/scripts/nai-settings.js b/public/scripts/nai-settings.js
index 629e669ae..fdc7bd8c8 100644
--- a/public/scripts/nai-settings.js
+++ b/public/scripts/nai-settings.js
@@ -13,6 +13,10 @@ const nai_settings = {
temp_novel: 0.5,
rep_pen_novel: 1,
rep_pen_size_novel: 100,
+ rep_pen_slope_novel: 0,
+ rep_pen_freq_novel: 0,
+ rep_pen_presence_novel: 0,
+ tail_free_sampling_novel: 0.68,
model_novel: "euterpe-v2",
preset_settings_novel: "Classic-Euterpe",
};
@@ -29,17 +33,24 @@ function getNovelTier(tier) {
}
function loadNovelPreset(preset) {
+ $("#amount_gen").val(preset.max_length);
+ $("#amount_gen_counter").text(`${preset.max_length}`);
+ if (((preset.max_context > 2048) && (!$("#max_context_unlocked")[0].checked)) ||
+ ((preset.max_context <= 2048) && ($("#max_context_unlocked")[0].checked))) {
+ $("#max_context_unlocked").click();
+ }
+ $("#max_context").val(preset.max_context);
+ $("#max_context_counter").text(`${preset.max_context}`);
+ $("#rep_pen_size_novel").attr('max', preset.max_context);
+
nai_settings.temp_novel = preset.temperature;
nai_settings.rep_pen_novel = preset.repetition_penalty;
nai_settings.rep_pen_size_novel = preset.repetition_penalty_range;
- $("#temp_novel").val(nai_settings.temp_novel);
- $("#temp_counter_novel").html(nai_settings.temp_novel);
-
- $("#rep_pen_novel").val(nai_settings.rep_pen_novel);
- $("#rep_pen_counter_novel").html(nai_settings.rep_pen_novel);
-
- $("#rep_pen_size_novel").val(nai_settings.rep_pen_size_novel);
- $("#rep_pen_size_counter_novel").html(`${nai_settings.rep_pen_size_novel}`);
+ nai_settings.rep_pen_slope_novel = preset.repetition_penalty_slope;
+ nai_settings.rep_pen_freq_novel = preset.repetition_penalty_frequency;
+ nai_settings.rep_pen_presence_novel = preset.repetition_penalty_presence;
+ nai_settings.tail_free_sampling_novel = preset.tail_free_sampling;
+ loadNovelSettingsUi(nai_settings);
}
function loadNovelSettings(settings) {
@@ -50,15 +61,28 @@ function loadNovelSettings(settings) {
nai_settings.temp_novel = settings.temp_novel;
nai_settings.rep_pen_novel = settings.rep_pen_novel;
nai_settings.rep_pen_size_novel = settings.rep_pen_size_novel;
+ nai_settings.rep_pen_slope_novel = settings.rep_pen_slope_novel;
+ nai_settings.rep_pen_freq_novel = settings.rep_pen_freq_novel;
+ nai_settings.rep_pen_presence_novel = settings.rep_pen_presence_novel;
+ nai_settings.tail_free_sampling_novel = settings.tail_free_sampling_novel;
+ loadNovelSettingsUi(nai_settings);
+}
- $("#temp_novel").val(nai_settings.temp_novel);
- $("#temp_counter_novel").text(Number(nai_settings.temp_novel).toFixed(2));
-
- $("#rep_pen_novel").val(nai_settings.rep_pen_novel);
- $("#rep_pen_counter_novel").text(Number(nai_settings.rep_pen_novel).toFixed(2));
-
- $("#rep_pen_size_novel").val(nai_settings.rep_pen_size_novel);
- $("#rep_pen_size_counter_novel").text(`${nai_settings.rep_pen_size_novel}`);
+function loadNovelSettingsUi(ui_settings) {
+ $("#temp_novel").val(ui_settings.temp_novel);
+ $("#temp_counter_novel").html(Number(ui_settings.temp_novel).toFixed(2));
+ $("#rep_pen_novel").val(ui_settings.rep_pen_novel);
+ $("#rep_pen_counter_novel").html(Number(ui_settings.rep_pen_novel).toFixed(2));
+ $("#rep_pen_size_novel").val(ui_settings.rep_pen_size_novel);
+ $("#rep_pen_size_counter_novel").html(Number(ui_settings.rep_pen_size_novel).toFixed(0));
+ $("#rep_pen_slope_novel").val(ui_settings.rep_pen_slope_novel);
+ $("#rep_pen_slope_counter_novel").html(Number(`${ui_settings.rep_pen_slope_novel}`).toFixed(2));
+ $("#rep_pen_freq_novel").val(ui_settings.rep_pen_freq_novel);
+ $("#rep_pen_freq_counter_novel").html(Number(ui_settings.rep_pen_freq_novel).toFixed(5));
+ $("#rep_pen_presence_novel").val(ui_settings.rep_pen_presence_novel);
+ $("#rep_pen_presence_counter_novel").html(Number(ui_settings.rep_pen_presence_novel).toFixed(3));
+ $("#tail_free_sampling_novel").val(ui_settings.tail_free_sampling_novel);
+ $("#tail_free_sampling_counter_novel").html(Number(ui_settings.tail_free_sampling_novel).toFixed(3));
}
const sliders = [
@@ -66,19 +90,43 @@ const sliders = [
sliderId: "#temp_novel",
counterId: "#temp_counter_novel",
format: (val) => Number(val).toFixed(2),
- setValue: (val) => { nai_settings.temp_novel = Number(val); },
+ setValue: (val) => { nai_settings.temp_novel = Number(val).toFixed(2); },
},
{
sliderId: "#rep_pen_novel",
counterId: "#rep_pen_counter_novel",
format: (val) => Number(val).toFixed(2),
- setValue: (val) => { nai_settings.rep_pen_novel = Number(val); },
+ setValue: (val) => { nai_settings.rep_pen_novel = Number(val).toFixed(2); },
},
{
sliderId: "#rep_pen_size_novel",
counterId: "#rep_pen_size_counter_novel",
format: (val) => `${val}`,
- setValue: (val) => { nai_settings.rep_pen_size_novel = Number(val); },
+ setValue: (val) => { nai_settings.rep_pen_size_novel = Number(val).toFixed(0); },
+ },
+ {
+ sliderId: "#rep_pen_slope_novel",
+ counterId: "#rep_pen_slope_counter_novel",
+ format: (val) => `${val}`,
+ setValue: (val) => { nai_settings.rep_pen_slope_novel = Number(val).toFixed(2); },
+ },
+ {
+ sliderId: "#rep_pen_freq_novel",
+ counterId: "#rep_pen_freq_counter_novel",
+ format: (val) => `${val}`,
+ setValue: (val) => { nai_settings.rep_pen_freq_novel = Number(val).toFixed(5); },
+ },
+ {
+ sliderId: "#rep_pen_presence_novel",
+ counterId: "#rep_pen_presence_counter_novel",
+ format: (val) => `${val}`,
+ setValue: (val) => { nai_settings.rep_pen_presence_novel = Number(val).toFixed(3); },
+ },
+ {
+ sliderId: "#tail_free_sampling_novel",
+ counterId: "#tail_free_sampling_counter_novel",
+ format: (val) => `${val}`,
+ setValue: (val) => { nai_settings.tail_free_sampling_novel = Number(val).toFixed(3); },
},
];
diff --git a/server.js b/server.js
index f6ae145bd..09c5ade6d 100644
--- a/server.js
+++ b/server.js
@@ -1330,11 +1330,13 @@ app.post("/generate_novelai", jsonParser, async function (request, response_gene
"tail_free_sampling": request.body.tail_free_sampling,
"repetition_penalty": request.body.repetition_penalty,
"repetition_penalty_range": request.body.repetition_penalty_range,
+ "repetition_penalty_slope": request.body.repetition_penalty_slope,
"repetition_penalty_frequency": request.body.repetition_penalty_frequency,
"repetition_penalty_presence": request.body.repetition_penalty_presence,
"top_a": request.body.top_a,
"top_p": request.body.top_p,
"top_k": request.body.top_k,
+ "typical_p": request.body.typical_p,
//"stop_sequences": {{187}},
//bad_words_ids = {{50256}, {0}, {1}};
//generate_until_sentence = true;