Skip to content

vllm.model_executor.kernels.attention.dsa.dcp_indexer_cutedsl

_dcp_merge_topk_and_interleave(vllm_config)

(topk, cp_interleave) the DCP merge runs with.

Kpool indexers (GLM-5.x) merge pool ids: topk and the interleave are both in units of index_kpool tokens.

Source code in vllm/model_executor/kernels/attention/dsa/dcp_indexer_cutedsl.py
def _dcp_merge_topk_and_interleave(vllm_config: Any) -> tuple[int, int]:
    """(topk, cp_interleave) the DCP merge runs with.

    Kpool indexers (GLM-5.x) merge pool ids: topk and the interleave are both
    in units of ``index_kpool`` tokens.
    """
    hf_text_config = vllm_config.model_config.hf_text_config
    topk = hf_text_config.index_topk
    cp_interleave = vllm_config.parallel_config.cp_kv_cache_interleave_size
    kpool = getattr(hf_text_config, "index_kpool", None) or 1
    if kpool > 1:
        topk //= kpool
        cp_interleave //= kpool
    return topk, cp_interleave