[NPU] bugs fix for Deepseek models (#19544)
This commit is contained in:
@@ -459,8 +459,9 @@ class NPUFusedMLAPreprocess(torch.nn.Module):
|
|||||||
# assert self.quant_config and self.quant_config.get_name() == "modelslim"
|
# assert self.quant_config and self.quant_config.get_name() == "modelslim"
|
||||||
# route by `qkv_a_proj` quant type as MTP layers can be unquantized
|
# route by `qkv_a_proj` quant type as MTP layers can be unquantized
|
||||||
_is_w8a8 = (
|
_is_w8a8 = (
|
||||||
hasattr(self.qkv_a_proj.quant_method, "quant_config")
|
hasattr(self.qkv_a_proj.quant_method, "quantization_config")
|
||||||
and self.qkv_a_proj.quant_method.quant_config.get_name() == "modelslim"
|
and self.qkv_a_proj.quant_method.quantization_config.get_name()
|
||||||
|
== "modelslim"
|
||||||
)
|
)
|
||||||
# with the mlaprolog enabled, the kv_b_proj layers are unquantized
|
# with the mlaprolog enabled, the kv_b_proj layers are unquantized
|
||||||
_is_mlaprolog = hasattr(self.quant_config, "ignore") and any(
|
_is_mlaprolog = hasattr(self.quant_config, "ignore") and any(
|
||||||
|
|||||||
@@ -725,6 +725,15 @@ class PrefillAdder:
|
|||||||
def add_one_req(
|
def add_one_req(
|
||||||
self, req: Req, has_chunked_req: bool, truncation_align_size: Optional[int]
|
self, req: Req, has_chunked_req: bool, truncation_align_size: Optional[int]
|
||||||
):
|
):
|
||||||
|
if (self.prefill_delayer_single_pass is not None) and (
|
||||||
|
not self.prefill_delayer_single_pass.negotiate_should_allow_prefill(
|
||||||
|
local_prefillable=True,
|
||||||
|
running_batch=self.running_batch.batch_size(),
|
||||||
|
max_prefill_bs=self.max_prefill_bs,
|
||||||
|
max_running_requests=self.max_running_requests,
|
||||||
|
)
|
||||||
|
):
|
||||||
|
return AddReqResult.OTHER
|
||||||
# TODO support cp with multiple requests
|
# TODO support cp with multiple requests
|
||||||
# Enabling context parallelism currently presents precision issues;
|
# Enabling context parallelism currently presents precision issues;
|
||||||
# therefore, the prefill-batch setting is temporarily set to 1.
|
# therefore, the prefill-batch setting is temporarily set to 1.
|
||||||
@@ -771,15 +780,6 @@ class PrefillAdder:
|
|||||||
|
|
||||||
if input_tokens >= self.rem_input_tokens and len(self.can_run_list) != 0:
|
if input_tokens >= self.rem_input_tokens and len(self.can_run_list) != 0:
|
||||||
return AddReqResult.OTHER
|
return AddReqResult.OTHER
|
||||||
if (self.prefill_delayer_single_pass is not None) and (
|
|
||||||
not self.prefill_delayer_single_pass.negotiate_should_allow_prefill(
|
|
||||||
local_prefillable=True,
|
|
||||||
running_batch=self.running_batch.batch_size(),
|
|
||||||
max_prefill_bs=self.max_prefill_bs,
|
|
||||||
max_running_requests=self.max_running_requests,
|
|
||||||
)
|
|
||||||
):
|
|
||||||
return AddReqResult.OTHER
|
|
||||||
|
|
||||||
if self.dllm_config is not None:
|
if self.dllm_config is not None:
|
||||||
if self.rem_dllm_tokens <= 0:
|
if self.rem_dllm_tokens <= 0:
|
||||||
|
|||||||
Reference in New Issue
Block a user