Skip to content

[TRTLLM-13948][feat] DeepSeek V3 Lite TranceiverV2 migration - #16390

Draft
asfiyab-nvidia wants to merge 1 commit into
NVIDIA:mainfrom
asfiyab-nvidia:dev-asfiyab-nvidia/deepseek-v3-lite
Draft

[TRTLLM-13948][feat] DeepSeek V3 Lite TranceiverV2 migration#16390
asfiyab-nvidia wants to merge 1 commit into
NVIDIA:mainfrom
asfiyab-nvidia:dev-asfiyab-nvidia/deepseek-v3-lite

Conversation

@asfiyab-nvidia

@asfiyab-nvidia asfiyab-nvidia commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Summary by CodeRabbit

  • Tests
    • Updated DeepSeek disaggregated serving configurations to use the NIXL cache-transfer backend.
    • Explicitly configured the Python transceiver runtime across context and generation server scenarios.
    • Applied the settings consistently across attention, overlap, CUDA graph, MTP, block reuse, and generation-only test variants.

Description

Test Coverage

PR Checklist

Please review the following before submitting your PR:

  • PR description clearly explains what and why. If using CodeRabbit's summary, please make sure it makes sense.

  • PR Follows TRT-LLM CODING GUIDELINES to the best of your knowledge.

  • Test cases are provided for new code paths (see test instructions)

  • If PR introduces API changes, an appropriate PR label is added - either api-compatible or api-breaking. For api-breaking, include BREAKING in the PR title.

  • Any new dependencies have been scanned for license and vulnerabilities

  • CODEOWNERS updated if ownership changes

  • Documentation updated as needed

  • Update tava architecture diagram if there is a significant design change in PR.

  • The reviewers assigned automatically/manually are appropriate for the PR.

  • Please check this after reviewing the above items as appropriate for this PR.

GitHub Bot Help

To see a list of available CI bot commands, please comment /bot help.

@asfiyab-nvidia
asfiyab-nvidia requested review from a team as code owners July 14, 2026 21:15
@asfiyab-nvidia
asfiyab-nvidia marked this pull request as draft July 14, 2026 21:15
@asfiyab-nvidia asfiyab-nvidia changed the title Dev asfiyab nvidia/deepseek v3 lite [TRTLLM-13948][feat] DeepSeek V3 Lite TranceiverV2 migration Jul 14, 2026
@coderabbitai

coderabbitai Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: d747f481-486d-43b3-ad59-adceda2c9571

📥 Commits

Reviewing files that changed from the base of the PR and between 6027183 and e8cf92d.

📒 Files selected for processing (18)
  • tests/integration/defs/accuracy/test_disaggregated_serving.py
  • tests/integration/defs/disaggregated/test_configs/disagg_config_ctxtp1_gentp1_deepseek_v3_lite.yaml
  • tests/integration/defs/disaggregated/test_configs/disagg_config_ctxtp1_gentp1_deepseek_v3_lite_one_mtp.yaml
  • tests/integration/defs/disaggregated/test_configs/disagg_config_ctxtp1_gentp1_deepseek_v3_lite_one_mtp_attention_dp_overlap.yaml
  • tests/integration/defs/disaggregated/test_configs/disagg_config_ctxtp1_gentp1_deepseek_v3_lite_one_mtp_ctxpp2_gentp2.yaml
  • tests/integration/defs/disaggregated/test_configs/disagg_config_ctxtp1_gentp1_deepseek_v3_lite_two_mtp.yaml
  • tests/integration/defs/disaggregated/test_configs/disagg_config_ctxtp2_gentp2_deepseek_v3_lite.yaml
  • tests/integration/defs/disaggregated/test_configs/disagg_config_ctxtp2_gentp2_deepseek_v3_lite_attention_dp.yaml
  • tests/integration/defs/disaggregated/test_configs/disagg_config_ctxtp2_gentp2_deepseek_v3_lite_attention_dp_one.yaml
  • tests/integration/defs/disaggregated/test_configs/disagg_config_ctxtp2_gentp2_deepseek_v3_lite_attention_dp_one_mtp.yaml
  • tests/integration/defs/disaggregated/test_configs/disagg_config_ctxtp2_gentp2_deepseek_v3_lite_attention_dp_overlap.yaml
  • tests/integration/defs/disaggregated/test_configs/disagg_config_ctxtp2_gentp2_deepseek_v3_lite_attention_dp_overlap_cuda_graph.yaml
  • tests/integration/defs/disaggregated/test_configs/disagg_config_ctxtp2_gentp2_deepseek_v3_lite_nixl.yaml
  • tests/integration/defs/disaggregated/test_configs/disagg_config_ctxtp2_gentp2_deepseek_v3_lite_overlap_cuda_graph.yaml
  • tests/integration/defs/disaggregated/test_configs/disagg_config_ctxtp2ep2pp2_gentp4_deepseek_v3_lite_one_mtp_block_reuse.yaml
  • tests/integration/defs/disaggregated/test_configs/disagg_config_ctxtp2ep2pp2_gentp4_deepseek_v3_lite_one_mtp_block_reuse_chunked.yaml
  • tests/integration/defs/disaggregated/test_configs/disagg_config_deepseek_v3_lite_empty_batch.yaml
  • tests/integration/defs/disaggregated/test_configs/disagg_config_gentp2_deepseek_v3_lite_attention_dp_gen_only.yaml

📝 Walkthrough

Walkthrough

The PR updates DeepSeek disaggregated serving configurations to use the NIXL cache backend with an explicit Python transceiver runtime, including the corresponding NIXL accuracy test configuration.

Changes

NIXL Python runtime configuration

Layer / File(s) Summary
Disaggregated configuration updates
tests/integration/defs/disaggregated/test_configs/*deepseek_v3_lite*.yaml
Cache transceiver settings across context and generation server configurations now use backend: NIXL and transceiver_runtime: PYTHON.
Accuracy test runtime alignment
tests/integration/defs/accuracy/test_disaggregated_serving.py
The DeepSeek NIXL accuracy test explicitly sets the Python transceiver runtime for both server configurations.

Estimated code review effort: 2 (Simple) | ~10 minutes

Suggested reviewers: tabrizian

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The template is present, but the Description and Test Coverage sections are empty, so the PR details are incomplete. Add a short issue/solution summary and list the relevant tests or validation steps; keep the checklist if applicable.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title matches the main change and follows the required ticket/type format.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands.

…rf-sanity test

Signed-off-by: Asfiya Baig <asfiyab@nvidia.com>
@asfiyab-nvidia
asfiyab-nvidia force-pushed the dev-asfiyab-nvidia/deepseek-v3-lite branch from 1d2e2e6 to d93a956 Compare July 14, 2026 22:10
@asfiyab-nvidia

Copy link
Copy Markdown
Contributor Author

/bot run --disable-fail-fast --stage-list "DGX_H100-4_GPUs-PyTorch-DeepSeek-1, DGX_B200-8_GPUs-PyTorch-1,
DGX_B200-8_GPUs-PyTorch-2, DGX_B200-8_GPUs-PyTorch-3, DGX_B200-8_GPUs-PyTorch-4"

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #59327 [ run ] triggered by Bot. Commit: d93a956 Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #59327 [ run ] completed with state SUCCESS. Commit: d93a956
/LLM/main/L0_MergeRequest_PR pipeline #47809 (Partly Tested) completed with status: 'SUCCESS'

CI Report

Link to invocation

@asfiyab-nvidia

Copy link
Copy Markdown
Contributor Author

/bot run --disable-reuse-test --disable-fail-fast --stage-list "DGX_H100-4_GPUs-PyTorch-DeepSeek-1,
GB200-8_GPUs-2_Nodes-PyTorch-Disagg-PerfSanity-CTX1-NODE1-GPU1-GEN1-NODE1-GPU2-Post-Merge-1"

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #59489 [ run ] triggered by Bot. Commit: d93a956 Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #59489 [ run ] completed with state SUCCESS. Commit: d93a956
/LLM/main/L0_MergeRequest_PR pipeline #47949 (Partly Tested) completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@asfiyab-nvidia

Copy link
Copy Markdown
Contributor Author

/bot run --disable-reuse-test --disable-fail-fast --stage-list "DGX_H100-4_GPUs-PyTorch-DeepSeek-1,
GB200-8_GPUs-2_Nodes-PyTorch-Disagg-PerfSanity-CTX1-NODE1-GPU1-GEN1-NODE1-GPU2-Post-Merge-1"

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #59531 [ run ] triggered by Bot. Commit: d93a956 Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #59531 [ run ] completed with state FAILURE. Commit: d93a956
/LLM/main/L0_MergeRequest_PR pipeline #47983 (Partly Tested) completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

This config is shared by two tests, and hardcoding the backend here silently breaks one of them.

test_disaggregated_deepseek_v3_lite_fp8_ucx_tp1_single_gpu selects UCX by setting TRTLLM_USE_UCX_KVCACHE=1 and reuses this same config (config_map["deepseek_v3_lite_fp8_tp1"]). That env var is only consulted when the backend is DEFAULT — CacheTransceiverConfig._resolve_default_backend() returns early for any explicit backend:

if self.backend != "DEFAULT":
return self.backend, None
After this change the env var is ignored with no warning, so that test runs NIXL + Python instead of UCX. It still passes, and it is now byte-for-byte identical to test_disaggregated_deepseek_v3_lite_fp8_tp1_single_gpu. We'd lose UCX coverage at tp1/single-GPU (the case is enabled in l0_h100.yml:184) and burn a pre-merge slot on a duplicate.

Suggest adding a dedicated disagg_config_ctxtp1_gentp1_deepseek_v3_lite_ucx.yaml with backend: UCX, registering it as deepseek_v3_lite_fp8_tp1_ucx in config_map, and pointing the UCX test at it (the env var can then be dropped).

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants