Skip to content

[Bug]: deepseek-v4-flash 开启思考模式,启动报错'invalid tool call parser: deepseek_v4 #8997

Description

@yu0904jm-netizen

Your current environment

基本信息:
机器:Atlas 800I A2
驱动固件:25.5.0
镜像版本:quay.io/ascend/vllm-ascend:deepseekv4
操作文档:https://docs.vllm.ai/projects/ascend/en/v0.18.0/tutorials/models/DeepSeek-V4-Flash.html
权重:https://www.modelscope.cn/models/Eco-Tech/DeepSeek-V4-Flash-w8a8-mtp/files

启动命令
#!/usr/bin/bash
export LD_PRELOAD=/usr/lib/aarch64-linux-gnu/libjemalloc.so.2:$LD_PRELOAD
export OMP_PROC_BIND=false
export OMP_NUM_THREADS=8
export PYTORCH_NPU_ALLOC_CONF=expandable_segments:True
export ACL_OP_INIT_MODE=1
export VLLM_ASCEND_ENABLE_FLASHCOMM1=1
export USE_MULTI_GROUPS_KV_CACHE=1
export TASK_QUEUE_ENABLE=1
export HCCL_OP_EXPANSION_MODE="AIV"
export HCCL_BUFFSIZE=512
export USE_MULTI_BLOCK_POOL=1
sysctl -w vm.swappiness=0
sysctl -w kernel.numa_balancing=0
sysctl kernel.sched_migration_cost_ns=50000
export MODEL_PATH=/data/model/DeepSeek-V4-Flash-w8a8-mtp
nohup vllm serve "$MODEL_PATH"
--safetensors-load-strategy 'prefetch'
--max-model-len 135168
--max-num-batched-tokens 4096
--served-model-name dsv4-flash
--gpu-memory-utilization 0.92
--max-num-seqs 16
--data-parallel-size 1
--tensor-parallel-size 8
--enable-expert-parallel
--quantization ascend
--async-scheduling
--tokenizer-mode deepseek_v4
--tool-call-parser deepseek_v4
--enable-auto-tool-choice
--reasoning-parser deepseek_v4
--additional-config '{"enable_cpu_binding":true,"multistream_overlap_shared_expert":false}'
--compilation-config '{"cudagraph_mode":"FULL_DECODE_ONLY","cudagraph_capture_sizes":[2,4,6,8,10,12,14,16,18,20,22,24,32,36,40]}'
--model-loader-extra-config '{"enable_multithread_load":true,"num_threads":16}'
--speculative-config '{"num_speculative_tokens": 1,"method": "mtp"}'
--port 8000 2>&1 >> /data/model/logs/vllm-ascend-018.log &

🐛 Describe the bug

05-08 12:14:00 [init.py:110] Registered model loader
<class 'vllm_ascend.model_loader.rfork.rfork_loader.RForkModelLoader'> with load format 'rfork'
[API]Server pid=230] INFO 05-08 12:14:01 [utils.py:297] vLLM version 0.18.0
[API]Server pid=230] INFO 05-08 12:14:01 [utils.py:297] model /data/model/DeepSeek-V4-Flash-w8a8-mtp
[API]Server pid=230] INFO 05-08 12:14:01 [utils.py:297] non-default args: {'model_tag': '/data/model/DeepSeek-V4-Flash-w8a8-mtp', 'enable_auto_tool_choice': True, 'tool_call_parser': 'deepseek_v4', 'port': 9000, 'model': '/data/model/DeepSeek-V4-Flash-w8a8-mtp', 'tokenizer_mode': 'deepseek_v4', 'max_model_len': 135168, 'quantization': 'ascend', 'served_model_name': ['dsv4-flash'], 'safe_tensors_load_strategy': 'prefetch', 'model_loader_extra_config': {'enable_multithread_load': True, 'num_threads': 16}, 'reasoning_parser': 'deepseek_v4', 'tensor_parallel_size': 8, 'enable_expert_parallel': True, 'gpu_memory_utilization': 0.92, 'max_num_batched_tokens': 4096, 'max_num_seqs': 16, 'num_scheduling': True, 'speculative_config': {'num_speculative_tokens': 1, 'method': 'mt p', 'compile_config': {'mode': None, 'debug_dump_path': None, 'cache_dir': None, 'compile_cache_save_format': 'binary', 'backend': 'vllm_ascend.compilation.compiler_interface.AscendCompiler', 'custom_ops': [], 'splitting_ops': False, 'compile_sizes': None, 'compile_ranges_endpoints': None, 'inductor_compile_config': {'enable_auto_functionalized_v2': False, 'compile_cudagraph': True, 'benchmark_combo_kernel': True, 'inductor_passes': {}, 'cudagraph_mode': '<CUDAGraphMode.FULL_DECODE_ONLY: (2, 0)>', 'cudagraph_num_of_warmups': 0, 'cudagraph_capture_sizes': [2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 32, 36, 40], 'cudagraph_copy_inputs': False, 'cudagraph_specialize_lora': True, 'use_inductor_graph_partition': None, 'pass_config': {}, 'max_cu dagraph_capture_size': None, 'dynamic_shapes_config': {'type': '<DynamicShapesType.BACKED: "backed">', 'evaluate_guards': False, 'assume_32_bit_indexing': False}, 'local_cache_dir': None, 'fast_mo e_cold_start': None, 'static_all_moe_layers': []}, 'additional_config': {'enable_cpu_binding': True, 'multistream_overlap_shared_expert': False}}
[API]Server pid=230] Traceback (most recent call last):
File "/usr/local/python3.11.14/bin/vllm", line 6, in
sys.exit(main())
File "/vllm-workspace/vllm/vllm/entrypoints/cli/main.py", line 75, in main
args.dispatch_function(args)
File "/vllm-workspace/vllm/vllm/entrypoints/cli/serve.py", line 118, in cmd
uvloop.run(run_server(args))
File "/usr/local/python3.11.14/lib/python3.11/site-packages/uvloop/init.py", line 92, in run
return runner.run(wrapper())
File "/usr/local/python3.11.14/lib/python3.11/asyncio/runners.py", line 118, in run
return self._loop.run_until_complete(task)
File "uvloop/loop.pyx", line 1518, in uvloop.loop.Loop.run_until_complete
File "/usr/local/python3.11.14/lib/python3.11/site-packages/uvloop/init.py", line 48, in wrapper
return await main
File "/vllm-workspace/vllm/vllm/entrypoints/openai/api_server.py", line 655, in run_server
listen_address, sock = setup_server(args)
File "/vllm-workspace/vllm/vllm/tracing/otel.py", line 178, in sync_wrapper
return func(*args, **kwargs)
File "/vllm-workspace/vllm/vllm/entrypoints/openai/api_server.py", line 527, in setup_server
validate_api_server_args(args)
File "/vllm-workspace/vllm/vllm/entrypoints/openai/api_server.py", line 498, in validate_api_server_args
raise KeyError(
KeyError: 'invalid tool call parser: deepseek_v4 (chose from {deepseek_v3,deepseek_v31,deepseek_v32,ernie45,functionlongemma,gigachat3,glm45,glm47,granite,granite-20b-fc,granite4,hermes,hunyuan_a13b,internlm,jamba,kimi_k2,llama4_json,llama4_pythonic,longcat,minimax,minimax_m2,mistral,olmo3,openai,phi_mini_json,pythonic,qwen3_coder,qwen3_xml,seed_oss,step3,step3p5,xlam'})
[API]Server pid=230] [ERROR] 2026-05-08 12:14:01 (PID:230, Device:-1, RankID:-1) ERR99999 UNKNOWN app

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions