Skip to content

Commit f384b34

Browse files
MaiziXiaostephen-nju
authored andcommitted
[Fix] Update max_out_len logic for OpenAI model (open-compass#1839)
1 parent 52106eb commit f384b34

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

opencompass/models/openai_api.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -484,12 +484,15 @@ def _preprocess_messages(
484484
if input_len > max_seq_len:
485485
raise ValueError(
486486
f'Input length ({input_len}) exceeds max_seq_len '
487-
f'({max_seq_len}) and mode is set to "none". Please '
488-
f'either change the mode or reduce the input length.')
487+
f'({max_seq_len}) and mode is set to "none". Please '
488+
f'either change the mode or increase the max_seq_len.')
489489

490490
# Trim input if needed
491491
def bin_trim_wrapper(text):
492-
return self._bin_trim(text, max_seq_len - 100 - max_out_len, mode)
492+
trim_length = max_seq_len - 100
493+
if max_out_len is not None:
494+
trim_length -= max_out_len
495+
return self._bin_trim(text, trim_length, mode)
493496

494497
if isinstance(input, str) and mode != 'none':
495498
input = bin_trim_wrapper(input)
@@ -512,7 +515,7 @@ def bin_trim_wrapper(text):
512515
messages.append(msg)
513516

514517
# Adjust max_out_len
515-
try:
518+
if max_out_len is not None:
516519
original_max_out_len = max_out_len
517520
max_out_len = min(
518521
max_out_len,
@@ -529,9 +532,6 @@ def bin_trim_wrapper(text):
529532
f'max_out_len was truncated from {original_max_out_len} '
530533
f'to {max_out_len} due to input length')
531534

532-
except KeyError:
533-
max_out_len = max_out_len
534-
535535
return messages, max_out_len
536536

537537

0 commit comments

Comments
 (0)