@@ -330,11 +330,9 @@ def __post_init__(self) -> None:
330
330
# and set `_real_n`` to the original `n`.
331
331
# when we return the result, we will check
332
332
# if we need to return `n` or `_real_n` results
333
- if self .best_of :
334
- if self .best_of < self .n :
335
- raise ValueError (
336
- f"best_of must be greater than or equal to n, "
337
- f"got n={ self .n } and best_of={ self .best_of } ." )
333
+ if self .best_of is None :
334
+ self .best_of = self .n
335
+ else :
338
336
if not self ._real_n :
339
337
self ._real_n = self .n
340
338
self .n = self .best_of
@@ -389,6 +387,14 @@ def _verify_args(self) -> None:
389
387
f"type { type (self .n )} " )
390
388
if self .n < 1 :
391
389
raise ValueError (f"n must be at least 1, got { self .n } ." )
390
+ if not isinstance (self .best_of , int ):
391
+ raise ValueError (
392
+ f"best_of must be an integer, got { type (self .best_of )} " )
393
+ if self .best_of < 1 :
394
+ raise ValueError (f"best_of must be at least 1, got { self .best_of } " )
395
+ if self .best_of < self .n :
396
+ raise ValueError (f"best_of must be greater than or equal to n, "
397
+ f"got n={ self .n } and best_of={ self .best_of } ." )
392
398
if not - 2.0 <= self .presence_penalty <= 2.0 :
393
399
raise ValueError ("presence_penalty must be in [-2, 2], got "
394
400
f"{ self .presence_penalty } ." )
@@ -512,7 +518,6 @@ def update_from_tokenizer(self, tokenizer: AnyTokenizer) -> None:
512
518
raise ValueError (
513
519
f"The model vocabulary size is { tokenizer .max_token_id + 1 } ,"
514
520
f" but the following tokens"
515
- f" were specified as bad: { invalid_token_ids } ."
516
521
f" All token id values should be integers satisfying:"
517
522
f" 0 <= token_id <= { tokenizer .max_token_id } ." )
518
523
0 commit comments