Move novel settings to separate file

This commit is contained in:
SillyLossy
2023-03-21 17:05:51 +02:00
parent dc9e8add6f
commit f6a0a2b65c
2 changed files with 110 additions and 2 deletions

View File

@ -8,7 +8,7 @@ import {
online_status, online_status,
main_api, main_api,
api_server, api_server,
api_key_novel, nai_settings,
is_send_press, is_send_press,
} from "../script.js"; } from "../script.js";
@ -204,7 +204,7 @@ function RA_checkOnlineStatus() {
function RA_autoconnect() { function RA_autoconnect() {
console.log(main_api); console.log(main_api);
if (typeof online_status !== 'undefined' && (api_server !== '' || api_key_novel !== '')) { if (typeof online_status !== 'undefined' && (api_server !== '' || nai_settings.api_key_novel !== '')) {
if (online_status === "no_connection" && LoadLocalBool('AutoConnectEnabled')) { if (online_status === "no_connection" && LoadLocalBool('AutoConnectEnabled')) {
if (isUrlOrAPIKey(api_server) && main_api === "kobold") { if (isUrlOrAPIKey(api_server) && main_api === "kobold") {
$("#api_button").click(); $("#api_button").click();

View File

@ -0,0 +1,108 @@
import {
saveSettingsDebounced,
} from "../script.js";
export {
nai_settings,
loadNovelPreset,
loadNovelSettings,
getNovelTier,
};
const nai_settings = {
temp_novel: 0.5,
rep_pen_novel: 1,
rep_pen_size_novel: 100,
model_novel: "euterpe-v2",
api_key_novel: "",
preset_settings_novel: "Classic-Euterpe",
};
const nai_tiers = {
0: 'Paper',
1: 'Tablet',
2: 'Scroll',
3: 'Opus',
};
function getNovelTier(tier) {
return nai_tiers[tier] ?? 'no_connection';
}
function loadNovelPreset(preset) {
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} Tokens`);
}
function loadNovelSettings(settings){
//load Novel API KEY is exists
if (settings.api_key_novel != undefined) {
nai_settings.api_key_novel = settings.api_key_novel;
$("#api_key_novel").val(nai_settings.api_key_novel);
}
//load the rest of the Novel settings without any checks
nai_settings.model_novel = settings.model_novel;
$(`#model_novel_select option[value=${nai_settings.model_novel}]`).attr("selected", true);
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;
$("#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} Tokens`);
}
const sliders = [
{
sliderId: "#temp_novel",
counterId: "#temp_counter_novel",
format: (val) => Number(val).toFixed(2),
setValue: (val) => { nai_settings.temp_novel = Number(val); },
},
{
sliderId: "#rep_pen_novel",
counterId: "#rep_pen_counter_novel",
format: (val) => Number(val).toFixed(2),
setValue: (val) => { nai_settings.rep_pen_novel = Number(val); },
},
{
sliderId: "#rep_pen_size_novel",
counterId: "#rep_pen_size_counter_novel",
format: (val) => `${val} Tokens`,
setValue: (val) => { nai_settings.rep_pen_size_novel = Number(val); },
},
];
$(document).ready(function () {
sliders.forEach(slider => {
$(document).on("input", slider.sliderId, function () {
const value = $(this).val();
const formattedValue = slider.format(value);
slider.setValue(value);
$(slider.counterId).html(formattedValue);
console.log('saving');
saveSettingsDebounced();
});
});
$("#model_novel_select").change(function () {
nai_settings.model_novel = $("#model_novel_select").find(":selected").val();
saveSettingsDebounced();
});
});