Don't use dynatemp for unsupported backends

This commit is contained in:
Cohee 2024-07-02 14:17:10 +00:00
parent a3031d7986
commit b66e589b30
1 changed files with 13 additions and 6 deletions

View File

@ -263,6 +263,8 @@ export const setting_names = [
'bypass_status_check', 'bypass_status_check',
]; ];
const DYNATEMP_BLOCK = document.getElementById('dynatemp_block_ooba');
export function validateTextGenUrl() { export function validateTextGenUrl() {
const selector = SERVER_INPUTS[settings.type]; const selector = SERVER_INPUTS[settings.type];
@ -1045,6 +1047,10 @@ export function isJsonSchemaSupported() {
return [TABBY, LLAMACPP].includes(settings.type) && main_api === 'textgenerationwebui'; return [TABBY, LLAMACPP].includes(settings.type) && main_api === 'textgenerationwebui';
} }
function isDynamicTemperatureSupported() {
return settings.dynatemp && DYNATEMP_BLOCK?.dataset?.tgType?.includes(settings.type);
}
function getLogprobsNumber() { function getLogprobsNumber() {
if (settings.type === VLLM || settings.type === INFERMATICAI) { if (settings.type === VLLM || settings.type === INFERMATICAI) {
return 5; return 5;
@ -1055,6 +1061,7 @@ function getLogprobsNumber() {
export function getTextGenGenerationData(finalPrompt, maxTokens, isImpersonate, isContinue, cfgValues, type) { export function getTextGenGenerationData(finalPrompt, maxTokens, isImpersonate, isContinue, cfgValues, type) {
const canMultiSwipe = !isContinue && !isImpersonate && type !== 'quiet'; const canMultiSwipe = !isContinue && !isImpersonate && type !== 'quiet';
const dynatemp = isDynamicTemperatureSupported();
const { banned_tokens, banned_strings } = getCustomTokenBans(); const { banned_tokens, banned_strings } = getCustomTokenBans();
let params = { let params = {
@ -1063,7 +1070,7 @@ export function getTextGenGenerationData(finalPrompt, maxTokens, isImpersonate,
'max_new_tokens': maxTokens, 'max_new_tokens': maxTokens,
'max_tokens': maxTokens, 'max_tokens': maxTokens,
'logprobs': power_user.request_token_probabilities ? getLogprobsNumber() : undefined, 'logprobs': power_user.request_token_probabilities ? getLogprobsNumber() : undefined,
'temperature': settings.dynatemp ? (settings.min_temp + settings.max_temp) / 2 : settings.temp, 'temperature': dynatemp ? (settings.min_temp + settings.max_temp) / 2 : settings.temp,
'top_p': settings.top_p, 'top_p': settings.top_p,
'typical_p': settings.typical_p, 'typical_p': settings.typical_p,
'typical': settings.typical_p, 'typical': settings.typical_p,
@ -1081,11 +1088,11 @@ export function getTextGenGenerationData(finalPrompt, maxTokens, isImpersonate,
'length_penalty': settings.length_penalty, 'length_penalty': settings.length_penalty,
'early_stopping': settings.early_stopping, 'early_stopping': settings.early_stopping,
'add_bos_token': settings.add_bos_token, 'add_bos_token': settings.add_bos_token,
'dynamic_temperature': settings.dynatemp ? true : undefined, 'dynamic_temperature': dynatemp ? true : undefined,
'dynatemp_low': settings.dynatemp ? settings.min_temp : undefined, 'dynatemp_low': dynatemp ? settings.min_temp : undefined,
'dynatemp_high': settings.dynatemp ? settings.max_temp : undefined, 'dynatemp_high': dynatemp ? settings.max_temp : undefined,
'dynatemp_range': settings.dynatemp ? (settings.max_temp - settings.min_temp) / 2 : undefined, 'dynatemp_range': dynatemp ? (settings.max_temp - settings.min_temp) / 2 : undefined,
'dynatemp_exponent': settings.dynatemp ? settings.dynatemp_exponent : undefined, 'dynatemp_exponent': dynatemp ? settings.dynatemp_exponent : undefined,
'smoothing_factor': settings.smoothing_factor, 'smoothing_factor': settings.smoothing_factor,
'smoothing_curve': settings.smoothing_curve, 'smoothing_curve': settings.smoothing_curve,
'dry_allowed_length': settings.dry_allowed_length, 'dry_allowed_length': settings.dry_allowed_length,