Merge pull request #3094 from AlpinDale/top-nsigma feat: add top nsigma sampler support
Signed| @@ -1291,6 +1291,14 @@ | |||
| 1291 | <input class="neo-range-slider" type="range" id="epsilon_cutoff_textgenerationwebui" name="volume" min="0" max="9" step="0.01"> | 1291 | <input class="neo-range-slider" type="range" id="epsilon_cutoff_textgenerationwebui" name="volume" min="0" max="9" step="0.01"> |
| 1292 | <input class="neo-range-input" type="number" min="0" max="9" step="0.01" data-for="epsilon_cutoff_textgenerationwebui" id="epsilon_cutoff_counter_textgenerationwebui"> | 1292 | <input class="neo-range-input" type="number" min="0" max="9" step="0.01" data-for="epsilon_cutoff_textgenerationwebui" id="epsilon_cutoff_counter_textgenerationwebui"> |
| 1293 | </div> | 1293 | </div> |
| 1294 | <div data-tg-type="aphrodite" class="alignitemscenter flex-container flexFlowColumn flexBasis30p flexGrow flexShrink gap0"> | ||
| 1295 | <small> | ||
| 1296 | <span data-i18n="Top nsigma">Top nsigma</span> | ||
| 1297 | <div class="fa-solid fa-circle-info opacity50p" title="A sampling method that filters logits based on their statistical properties. It keeps tokens within n standard deviations of the maximum logit value, providing a simpler alternative to top-p/top-k sampling while maintaining sampling stability across different temperatures."></div> | ||
| 1298 | </small> | ||
| 1299 | <input class="neo-range-slider" type="range" id="nsigma_textgenerationwebui" name="volume" min="0" max="5" step="0.01"> | ||
| 1300 | <input class="neo-range-input" type="number" min="0" max="5" step="0.01" data-for="nsigma_textgenerationwebui" id="nsigma_counter_textgenerationwebui"> | ||
| 1301 | </div> | ||
| 1294 | <div data-tg-type="ooba,mancer,aphrodite" class="alignitemscenter flex-container flexFlowColumn flexBasis30p flexGrow flexShrink gap0"> | 1302 | <div data-tg-type="ooba,mancer,aphrodite" class="alignitemscenter flex-container flexFlowColumn flexBasis30p flexGrow flexShrink gap0"> |
| 1295 | <small> | 1303 | <small> |
| 1296 | <span data-i18n="Eta Cutoff">Eta Cutoff</span> | 1304 | <span data-i18n="Eta Cutoff">Eta Cutoff</span> |
| @@ -642,6 +642,10 @@ async function CreateZenSliders(elmnt) { | |||
| 642 | numSteps = 50; | 642 | numSteps = 50; |
| 643 | decimals = 1; | 643 | decimals = 1; |
| 644 | } | 644 | } |
| 645 | if (sliderID == 'nsigma') { | ||
| 646 | numSteps = 50; | ||
| 647 | decimals = 1; | ||
| 648 | } | ||
| 645 | //customize steps | 649 | //customize steps |
| 646 | if (sliderID == 'mirostat_mode_textgenerationwebui' || | 650 | if (sliderID == 'mirostat_mode_textgenerationwebui' || |
| 647 | sliderID == 'mirostat_mode_kobold') { | 651 | sliderID == 'mirostat_mode_kobold') { |
| @@ -686,6 +690,7 @@ async function CreateZenSliders(elmnt) { | |||
| 686 | sliderID == 'penalty_alpha_textgenerationwebui' || | 690 | sliderID == 'penalty_alpha_textgenerationwebui' || |
| 687 | sliderID == 'length_penalty_textgenerationwebui' || | 691 | sliderID == 'length_penalty_textgenerationwebui' || |
| 688 | sliderID == 'epsilon_cutoff_textgenerationwebui' || | 692 | sliderID == 'epsilon_cutoff_textgenerationwebui' || |
| 693 | sliderID == 'nsigma' || | ||
| 689 | sliderID == 'rep_pen_range' || | 694 | sliderID == 'rep_pen_range' || |
| 690 | sliderID == 'eta_cutoff_textgenerationwebui' || | 695 | sliderID == 'eta_cutoff_textgenerationwebui' || |
| 691 | sliderID == 'top_a_textgenerationwebui' || | 696 | sliderID == 'top_a_textgenerationwebui' || |
| @@ -193,6 +193,7 @@ const settings = { | |||
| 193 | openrouter_allow_fallbacks: true, | 193 | openrouter_allow_fallbacks: true, |
| 194 | xtc_threshold: 0.1, | 194 | xtc_threshold: 0.1, |
| 195 | xtc_probability: 0, | 195 | xtc_probability: 0, |
| 196 | nsigma: 0.0, | ||
| 196 | featherless_model: '', | 197 | featherless_model: '', |
| 197 | }; | 198 | }; |
| 198 | 199 | ||
| @@ -265,6 +266,7 @@ export const setting_names = [ | |||
| 265 | 'openrouter_allow_fallbacks', | 266 | 'openrouter_allow_fallbacks', |
| 266 | 'xtc_threshold', | 267 | 'xtc_threshold', |
| 267 | 'xtc_probability', | 268 | 'xtc_probability', |
| 269 | 'nsigma', | ||
| 268 | ]; | 270 | ]; |
| 269 | 271 | ||
| 270 | const DYNATEMP_BLOCK = document.getElementById('dynatemp_block_ooba'); | 272 | const DYNATEMP_BLOCK = document.getElementById('dynatemp_block_ooba'); |
| @@ -1186,6 +1188,7 @@ export function getTextGenGenerationData(finalPrompt, maxTokens, isImpersonate, | |||
| 1186 | 'sampler_order': settings.type === textgen_types.KOBOLDCPP ? settings.sampler_order : undefined, | 1188 | 'sampler_order': settings.type === textgen_types.KOBOLDCPP ? settings.sampler_order : undefined, |
| 1187 | 'xtc_threshold': settings.xtc_threshold, | 1189 | 'xtc_threshold': settings.xtc_threshold, |
| 1188 | 'xtc_probability': settings.xtc_probability, | 1190 | 'xtc_probability': settings.xtc_probability, |
| 1191 | 'nsigma': settings.nsigma, | ||
| 1189 | }; | 1192 | }; |
| 1190 | const nonAphroditeParams = { | 1193 | const nonAphroditeParams = { |
| 1191 | 'rep_pen': settings.rep_pen, | 1194 | 'rep_pen': settings.rep_pen, |
| @@ -1253,6 +1256,7 @@ export function getTextGenGenerationData(finalPrompt, maxTokens, isImpersonate, | |||
| 1253 | 'dynatemp_exponent': dynatemp ? settings.dynatemp_exponent : undefined, | 1256 | 'dynatemp_exponent': dynatemp ? settings.dynatemp_exponent : undefined, |
| 1254 | 'xtc_threshold': settings.xtc_threshold, | 1257 | 'xtc_threshold': settings.xtc_threshold, |
| 1255 | 'xtc_probability': settings.xtc_probability, | 1258 | 'xtc_probability': settings.xtc_probability, |
| 1259 | 'nsigma': settings.nsigma, | ||
| 1256 | 'custom_token_bans': toIntArray(banned_tokens), | 1260 | 'custom_token_bans': toIntArray(banned_tokens), |
| 1257 | }; | 1261 | }; |
| 1258 | 1262 | ||