Fix routed_dp_rank boundary validation (#19762)
Signed-off-by: doujiang24 <doujiang24@gmail.com> Co-authored-by: hnyls2002 <lsyincs@gmail.com> Co-authored-by: Liangsheng Yin <hnyls2002@gmail.com>
This commit is contained in:
@@ -219,14 +219,16 @@ class Engine(EngineBase):
|
||||
if routed_dp_rank is None:
|
||||
routed_dp_rank = data_parallel_rank
|
||||
|
||||
if self.server_args.enable_dp_attention:
|
||||
if routed_dp_rank is None:
|
||||
logger.debug("routed_dp_rank not provided, using default dispatch")
|
||||
elif routed_dp_rank < 0:
|
||||
raise ValueError("routed_dp_rank must be non-negative")
|
||||
elif routed_dp_rank >= self.server_args.dp_size:
|
||||
if routed_dp_rank is not None:
|
||||
dp_size = self.server_args.dp_size
|
||||
if dp_size <= 1 and routed_dp_rank == 0:
|
||||
logger.warning(
|
||||
f"routed_dp_rank={routed_dp_rank} is ignored because dp_size={dp_size}"
|
||||
)
|
||||
return None
|
||||
if routed_dp_rank < 0 or routed_dp_rank >= dp_size:
|
||||
raise ValueError(
|
||||
f"routed_dp_rank must be less than dp_size: {self.server_args.dp_size}"
|
||||
f"routed_dp_rank={routed_dp_rank} out of range [0, {dp_size})"
|
||||
)
|
||||
|
||||
logger.debug(f"routed_dp_rank: {routed_dp_rank}")
|
||||
|
||||
@@ -484,6 +484,17 @@ class TokenizerManager(TokenizerCommunicatorMixin, TokenizerManagerMultiItemMixi
|
||||
obj.normalize_batch_and_arguments()
|
||||
self._validate_rid(obj)
|
||||
|
||||
if isinstance(obj, GenerateReqInput) and obj.routed_dp_rank is not None:
|
||||
dp_size = self.server_args.dp_size
|
||||
if dp_size <= 1 and obj.routed_dp_rank == 0:
|
||||
logger.warning(
|
||||
f"routed_dp_rank={obj.routed_dp_rank} is ignored because dp_size={dp_size}"
|
||||
)
|
||||
elif obj.routed_dp_rank < 0 or obj.routed_dp_rank >= dp_size:
|
||||
raise ValueError(
|
||||
f"routed_dp_rank={obj.routed_dp_rank} out of range [0, {dp_size})"
|
||||
)
|
||||
|
||||
self._req_stats_init(obj, request)
|
||||
if self.server_args.language_only:
|
||||
self._handle_epd_disaggregation_encode_request(obj)
|
||||
|
||||
Reference in New Issue
Block a user