@@ -267,6 +267,7 @@ class MODEL_ARCH(IntEnum):
267267 CHAMELEON = auto ()
268268 # vision models
269269 LLAVA_VISION = auto ()
270+ MLLAMA = auto ()
270271
271272
272273class MODEL_TENSOR (IntEnum ):
@@ -389,7 +390,39 @@ class MODEL_TENSOR(IntEnum):
389390 V_ENC_FFN_DOWN = auto ()
390391 V_PRE_NORM = auto ()
391392 V_POST_NORM = auto ()
392-
393+ # MLLama
394+ V_MM_PROJECTOR = auto ()
395+ V_MM_CROSS_ATTN = auto ()
396+ V_MM_CROSS_ATTN_O = auto ()
397+ V_MM_CROSS_ATTN_GATE = auto ()
398+ V_MM_CROSS_ATTN_MLP_GATE = auto ()
399+ V_MM_CLASS_EMB = auto ()
400+ V_MODEL = auto ()
401+ V_MM_GATED_POS_EMB = auto ()
402+ V_MM_GATED_POS_EMB_GATE = auto ()
403+ V_MM_GATED_POS_EMB_TILE = auto ()
404+ V_MM_GATE_ATTN = auto ()
405+ V_MM_GATE_FFN = auto ()
406+ V_MM_INPUT_NORM_GLOB = auto ()
407+ V_MM_MLP_FC1 = auto ()
408+ V_MM_MLP_FC2 = auto ()
409+ V_MM_POST_ATTN_NORM = auto ()
410+ V_MM_GLOBAL_SELF_ATN_K_PROJ = auto ()
411+ V_MM_GLOBAL_SELF_ATN_Q_PROJ = auto ()
412+ V_MM_GLOBAL_SELF_ATN_V_PROJ = auto ()
413+ V_MM_GLOBAL_SELF_ATN_O_PROJ = auto ()
414+ V_MM_SELF_ATN_K_PROJ = auto ()
415+ V_MM_SELF_ATN_Q_PROJ = auto ()
416+ V_MM_SELF_ATN_V_PROJ = auto ()
417+ V_MM_SELF_ATN_O_PROJ = auto ()
418+ V_MM_LAYER_NORM_POST = auto ()
419+ V_MM_LAYER_NORM_PRE = auto ()
420+ V_MM_PATCH_EMB = auto ()
421+ V_MM_POST_TILE_POS_EMB = auto ()
422+ V_MM_POST_TILE_POS_EMB_GATE = auto ()
423+ V_MM_PRE_TILE_POS_EMB = auto ()
424+ V_MM_PRE_TILE_POS_EMB_GATE = auto ()
425+ V_MM_INPUT_NORM = auto ()
393426
394427MODEL_ARCH_NAMES : dict [MODEL_ARCH , str ] = {
395428 MODEL_ARCH .LLAMA : "llama" ,
@@ -565,6 +598,37 @@ class MODEL_TENSOR(IntEnum):
565598 MODEL_TENSOR .V_ENC_FFN_DOWN : "v.enc.blk.{bid}.ffn_down" ,
566599 MODEL_TENSOR .V_PRE_NORM : "v.pre_norm" ,
567600 MODEL_TENSOR .V_POST_NORM : "v.post_norm" ,
601+ MODEL_TENSOR .V_MM_PROJECTOR : "v.multi_modal_projector" ,
602+ MODEL_TENSOR .V_MM_CROSS_ATTN : "model.layers.{bid}.cross_attn.k_norm" ,
603+ MODEL_TENSOR .V_MM_CROSS_ATTN_O : "model.layers.{bid}.cross_attn.o_norm" ,
604+ MODEL_TENSOR .V_MM_CROSS_ATTN_GATE : "model.layers.{bid}.cross_attn_attn_gate" ,
605+ MODEL_TENSOR .V_MM_CROSS_ATTN_MLP_GATE : "model.layers.{bid}.cross_attn_mlp_gate" ,
606+ MODEL_TENSOR .V_MM_CLASS_EMB : "vision_model.class_embedding" ,
607+ MODEL_TENSOR .V_MM_GATED_POS_EMB : "vision_model.gated_positional_embedding.embedding" ,
608+ MODEL_TENSOR .V_MM_GATED_POS_EMB_GATE : "vision_model.gated_positional_embedding.gate" ,
609+ MODEL_TENSOR .V_MM_GATED_POS_EMB_TILE : "vision_model.gated_positional_embedding.tile_embedding" ,
610+ MODEL_TENSOR .V_MM_GATE_ATTN : "vision_model.global_transformer.layers.{bid}.gate_attn" ,
611+ MODEL_TENSOR .V_MM_GATE_FFN : "vision_model.global_transformer.layers.{bid}.gate_ffn" ,
612+ MODEL_TENSOR .V_MM_INPUT_NORM_GLOB : "vision_model.global_transformer.layers.{bid}.input_layernorm" ,
613+ MODEL_TENSOR .V_MM_MLP_FC1 : "vision_model.global_transformer.layers.{bid}.mlp.fc1" ,
614+ MODEL_TENSOR .V_MM_MLP_FC2 : "vision_model.global_transformer.layers.{bid}.mlp.fc2" ,
615+ MODEL_TENSOR .V_MM_POST_ATTN_NORM : "vision_model.global_transformer.layers.{bid}.post_attention_layernorm" ,
616+ MODEL_TENSOR .V_MM_GLOBAL_SELF_ATN_K_PROJ : "vision_model.global_transformer.layers.{bid}.self_attn.k_proj" ,
617+ MODEL_TENSOR .V_MM_GLOBAL_SELF_ATN_V_PROJ : "vision_model.global_transformer.layers.{bid}.self_attn.v_proj" ,
618+ MODEL_TENSOR .V_MM_GLOBAL_SELF_ATN_Q_PROJ : "vision_model.global_transformer.layers.{bid}.self_attn.q_proj" ,
619+ MODEL_TENSOR .V_MM_GLOBAL_SELF_ATN_O_PROJ : "vision_model.global_transformer.layers.{bid}.self_attn.o_proj" ,
620+ MODEL_TENSOR .V_MM_SELF_ATN_K_PROJ : "vision_model.transformer.layers.{bid}.self_attn.k_proj" ,
621+ MODEL_TENSOR .V_MM_SELF_ATN_V_PROJ : "vision_model.transformer.layers.{bid}.self_attn.v_proj" ,
622+ MODEL_TENSOR .V_MM_SELF_ATN_Q_PROJ : "vision_model.transformer.layers.{bid}.self_attn.q_proj" ,
623+ MODEL_TENSOR .V_MM_SELF_ATN_O_PROJ : "vision_model.transformer.layers.{bid}.self_attn.o_proj" ,
624+ MODEL_TENSOR .V_MM_LAYER_NORM_POST : "vision_model.layernorm_post" ,
625+ MODEL_TENSOR .V_MM_LAYER_NORM_PRE : "vision_model.layernorm_pre" ,
626+ MODEL_TENSOR .V_MM_PATCH_EMB : "vision_model.patch_embedding" ,
627+ MODEL_TENSOR .V_MM_POST_TILE_POS_EMB : "vision_model.post_tile_positional_embedding.embedding" ,
628+ MODEL_TENSOR .V_MM_POST_TILE_POS_EMB_GATE : "vision_model.post_tile_positional_embedding.gate" ,
629+ MODEL_TENSOR .V_MM_PRE_TILE_POS_EMB : "vision_model.pre_tile_positional_embedding.embedding" ,
630+ MODEL_TENSOR .V_MM_PRE_TILE_POS_EMB_GATE : "vision_model.pre_tile_positional_embedding.gate" ,
631+ MODEL_TENSOR .V_MM_INPUT_NORM : "vision_model.transformer.layers.{bid}.input_layernorm" ,
568632}
569633
570634MODEL_TENSORS : dict [MODEL_ARCH , list [MODEL_TENSOR ]] = {
@@ -587,6 +651,37 @@ class MODEL_TENSOR(IntEnum):
587651 MODEL_TENSOR .FFN_GATE_EXP ,
588652 MODEL_TENSOR .FFN_DOWN_EXP ,
589653 MODEL_TENSOR .FFN_UP_EXP ,
654+ MODEL_TENSOR .V_MM_PROJECTOR ,
655+ MODEL_TENSOR .V_MM_CROSS_ATTN ,
656+ MODEL_TENSOR .V_MM_CROSS_ATTN_O ,
657+ MODEL_TENSOR .V_MM_CROSS_ATTN_MLP_GATE ,
658+ MODEL_TENSOR .V_MM_CROSS_ATTN_GATE ,
659+ MODEL_TENSOR .V_MM_CLASS_EMB ,
660+ MODEL_TENSOR .V_MM_GATED_POS_EMB ,
661+ MODEL_TENSOR .V_MM_GATED_POS_EMB_GATE ,
662+ MODEL_TENSOR .V_MM_GATED_POS_EMB_TILE ,
663+ MODEL_TENSOR .V_MM_GATE_ATTN ,
664+ MODEL_TENSOR .V_MM_GATE_FFN ,
665+ MODEL_TENSOR .V_MM_INPUT_NORM_GLOB ,
666+ MODEL_TENSOR .V_MM_MLP_FC1 ,
667+ MODEL_TENSOR .V_MM_MLP_FC2 ,
668+ MODEL_TENSOR .V_MM_POST_ATTN_NORM ,
669+ MODEL_TENSOR .V_MM_SELF_ATN_K_PROJ ,
670+ MODEL_TENSOR .V_MM_SELF_ATN_Q_PROJ ,
671+ MODEL_TENSOR .V_MM_SELF_ATN_V_PROJ ,
672+ MODEL_TENSOR .V_MM_SELF_ATN_O_PROJ ,
673+ MODEL_TENSOR .V_MM_GLOBAL_SELF_ATN_K_PROJ ,
674+ MODEL_TENSOR .V_MM_GLOBAL_SELF_ATN_Q_PROJ ,
675+ MODEL_TENSOR .V_MM_GLOBAL_SELF_ATN_V_PROJ ,
676+ MODEL_TENSOR .V_MM_GLOBAL_SELF_ATN_O_PROJ ,
677+ MODEL_TENSOR .V_MM_LAYER_NORM_POST ,
678+ MODEL_TENSOR .V_MM_LAYER_NORM_PRE ,
679+ MODEL_TENSOR .V_MM_PATCH_EMB ,
680+ MODEL_TENSOR .V_MM_POST_TILE_POS_EMB ,
681+ MODEL_TENSOR .V_MM_POST_TILE_POS_EMB_GATE ,
682+ MODEL_TENSOR .V_MM_PRE_TILE_POS_EMB ,
683+ MODEL_TENSOR .V_MM_PRE_TILE_POS_EMB_GATE ,
684+ MODEL_TENSOR .V_MM_INPUT_NORM ,
590685 ],
591686 MODEL_ARCH .GROK : [
592687 MODEL_TENSOR .TOKEN_EMBD ,
@@ -1355,6 +1450,8 @@ class MODEL_TENSOR(IntEnum):
13551450 MODEL_TENSOR .V_ENC_FFN_DOWN ,
13561451 MODEL_TENSOR .V_PRE_NORM ,
13571452 MODEL_TENSOR .V_POST_NORM ,
1453+ MODEL_TENSOR .ATTN_K ,
1454+ MODEL_TENSOR .ATTN_Q_NORM ,
13581455 ],
13591456 # TODO
13601457}
0 commit comments