[None][refactor] BREAKING remove conversation ID from disaggregated params - #17618
[None][refactor] BREAKING remove conversation ID from disaggregated params#17618jiaganc wants to merge 2 commits into
Conversation
|
/bot run |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (9)
💤 Files with no reviewable changes (2)
WalkthroughThe change removes ChangesConversation ID ownership
Estimated code review effort: 2 (Simple) | ~10 minutes Mergeability Score: 🔵 Low · up to This change removes conversation_id from the disaggregated parameter APIs and requires callers to migrate to ConversationParams. No concrete runtime defect is identified, but merge should proceed with explicit owner approval for the breaking API change. Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
PR_Github #65807 [ run ] triggered by Bot. Commit: |
|
PR_Github #65807 [ run ] completed with state
|
Shixiaowei02
left a comment
There was a problem hiding this comment.
Since OpenAIBaseModel is extra=forbid, an old context server still sending conversation_id would be rejected outright by an upgraded generation server. Worth noting the upgrade order in the description.
Signed-off-by: Jiagan Cheng <jiaganc@nvidia.com>
Signed-off-by: Jiagan Cheng <jiaganc@nvidia.com>
688403e to
15638c9
Compare
|
Thanks @Shixiaowei02 for reviewing. Added a section in the PR description about upgrade order. |
|
/bot run |
|
PR_Github #65917 [ run ] triggered by Bot. Commit: |
|
PR_Github #65917 [ run ] completed with state
|
Shixiaowei02
left a comment
There was a problem hiding this comment.
LGTM. The PR needs another approval from @reasonsolo before merging. Thanks for the effort.
Dev Engineer Review
conversation_idfrom LLM API and OpenAI servingDisaggregatedParams.ConversationParams.conversation_idas the sole request-body source.DisaggregatedParams.conversation_id.QA Engineer Review
ConversationParams.conversation_id.test_unprotected_disagg_fields_do_not_invalidate_internal_auth_headertotest_conversation_params_do_not_invalidate_internal_auth_header.conversation_idconversion assertions and the conversation ID round-trip test.conversation_params.conversation_id._get_ctx_requestserialization ofconversation_params.conversation_id.tests/integration/test_lists/coverage entries were updated.Description
Remove
conversation_idfrom both the LLM API and OpenAI servingDisaggregatedParamsmodels. Conversation-aware routing and context/generation requests now carry the identifier only throughConversationParams.conversation_id, eliminating the duplicate source of truth and the associated conversion and forwarding logic.This is an API-breaking change for callers that still construct
DisaggregatedParamswithconversation_id; those callers must migrate toConversationParams.Upgrade Compatibility
This change is not safe for mixed-version disaggregated deployments. Drain traffic and upgrade the disaggregated coordinator and context servers together, then upgrade generation servers. An older context server may send
disaggregated_params.conversation_id, which a newer generation server rejects because unknown protocol fields are forbidden. Roll back in reverse order.Test Coverage
ConversationParams.pre-commit run --files <changed files>python3 -m py_compile <changed Python files>git diff --check upstream/main...HEADFull pytest was not run locally because the TensorRT-LLM development workflow requires tests to run in a remote-host container.
PR Checklist