@@ -16,18 +16,40 @@
|
||||
# This file is a part of the vllm-ascend project.
|
||||
# Adapted from vllm-project/vllm/vllm/worker/gpu_model_runner.py
|
||||
#
|
||||
from vllm_ascend.spec_decode.eagle_proposer import EagleProposer
|
||||
from vllm_ascend.spec_decode.mtp_proposer import MtpProposer
|
||||
from vllm_ascend.spec_decode.ngram_proposer import NgramProposer
|
||||
|
||||
|
||||
from vllm_ascend.spec_decode.dflash_proposer import AscendDflashProposer
|
||||
from vllm_ascend.spec_decode.draft_proposer import AscendDraftModelProposer
|
||||
from vllm_ascend.spec_decode.eagle_proposer import AscendEagleProposer
|
||||
from vllm_ascend.spec_decode.extract_hidden_states_proposer import (
|
||||
AscendExtractHiddenStatesProposer,
|
||||
)
|
||||
from vllm_ascend.spec_decode.medusa_proposer import AscendMedusaProposer
|
||||
from vllm_ascend.spec_decode.ngram_proposer import AscendNgramProposer
|
||||
from vllm_ascend.spec_decode.ngram_proposer_npu import AscendNgramProposerNPU
|
||||
from vllm_ascend.spec_decode.step3p5 import AscendStep3p5MTPProposer
|
||||
from vllm_ascend.spec_decode.suffix_proposer import AscendSuffixDecodingProposer
|
||||
|
||||
|
||||
def get_spec_decode_method(method, vllm_config, device, runner):
|
||||
if method == "ngram":
|
||||
return NgramProposer(vllm_config, device, runner)
|
||||
elif method in ["eagle", "eagle3"]:
|
||||
return EagleProposer(vllm_config, device, runner)
|
||||
elif method == 'deepseek_mtp':
|
||||
return MtpProposer(vllm_config, device, runner)
|
||||
return AscendNgramProposer(vllm_config, runner)
|
||||
elif method == "ngram_gpu":
|
||||
return AscendNgramProposerNPU(vllm_config, device, runner)
|
||||
elif method == "suffix":
|
||||
return AscendSuffixDecodingProposer(vllm_config, runner)
|
||||
elif method == "medusa":
|
||||
return AscendMedusaProposer(vllm_config, device)
|
||||
elif method in ("eagle", "eagle3", "mtp"):
|
||||
speculative_config = vllm_config.speculative_config
|
||||
if speculative_config is not None and speculative_config.use_step3p5_mtp():
|
||||
return AscendStep3p5MTPProposer(vllm_config, device, runner)
|
||||
return AscendEagleProposer(vllm_config, device, runner)
|
||||
elif method == "dflash":
|
||||
return AscendDflashProposer(vllm_config, device, runner)
|
||||
elif method == "draft_model":
|
||||
return AscendDraftModelProposer(vllm_config, device, runner)
|
||||
elif method == "extract_hidden_states":
|
||||
return AscendExtractHiddenStatesProposer(vllm_config, device, runner)
|
||||
else:
|
||||
raise ValueError("Unknown speculative decoding method: "
|
||||
f"{method}")
|
||||
raise ValueError(f"Unknown speculative decoding method: {method}")
|
||||
|
||||
Reference in New Issue
Block a user