mirror of
https://github.com/KoboldAI/KoboldAI-Client.git
synced 2025-06-05 21:59:24 +02:00
Add Samplers menu
This commit is contained in:
@ -20,6 +20,7 @@ var button_settings;
|
||||
var button_format;
|
||||
var button_softprompt;
|
||||
var button_userscripts;
|
||||
var button_samplers;
|
||||
var button_mode;
|
||||
var button_mode_label;
|
||||
var button_send;
|
||||
@ -109,6 +110,9 @@ var do_clear_ent = false;
|
||||
// Whether or not an entry in the Userscripts menu is being dragged
|
||||
var us_dragging = false;
|
||||
|
||||
// Whether or not an entry in the Samplers menu is being dragged
|
||||
var samplers_dragging = false;
|
||||
|
||||
// Display vars
|
||||
var allowtoggle = false;
|
||||
var formatcount = 0;
|
||||
@ -976,6 +980,16 @@ function hideUSPopup() {
|
||||
spcontent.html("");
|
||||
}
|
||||
|
||||
function showSamplersPopup() {
|
||||
samplerspopup.removeClass("hidden");
|
||||
samplerspopup.addClass("flex");
|
||||
}
|
||||
|
||||
function hideSamplersPopup() {
|
||||
samplerspopup.removeClass("flex");
|
||||
samplerspopup.addClass("hidden");
|
||||
}
|
||||
|
||||
function buildLoadList(ar) {
|
||||
disableButtons([load_accept]);
|
||||
loadcontent.html("");
|
||||
@ -1109,6 +1123,29 @@ function buildUSList(unloaded, loaded) {
|
||||
}
|
||||
}
|
||||
|
||||
function buildSamplerList(samplers) {
|
||||
samplerslist.html("");
|
||||
showSamplersPopup();
|
||||
var i;
|
||||
var samplers_lookup_table = [
|
||||
"Top-k Sampling",
|
||||
"Top-a Sampling",
|
||||
"Top-p Sampling",
|
||||
"Tail-free Sampling",
|
||||
"Typical Sampling",
|
||||
"Temperature",
|
||||
]
|
||||
for(i=0; i<samplers.length; i++) {
|
||||
samplerslist.append("<div class=\"flex\">\
|
||||
<div class=\"samplerslistitem flex-row-container\" sid=\""+samplers[i]+"\">\
|
||||
<div class=\"flex-row\">\
|
||||
<div>"+samplers_lookup_table[samplers[i]]+"</div>\
|
||||
</div>\
|
||||
</div>\
|
||||
</div>");
|
||||
}
|
||||
}
|
||||
|
||||
function highlightLoadLine(ref) {
|
||||
$("#loadlistcontent > div > div.popuplistselected").removeClass("popuplistselected");
|
||||
ref.addClass("popuplistselected");
|
||||
@ -1838,6 +1875,7 @@ $(document).ready(function(){
|
||||
button_format = $('#btn_format');
|
||||
button_softprompt = $("#btn_softprompt");
|
||||
button_userscripts= $("#btn_userscripts");
|
||||
button_samplers = $("#btn_samplers");
|
||||
button_mode = $('#btnmode')
|
||||
button_mode_label = $('#btnmode_label')
|
||||
button_send = $('#btnsend');
|
||||
@ -1886,6 +1924,10 @@ $(document).ready(function(){
|
||||
usloaded = $("#uslistloaded");
|
||||
us_accept = $("#btn_usaccept");
|
||||
us_close = $("#btn_usclose");
|
||||
samplerspopup = $("#samplerscontainer");
|
||||
samplerslist = $("#samplerslist");
|
||||
samplers_accept = $("#btn_samplersaccept");
|
||||
samplers_close = $("#btn_samplersclose");
|
||||
nspopup = $("#newgamecontainer");
|
||||
ns_accept = $("#btn_nsaccept");
|
||||
ns_close = $("#btn_nsclose");
|
||||
@ -1908,7 +1950,7 @@ $(document).ready(function(){
|
||||
modelname = msg.modelname;
|
||||
}
|
||||
refreshTitle();
|
||||
connect_status.html("<b>Connected to KoboldAI Process!</b>");
|
||||
connect_status.html("<b>Connected to KoboldAI!</b>");
|
||||
connect_status.removeClass("color_orange");
|
||||
connect_status.addClass("color_green");
|
||||
// Reset Menus
|
||||
@ -2310,6 +2352,8 @@ $(document).ready(function(){
|
||||
buildSPList(msg.data);
|
||||
} else if(msg.cmd == "buildus") {
|
||||
buildUSList(msg.data.unloaded, msg.data.loaded);
|
||||
} else if(msg.cmd == "buildsamplers") {
|
||||
buildSamplerList(msg.data);
|
||||
} else if(msg.cmd == "askforoverwrite") {
|
||||
// Show overwrite warning
|
||||
show([$(".saveasoverwrite")]);
|
||||
@ -2436,6 +2480,20 @@ $(document).ready(function(){
|
||||
}, 10);
|
||||
}
|
||||
|
||||
var samplers_click_handler = function(ev) {
|
||||
setTimeout(function() {
|
||||
if (samplers_dragging) {
|
||||
return;
|
||||
}
|
||||
var target = $(ev.target).closest(".samplerslistitem");
|
||||
var next = target.parent().next().find(".samplerslistitem");
|
||||
if (!next.length) {
|
||||
return;
|
||||
}
|
||||
next.parent().after(target.parent());
|
||||
}, 10);
|
||||
}
|
||||
|
||||
// Make the userscripts menu sortable
|
||||
var us_sortable_settings = {
|
||||
placeholder: "ussortable-placeholder",
|
||||
@ -2456,6 +2514,22 @@ $(document).ready(function(){
|
||||
connectWith: "#uslistunloaded",
|
||||
}, us_sortable_settings)).on("click", ".uslistitem", us_click_handler);
|
||||
|
||||
// Make the samplers menu sortable
|
||||
var samplers_sortable_settings = {
|
||||
placeholder: "samplerssortable-placeholder",
|
||||
start: function() { samplers_dragging = true; },
|
||||
stop: function() { samplers_dragging = false; },
|
||||
delay: 2,
|
||||
cursor: "move",
|
||||
tolerance: "pointer",
|
||||
opacity: 0.21,
|
||||
revert: 173,
|
||||
scrollSensitivity: 64,
|
||||
scrollSpeed: 10,
|
||||
}
|
||||
samplerslist.sortable($.extend({
|
||||
}, samplers_sortable_settings)).on("click", ".samplerslistitem", samplers_click_handler);
|
||||
|
||||
// Bind actions to UI buttons
|
||||
button_send.on("click", function(ev) {
|
||||
dosubmit();
|
||||
@ -2590,6 +2664,10 @@ $(document).ready(function(){
|
||||
button_userscripts.on("click", function(ev) {
|
||||
socket.send({'cmd': 'uslistrequest', 'data': ''});
|
||||
});
|
||||
|
||||
button_samplers.on("click", function(ev) {
|
||||
socket.send({'cmd': 'samplerlistrequest', 'data': ''});
|
||||
});
|
||||
|
||||
load_close.on("click", function(ev) {
|
||||
hideLoadPopup();
|
||||
@ -2623,6 +2701,16 @@ $(document).ready(function(){
|
||||
socket.send({'cmd': 'usload', 'data': ''});
|
||||
hideUSPopup();
|
||||
});
|
||||
|
||||
samplers_close.on("click", function(ev) {
|
||||
hideSamplersPopup();
|
||||
});
|
||||
|
||||
samplers_accept.on("click", function(ev) {
|
||||
hideMessage();
|
||||
socket.send({'cmd': 'samplers', 'data': samplerslist.find(".samplerslistitem").map(function() { return parseInt($(this).attr("sid")); }).toArray()});
|
||||
hideSamplersPopup();
|
||||
});
|
||||
|
||||
button_newgame.on("click", function(ev) {
|
||||
if(connected) {
|
||||
|
Reference in New Issue
Block a user