fix(rocm): apply RoPE for embedding models without KV cache#973
Open
fix(rocm): apply RoPE for embedding models without KV cache#973
Conversation
Collaborator
AI Code Review - PR #973Status: LGTM Summary: P0/0 · P1/0 · P2/1 · P3/0 lgtm ready to ci Non-blocking SuggestionsP2
Checklist Violations (2 fail / 97 total)General Principles Checklist
RTP-LLM Checklist
Strengths
|
When kv_cache is None (embedding models), AiterPrefillImplAsm and AiterPrefillImplNonAsm skipped RoPE and went straight to _forward_varlen. This caused severe output divergence for models that require positional encoding (e.g. tbstars with rope_theta=10000). Also update _forward_varlen to handle the (q, k_padded, v_padded) tuple returned by the RoPE C++ op via unpad_kv_vectorized. Co-Authored-By: Claude Opus 4 <noreply@anthropic.com>
91cd1f9 to
049caba
Compare
Collaborator
AI Code Review - PR #973Status: LGTM Summary: P0/0 · P1/0 · P2/0 · P3/0 lgtm ready to ci Checklist ✅ (81 items passed)Strengths
|
Collaborator
|
internal source has been updated, please review the changes! |
LLLLKKKK
approved these changes
May 7, 2026
Collaborator
|
internal source has been updated, please review the changes! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
When kv_cache is None (embedding models), AiterPrefillImplAsm and AiterPrefillImplNonAsm skipped RoPE and went straight to _forward_varlen. This caused severe output divergence for models that require positional encoding (e.g. tbstars with rope_theta=10000).
Also update _forward_varlen to handle the (q, k_padded, v_padded) tuple returned by the RoPE C++ op via unpad_kv_vectorized.