A high-throughput and memory-efficient inference and serving engine for LLMs
Mirrored from https://github.com/tduncan-lum/Nvidia-Optimization-Stack---VLLM.git
Synced Nov 14, 05:30 UTC
[BugFix][KVConn] Fix use of `get_required_kvcache_layout` (#22734)
Signed-off-by: Nick Hill <nhill@redhat.com>
Nick Hill committed
Aug 14, 2025 at 18:39 UTC
0933f9d518ecb18e8427bf42731d2a3d00276883
2 files changed
+7
-2
vllm/distributed/kv_transfer/kv_connector/v1/base.py
+4
@@ -325,4 +325,8 @@ class KVConnectorBase_V1(ABC):
325
str: the required KV cache layout. e.g. HND, or NHD.
326
None if the connector does not require a specific layout.
327
"""
328
+
329
+ if cls is KVConnectorBase_V1:
330
+ raise TypeError("get_required_kvcache_layout should not be called "
331
+ "on the abstract base class")
332
return None
vllm/distributed/kv_transfer/kv_connector/v1/multi_connector.py
+3
-2
@@ -228,9 +228,10 @@ class MultiConnector(KVConnectorBase_V1):
228
for ktc in ktcs:
229
kv_transfer_config = KVTransferConfig(**ktc)
230
temp_vllm_config.kv_transfer_config = kv_transfer_config
231
+ connector_cls = KVConnectorFactory.get_connector_class(
232
+ kv_transfer_config)
233
required_kvcache_layout = (
232
- KVConnectorBase_V1.get_required_kvcache_layout(
233
- temp_vllm_config))
234
+ connector_cls.get_required_kvcache_layout(temp_vllm_config))
235
if required_kvcache_layout is not None:
236
layouts.add(required_kvcache_layout)
237