[https://nvbugs/6115832][fix] Fix aiohttp 3.13 streaming ValueError in benchmark client#13952
Conversation
📝 WalkthroughWalkthroughThe PR updates SSE stream iteration to use ChangesStreaming Parser and Performance Validation
Estimated code review effort🎯 2 (Simple) | ⏱️ ~8 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Tip 💬 Introducing Slack Agent: The best way for teams to turn conversations into code.Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.
Built for teams:
One agent for your entire SDLC. Right inside Slack. Comment |
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (2)
tensorrt_llm/serve/scripts/backend_request_func.py (1)
1-3:⚠️ Potential issue | 🟠 Major | ⚡ Quick winAdd the required NVIDIA copyright header for this modified Python file.
This file was modified, but it does not include the required NVIDIA copyright header with the current modification year (2026).
As per coding guidelines "Include NVIDIA copyright header on all new files; update year on modified files" and "All C++, Python, and other source files must contain NVIDIA copyright header with current modification year".
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@tensorrt_llm/serve/scripts/backend_request_func.py` around lines 1 - 3, This file tensorrt_llm/serve/scripts/backend_request_func.py is missing the required NVIDIA copyright header for modified files; add the official NVIDIA copyright header at the top of backend_request_func.py and update the modification year to 2026, ensuring the header follows the project’s standard format for Python source files and appears before any code or comments (preserve the existing Adopted from comment below the header).tests/integration/defs/perf/test_perf_sanity.py (1)
1-1:⚠️ Potential issue | 🟡 Minor | ⚡ Quick winUpdate the NVIDIA copyright year for this modified file.
Line 1 still ends at 2025, but this file is modified in this PR and should include 2026.
As per coding guidelines: "Include NVIDIA copyright header on all new files; update year on modified files" and "All C++, Python, and other source files must contain NVIDIA copyright header with current modification year".
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@tests/integration/defs/perf/test_perf_sanity.py` at line 1, Update the copyright header year in the file by changing the top SPDX header line that currently reads "Copyright (c) 2022-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved." to include 2026 (e.g., "2022-2026") so the file's modified-year matches the current PR; ensure the first line/header in tests/integration/defs/perf/test_perf_sanity.py is updated accordingly.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Outside diff comments:
In `@tensorrt_llm/serve/scripts/backend_request_func.py`:
- Around line 1-3: This file tensorrt_llm/serve/scripts/backend_request_func.py
is missing the required NVIDIA copyright header for modified files; add the
official NVIDIA copyright header at the top of backend_request_func.py and
update the modification year to 2026, ensuring the header follows the project’s
standard format for Python source files and appears before any code or comments
(preserve the existing Adopted from comment below the header).
In `@tests/integration/defs/perf/test_perf_sanity.py`:
- Line 1: Update the copyright header year in the file by changing the top SPDX
header line that currently reads "Copyright (c) 2022-2025 NVIDIA CORPORATION &
AFFILIATES. All rights reserved." to include 2026 (e.g., "2022-2026") so the
file's modified-year matches the current PR; ensure the first line/header in
tests/integration/defs/perf/test_perf_sanity.py is updated accordingly.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: 00d2b128-a6e3-426f-a799-516fc44b9d55
📒 Files selected for processing (2)
tensorrt_llm/serve/scripts/backend_request_func.pytests/integration/defs/perf/test_perf_sanity.py
|
/bot run --disable-fail-fast --stage-list "*GB200*PerfSanity*" |
|
PR_Github #47560 [ run ] triggered by Bot. Commit: |
|
PR_Github #47560 [ run ] completed with state |
|
/bot run --disable-fail-fast --stage-list "*GB200*PerfSanity*" |
|
PR_Github #47582 [ run ] triggered by Bot. Commit: |
0b8abb1 to
9bd46fe
Compare
|
/bot run --disable-fail-fast --stage-list "*GB200*PerfSanity*" |
|
PR_Github #47601 [ run ] triggered by Bot. Commit: |
Signed-off-by: Chenfei Zhang <[email protected]>
Signed-off-by: Chenfei Zhang <[email protected]>
Signed-off-by: Chenfei Zhang <[email protected]>
9bd46fe to
f65ecb8
Compare
Signed-off-by: Chenfei Zhang <[email protected]>
|
/bot run --disable-fail-fast |
|
PR_Github #47654 [ run ] triggered by Bot. Commit: |
|
PR_Github #47654 [ run ] completed with state
|
|
/bot run --disable-fail-fast |
|
PR_Github #47837 [ run ] triggered by Bot. Commit: |
|
PR_Github #47837 [ run ] completed with state |
Signed-off-by: chenfeiz0326 <[email protected]>
|
/bot skip --comment "Pre-merge has passed. Only resolve waives.txt conflict, no need to run the whole CI pipeline again" |
|
PR_Github #47901 [ skip ] triggered by Bot. Commit: |
Signed-off-by: chenfeiz0326 <[email protected]>
|
/bot skip --comment "Pre-merge has passed. Only resolve waives.txt conflict, no need to run the whole CI pipeline again" |
|
PR_Github #47901 [ skip ] completed with state |
|
PR_Github #47908 [ skip ] triggered by Bot. Commit: |
|
PR_Github #47908 [ skip ] completed with state |
…n benchmark client (NVIDIA#13952) Signed-off-by: Chenfei Zhang <[email protected]>
Summary
Replace
async for chunk in response_content:withasync for chunk in response_content.iter_any():in_iter_sse_data()to avoid aiohttp 3.13.3's 128KBreaduntil()buffer limit that raisesValueError("Chunk too big")on large SSE payloads.Root Cause
aiohttp 3.13+ added a hard 128KB limit to
StreamReader.readuntil(b'\n'), which is used internally when iteratingresponse.contentline-by-line. Long-context models (Kimi-K2.5, DeepSeek-V3.2) produce SSEdata lines exceeding 128KB, triggering the error.
Fix
iter_any()callsreadany()which has no size limit and returns bytes as they arrive. The existing_iter_sse_databuffering logic correctly reassembles arbitrary byte chunks into completenewline-delimited SSE lines before JSON parsing.
Validation
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)
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.