@@ -335,14 +335,19 @@ def update_state(self, batch_update: Optional[BatchUpdate]):
335
335
if not batch_update :
336
336
return
337
337
338
+ needs_update : bool = False
338
339
# Process added requests.
339
- needs_update = bool (batch_update .added )
340
340
for index , params , _ in batch_update .added :
341
341
if isinstance (params , SamplingParams ) and (lb :=
342
342
params .logit_bias ):
343
343
self .biases [index ] = lb
344
+ needs_update = True
344
345
else :
345
- self .biases .pop (index , None )
346
+ # Drop biases metadata at batch index
347
+ if self .biases .pop (index , None ) is not None :
348
+ # If a new request replaces an old request which
349
+ # specified biases, we should update processor tensors
350
+ needs_update = True
346
351
347
352
if self .biases :
348
353
# Process removed requests.
@@ -419,17 +424,20 @@ def update_state(self, batch_update: Optional[BatchUpdate]):
419
424
420
425
if batch_update :
421
426
# Process added requests.
422
- needs_update |= bool (batch_update .added )
423
427
for index , params , output_tok_ids in batch_update .added :
424
428
if (isinstance (params , SamplingParams )
425
429
and (min_tokens := params .min_tokens )
426
430
and len (output_tok_ids ) < min_tokens ):
427
431
# Replace request metadata at batch index
428
432
self .min_toks [index ] = (min_tokens , output_tok_ids ,
429
433
params .all_stop_token_ids )
434
+ needs_update = True
430
435
else :
431
- # Drop request metadata at batch index
432
- self .min_toks .pop (index , None )
436
+ # Drop min_toks metadata at batch index
437
+ if self .min_toks .pop (index , None ) is not None :
438
+ # If a new request replaces an old request which
439
+ # specified min_toks, we should update processor tensors
440
+ needs_update = True
433
441
434
442
if self .min_toks :
435
443
# Process removed requests.
0 commit comments