Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 41 additions & 0 deletions configs/qwen3-vl-8b-instruct-eagle3.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
{
"architectures": [
"LlamaForCausalLMEagle3"
],
"image_token_id": 151655,
"model_type": "llama",
"target_model_type": "qwen3_vl",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The target_model_type set to "qwen3_vl" is not currently supported in the AutoDistributedTargetModel._model_mapping within specforge/modeling/auto.py. Without adding this mapping (e.g., mapping to a Qwen3VLForCausalLM class), the target model will fail to instantiate during training or inference.

"attention_bias": false,
"attention_dropout": 0.0,
"bos_token_id": 151643,
"dtype": "bfloat16",
"eos_token_id": 151645,
"head_dim": 128,
"hidden_act": "silu",
"hidden_size": 4096,
"initializer_range": 0.02,
"intermediate_size": 12288,
"max_position_embeddings": 262144,
"num_attention_heads": 32,
"num_hidden_layers": 1,
"num_key_value_heads": 8,
"rms_norm_eps": 1e-06,
"rope_scaling": {
"mrope_interleaved": true,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The mrope_interleaved parameter is not currently handled by the apply_multimodal_rotary_pos_emb function in specforge/modeling/draft/llama3_eagle.py. The existing implementation assumes contiguous chunks for the temporal, height, and width sections based on mrope_section. If Qwen3-VL uses an interleaved layout, the draft model's rotary embeddings will be incorrect.

"mrope_section": [
24,
20,
20
],
"rope_type": "mrope"
},
"rope_theta": 5000000,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The rope_theta value of 5,000,000 will be ignored for the draft model. In specforge/modeling/draft/llama3_eagle.py, the LlamaAttention._init_rope method instantiates LlamaMutiRotaryEmbedding (used for mrope) without passing the base (theta) parameter, causing it to default to 10,000. This will lead to a significant mismatch between the draft and target model embeddings.

"use_cache": true,
"vocab_size": 151936,
"tie_word_embeddings": false,
"transformers_version": "4.57.0.dev0",
"video_token_id": 151656,
"vision_end_token_id": 151653,
"vision_start_token_id": 151652,
"draft_vocab_size": 32000
}