[KVTransfer] MultiConnector: merge kv_transfer_params dicts across connectors (#46777)
Signed-off-by: deng451e <838677410@qq.com>
weishu committed
Jun 29, 2026 at 17:25 UTC
77654d080c610f94fd402251ac23a6c0016c7d94
1 file changed
+9
-6
vllm/distributed/kv_transfer/kv_connector/v1/multi_connector.py
+9
-6
@@ -492,12 +492,15 @@ class MultiConnector(KVConnectorBase_V1, SupportsHMA):
492
async_saves += 1
493
if txfer_params is not None:
494
if kv_txfer_params is not None:
495
- # TODO we can probably change this to merge the dicts here,
496
- # checking for key clashes.
497
- raise RuntimeError(
498
- "Only one connector can produce KV transfer params"
499
- )
500
- kv_txfer_params = txfer_params
495
+ clashes = set(kv_txfer_params) & set(txfer_params)
496
+ if clashes:
497
+ raise RuntimeError(
498
+ "Key clash in kv_transfer_params from multiple "
499
+ f"connectors: {clashes}"
500
+ )
501
+ kv_txfer_params.update(txfer_params)
502
+ else:
503
+ kv_txfer_params = txfer_params
504
if async_saves > 1:
505
self._extra_async_saves[request.request_id] = async_saves - 1
506