[CRITICAL/base] Register qwen3_coder tool parser as hermes alias
Without this: --tool-call-parser qwen3_coder causes api_server.py to crash with KeyError at line 537: 'invalid tool call parser: qwen3_coder' This is AFTER the --reasoning-parser crash (fixed inb446763) - even if argparse passes, this KeyError kills the server. Qwen3 models use Hermes-compatible tool calling format: <tool_call>{"name": "func", "arguments": {...}}</tool_call> So registering qwen3_coder -> Hermes2ProToolParser is semantically correct. This was the SECOND startup blocker preventing the benchmark task from completing. The first was --reasoning-parser (fixed). Together these explain why task_id=3905102 has been stuck at status=running for 84+ minutes. Startup sequence that was failing: 1. argparse --reasoning-parser qwen3 -> CRASH (fixedb446763) 2. ToolParserManager.get_tool_parser('qwen3_coder') -> KeyError (fixed NOW) 3. Qwen3_5MoeForCausalLM not in registry -> crash (fixed08dc010) All three must be fixed for the server to start.
This commit is contained in:
@@ -4,6 +4,14 @@ from .internlm2_tool_parser import Internlm2ToolParser
|
||||
from .llama_tool_parser import Llama3JsonToolParser
|
||||
from .mistral_tool_parser import MistralToolParser
|
||||
|
||||
# Register qwen3_coder as alias for hermes parser.
|
||||
# Qwen3 models use Hermes-compatible tool calling format:
|
||||
# <tool_call>{"name": "func", "arguments": {...}}</tool_call>
|
||||
# computility-run.yaml specifies --tool-call-parser qwen3_coder
|
||||
# which must be registered or server startup crashes with KeyError.
|
||||
ToolParserManager.register_module(
|
||||
"qwen3_coder", module=Hermes2ProToolParser)
|
||||
|
||||
__all__ = [
|
||||
"ToolParser", "ToolParserManager", "Hermes2ProToolParser",
|
||||
"MistralToolParser", "Internlm2ToolParser", "Llama3JsonToolParser"
|
||||
|
||||
Reference in New Issue
Block a user