Skip to content

Conversation

@ZYang6263
Copy link
Contributor

@ZYang6263 ZYang6263 commented Nov 26, 2025

What this PR does / why we need it?

Currently, MTP does not support the DeepSeekV3.2 model. In this PR, we have enabled this feature.

Does this PR introduce any user-facing change?

How was this patch tested?

@github-actions
Copy link

👋 Hi! Thank you for contributing to the vLLM Ascend project. The following points will speed up your PR merge:‌‌

  • A PR should do only one thing, smaller PRs enable faster reviews.
  • Every PR should include unit tests and end-to-end tests ‌to ensure it works and is not broken by other future PRs.
  • Write the commit message by fulfilling the PR description to help reviewer and future developers understand.

If CI fails, you can run linting and testing checks locally according Contributing and Testing.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds support for the DeepSeekV3.2 model in MTP. The changes are mostly about plumbing new metadata and enabling the model in the configuration. I've found a minor style issue and an opportunity to complete a refactoring for better code consistency. Overall, the changes look good and are in the right direction.

query_start_loc = common_attn_metadata.query_start_loc
query_lens = query_start_loc[1:] - query_start_loc[:-1]
has_prefill = any(query_lens > self.decode_threshold)
_, _, num_decode_tokens, _ = split_decodes_and_prefills(common_attn_metadata, decode_threshold = self.decode_threshold)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

According to PEP 8, you should avoid spaces around the = sign when used for keyword arguments.1

Suggested change
_, _, num_decode_tokens, _ = split_decodes_and_prefills(common_attn_metadata, decode_threshold = self.decode_threshold)
_, _, num_decode_tokens, _ = split_decodes_and_prefills(common_attn_metadata, decode_threshold=self.decode_threshold)

Style Guide References

Footnotes

  1. PEP 8 suggests not to use spaces around the = sign when used to indicate a keyword argument.

Comment on lines +797 to +798
decode_meta = getattr(attn_metadata_i, "decode", None)
prefill_meta = getattr(attn_metadata_i, "prefill", None)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

You've introduced decode_meta and prefill_meta to cache attribute access, which is a good improvement. However, the following code blocks still use attn_metadata_i.decode and attn_metadata_i.prefill directly. For consistency and improved readability, you should replace those direct accesses with the new local variables throughout this method.

For example, attn_metadata_i.decode.actual_seq_lengths_q on line 802 should be decode_meta.actual_seq_lengths_q, and so on for other occurrences in this method.

Signed-off-by: ZYang6263 <[email protected]>
@github-actions
Copy link

This pull request has conflicts, please resolve those before we can evaluate the pull request.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant