@@ -311,7 +311,7 @@ def load_model(model_filename):
311311 ret = handle .load_model (inputs )
312312 return ret
313313
314- def generate (prompt , memory = "" , max_length = 32 , max_context_length = 512 , temperature = 0.7 , top_k = 100 , top_a = 0.0 , top_p = 0.92 , min_p = 0.0 , typical_p = 1.0 , tfs = 1.0 , rep_pen = 1.1 , rep_pen_range = 128 , presence_penalty = 0.0 , mirostat = 0 , mirostat_tau = 5.0 , mirostat_eta = 0.1 , sampler_order = [6 ,0 ,1 ,3 ,4 ,2 ,5 ], seed = - 1 , stop_sequence = [], use_default_badwordsids = False , stream_sse = False , grammar = '' , grammar_retain_state = False , genkey = '' , trimstop = False , quiet = False , dynatemp_range = 0.0 , logit_biases = {}):
314+ def generate (prompt , memory = "" , max_length = 32 , max_context_length = 512 , temperature = 0.7 , top_k = 100 , top_a = 0.0 , top_p = 0.92 , min_p = 0.0 , typical_p = 1.0 , tfs = 1.0 , rep_pen = 1.0 , rep_pen_range = 128 , presence_penalty = 0.0 , mirostat = 0 , mirostat_tau = 5.0 , mirostat_eta = 0.1 , sampler_order = [6 ,0 ,1 ,3 ,4 ,2 ,5 ], seed = - 1 , stop_sequence = [], use_default_badwordsids = False , stream_sse = False , grammar = '' , grammar_retain_state = False , genkey = '' , trimstop = False , quiet = False , dynatemp_range = 0.0 , logit_biases = {}):
315315 global maxctx , args , currentusergenkey , totalgens
316316 inputs = generation_inputs ()
317317 outputs = ctypes .create_unicode_buffer (ctypes .sizeof (generation_outputs ))
@@ -468,6 +468,14 @@ async def generate_text(self, genparams, api_format, stream_flag):
468468 global friendlymodelname
469469 is_quiet = args .quiet
470470 def run_blocking (): #api format 1=basic,2=kai,3=oai,4=oai-chat
471+
472+ #alias all nonstandard alternative names for rep pen.
473+ rp1 = genparams .get ('repeat_penalty' , 1.0 )
474+ rp2 = genparams .get ('repetition_penalty' , 1.0 )
475+ rp3 = genparams .get ('rep_pen' , 1.0 )
476+ rp_max = max (rp1 ,rp2 ,rp3 )
477+ genparams ["rep_pen" ] = rp_max
478+
471479 if api_format == 1 :
472480 genparams ["prompt" ] = genparams .get ('text' , "" )
473481 genparams ["top_k" ] = int (genparams .get ('top_k' , 120 ))
@@ -477,8 +485,8 @@ def run_blocking(): #api format 1=basic,2=kai,3=oai,4=oai-chat
477485 genparams ["max_length" ] = genparams .get ('max_tokens' , 100 )
478486 presence_penalty = genparams .get ('presence_penalty' , genparams .get ('frequency_penalty' , 0.0 ))
479487 genparams ["presence_penalty" ] = presence_penalty
480- if presence_penalty > 0 and ( genparams . get ( 'rep_pen' , 0 ) == 0 ) :
481- genparams ["rep_pen" ] = 1.0
488+ if presence_penalty > 0 :
489+ genparams ["rep_pen" ] = 1.0 #disable rep pen if presence pen is specified for OAI
482490 # openai allows either a string or a list as a stop sequence
483491 if isinstance (genparams .get ('stop' ,[]), list ):
484492 genparams ["stop_sequence" ] = genparams .get ('stop' , [])
@@ -533,7 +541,7 @@ def run_blocking(): #api format 1=basic,2=kai,3=oai,4=oai-chat
533541 min_p = genparams .get ('min_p' , 0.0 ),
534542 typical_p = genparams .get ('typical' , 1.0 ),
535543 tfs = genparams .get ('tfs' , 1.0 ),
536- rep_pen = genparams .get ('rep_pen' , 1.1 ),
544+ rep_pen = genparams .get ('rep_pen' , 1.0 ),
537545 rep_pen_range = genparams .get ('rep_pen_range' , 256 ),
538546 presence_penalty = genparams .get ('presence_penalty' , 0.0 ),
539547 mirostat = genparams .get ('mirostat' , 0 ),
@@ -687,7 +695,7 @@ def noscript_webui(self):
687695 temperature = float (parsed_dict ['temperature' ][0 ]) if 'temperature' in parsed_dict else 0.7
688696 top_k = int (parsed_dict ['top_k' ][0 ]) if 'top_k' in parsed_dict else 100
689697 top_p = float (parsed_dict ['top_p' ][0 ]) if 'top_p' in parsed_dict else 0.9
690- rep_pen = float (parsed_dict ['rep_pen' ][0 ]) if 'rep_pen' in parsed_dict else 1.1
698+ rep_pen = float (parsed_dict ['rep_pen' ][0 ]) if 'rep_pen' in parsed_dict else 1.0
691699 use_default_badwordsids = int (parsed_dict ['use_default_badwordsids' ][0 ]) if 'use_default_badwordsids' in parsed_dict else 0
692700 gencommand = (parsed_dict ['generate' ][0 ] if 'generate' in parsed_dict else "" )== "Generate"
693701
0 commit comments