@@ -34,6 +34,7 @@ static const std::map<llm_arch, const char *> LLM_ARCH_NAMES = {
3434 { LLM_ARCH_PHI3 , " phi3" },
3535 { LLM_ARCH_PHIMOE , " phimoe" },
3636 { LLM_ARCH_PLAMO , " plamo" },
37+ { LLM_ARCH_PLAMO2 , " plamo2" },
3738 { LLM_ARCH_CODESHELL , " codeshell" },
3839 { LLM_ARCH_ORION , " orion" },
3940 { LLM_ARCH_INTERNLM2 , " internlm2" },
@@ -67,6 +68,7 @@ static const std::map<llm_arch, const char *> LLM_ARCH_NAMES = {
6768 { LLM_ARCH_JAIS , " jais" },
6869 { LLM_ARCH_NEMOTRON , " nemotron" },
6970 { LLM_ARCH_EXAONE , " exaone" },
71+ { LLM_ARCH_EXAONE4 , " exaone4" },
7072 { LLM_ARCH_RWKV6 , " rwkv6" },
7173 { LLM_ARCH_RWKV6QWEN2 , " rwkv6qwen2" },
7274 { LLM_ARCH_RWKV7 , " rwkv7" },
@@ -81,9 +83,11 @@ static const std::map<llm_arch, const char *> LLM_ARCH_NAMES = {
8183 { LLM_ARCH_DOTS1 , " dots1" },
8284 { LLM_ARCH_ARCEE , " arcee" },
8385 { LLM_ARCH_ERNIE4_5 , " ernie4_5" },
86+ { LLM_ARCH_ERNIE4_5_MOE , " ernie4_5-moe" },
8487 { LLM_ARCH_HUNYUAN_MOE , " hunyuan-moe" },
8588 { LLM_ARCH_SMOLLM3 , " smollm3" },
8689 { LLM_ARCH_LFM2 , " lfm2" },
90+ { LLM_ARCH_DREAM , " dream" },
8791 { LLM_ARCH_UNKNOWN , " (unknown)" },
8892};
8993
@@ -784,6 +788,36 @@ static const std::map<llm_arch, std::map<llm_tensor, const char *>> LLM_TENSOR_N
784788 { LLM_TENSOR_FFN_UP , " blk.%d.ffn_up" },
785789 },
786790 },
791+ {
792+ LLM_ARCH_PLAMO2 ,
793+ {
794+ { LLM_TENSOR_TOKEN_EMBD , " token_embd" },
795+ { LLM_TENSOR_OUTPUT_NORM , " output_norm" },
796+ { LLM_TENSOR_OUTPUT , " output" },
797+ { LLM_TENSOR_ROPE_FREQS , " rope_freqs" },
798+ { LLM_TENSOR_ATTN_NORM , " blk.%d.attn_norm" },
799+ { LLM_TENSOR_ATTN_QKV , " blk.%d.attn_qkv" },
800+ { LLM_TENSOR_ATTN_Q_NORM , " blk.%d.attn_q_norm" },
801+ { LLM_TENSOR_ATTN_K_NORM , " blk.%d.attn_k_norm" },
802+ { LLM_TENSOR_ATTN_OUT , " blk.%d.attn_output" },
803+ { LLM_TENSOR_ATTN_ROT_EMBD , " blk.%d.attn_rot_embd" },
804+ { LLM_TENSOR_FFN_NORM , " blk.%d.ffn_norm" },
805+ { LLM_TENSOR_FFN_DOWN , " blk.%d.ffn_down" },
806+ { LLM_TENSOR_FFN_UP , " blk.%d.ffn_up" },
807+ { LLM_TENSOR_SSM_IN , " blk.%d.ssm_in" },
808+ { LLM_TENSOR_SSM_CONV1D , " blk.%d.ssm_conv1d" },
809+ { LLM_TENSOR_SSM_X , " blk.%d.ssm_x" },
810+ { LLM_TENSOR_SSM_DT , " blk.%d.ssm_dt" },
811+ { LLM_TENSOR_SSM_A , " blk.%d.ssm_a" },
812+ { LLM_TENSOR_SSM_D , " blk.%d.ssm_d" },
813+ { LLM_TENSOR_SSM_OUT , " blk.%d.ssm_out" },
814+ { LLM_TENSOR_SSM_DT_NORM , " blk.%d.ssm_dt_norm" },
815+ { LLM_TENSOR_SSM_B_NORM , " blk.%d.ssm_b_norm" },
816+ { LLM_TENSOR_SSM_C_NORM , " blk.%d.ssm_c_norm" },
817+ { LLM_TENSOR_ATTN_POST_NORM , " blk.%d.post_attention_norm" },
818+ { LLM_TENSOR_FFN_POST_NORM , " blk.%d.post_ffw_norm" },
819+ },
820+ },
787821 {
788822 LLM_ARCH_CODESHELL ,
789823 {
@@ -1477,6 +1511,26 @@ static const std::map<llm_arch, std::map<llm_tensor, const char *>> LLM_TENSOR_N
14771511 { LLM_TENSOR_FFN_UP , " blk.%d.ffn_up" },
14781512 },
14791513 },
1514+ {
1515+ LLM_ARCH_EXAONE4 ,
1516+ {
1517+ { LLM_TENSOR_TOKEN_EMBD , " token_embd" },
1518+ { LLM_TENSOR_OUTPUT_NORM , " output_norm" },
1519+ { LLM_TENSOR_OUTPUT , " output" },
1520+ { LLM_TENSOR_ROPE_FREQS , " rope_freqs" },
1521+ { LLM_TENSOR_ATTN_Q , " blk.%d.attn_q" },
1522+ { LLM_TENSOR_ATTN_Q_NORM , " blk.%d.attn_q_norm" },
1523+ { LLM_TENSOR_ATTN_K , " blk.%d.attn_k" },
1524+ { LLM_TENSOR_ATTN_K_NORM , " blk.%d.attn_k_norm" },
1525+ { LLM_TENSOR_ATTN_V , " blk.%d.attn_v" },
1526+ { LLM_TENSOR_ATTN_OUT , " blk.%d.attn_output" },
1527+ { LLM_TENSOR_ATTN_POST_NORM , " blk.%d.post_attention_norm" },
1528+ { LLM_TENSOR_FFN_GATE , " blk.%d.ffn_gate" },
1529+ { LLM_TENSOR_FFN_DOWN , " blk.%d.ffn_down" },
1530+ { LLM_TENSOR_FFN_UP , " blk.%d.ffn_up" },
1531+ { LLM_TENSOR_FFN_POST_NORM , " blk.%d.post_ffw_norm" },
1532+ }
1533+ },
14801534 {
14811535 LLM_ARCH_RWKV6 ,
14821536 {
@@ -1793,6 +1847,31 @@ static const std::map<llm_arch, std::map<llm_tensor, const char *>> LLM_TENSOR_N
17931847 { LLM_TENSOR_FFN_UP , " blk.%d.ffn_up" },
17941848 },
17951849 },
1850+ {
1851+ LLM_ARCH_ERNIE4_5_MOE ,
1852+ {
1853+ { LLM_TENSOR_TOKEN_EMBD , " token_embd" },
1854+ { LLM_TENSOR_OUTPUT_NORM , " output_norm" },
1855+ { LLM_TENSOR_OUTPUT , " output" },
1856+ { LLM_TENSOR_ATTN_NORM , " blk.%d.attn_norm" },
1857+ { LLM_TENSOR_ATTN_Q , " blk.%d.attn_q" },
1858+ { LLM_TENSOR_ATTN_K , " blk.%d.attn_k" },
1859+ { LLM_TENSOR_ATTN_V , " blk.%d.attn_v" },
1860+ { LLM_TENSOR_ATTN_OUT , " blk.%d.attn_output" },
1861+ { LLM_TENSOR_FFN_NORM , " blk.%d.ffn_norm" },
1862+ { LLM_TENSOR_FFN_GATE , " blk.%d.ffn_gate" },
1863+ { LLM_TENSOR_FFN_DOWN , " blk.%d.ffn_down" },
1864+ { LLM_TENSOR_FFN_UP , " blk.%d.ffn_up" },
1865+ { LLM_TENSOR_FFN_GATE_INP , " blk.%d.ffn_gate_inp" },
1866+ { LLM_TENSOR_FFN_GATE_SHEXP , " blk.%d.ffn_gate_shexp" },
1867+ { LLM_TENSOR_FFN_DOWN_SHEXP , " blk.%d.ffn_down_shexp" },
1868+ { LLM_TENSOR_FFN_UP_SHEXP , " blk.%d.ffn_up_shexp" },
1869+ { LLM_TENSOR_FFN_GATE_EXPS , " blk.%d.ffn_gate_exps" },
1870+ { LLM_TENSOR_FFN_DOWN_EXPS , " blk.%d.ffn_down_exps" },
1871+ { LLM_TENSOR_FFN_UP_EXPS , " blk.%d.ffn_up_exps" },
1872+ { LLM_TENSOR_FFN_EXP_PROBS_B , " blk.%d.exp_probs_b" },
1873+ },
1874+ },
17961875 {
17971876 LLM_ARCH_HUNYUAN_MOE ,
17981877 {
@@ -1854,6 +1933,23 @@ static const std::map<llm_arch, std::map<llm_tensor, const char *>> LLM_TENSOR_N
18541933 { LLM_TENSOR_TOKEN_EMBD_NORM , " token_embd_norm" },
18551934 }
18561935 },
1936+ {
1937+ LLM_ARCH_DREAM ,
1938+ {
1939+ { LLM_TENSOR_TOKEN_EMBD , " token_embd" },
1940+ { LLM_TENSOR_OUTPUT_NORM , " output_norm" },
1941+ { LLM_TENSOR_OUTPUT , " output" },
1942+ { LLM_TENSOR_ATTN_NORM , " blk.%d.attn_norm" },
1943+ { LLM_TENSOR_ATTN_Q , " blk.%d.attn_q" },
1944+ { LLM_TENSOR_ATTN_K , " blk.%d.attn_k" },
1945+ { LLM_TENSOR_ATTN_V , " blk.%d.attn_v" },
1946+ { LLM_TENSOR_ATTN_OUT , " blk.%d.attn_output" },
1947+ { LLM_TENSOR_FFN_NORM , " blk.%d.ffn_norm" },
1948+ { LLM_TENSOR_FFN_GATE , " blk.%d.ffn_gate" },
1949+ { LLM_TENSOR_FFN_DOWN , " blk.%d.ffn_down" },
1950+ { LLM_TENSOR_FFN_UP , " blk.%d.ffn_up" },
1951+ },
1952+ },
18571953 {
18581954 LLM_ARCH_UNKNOWN ,
18591955 {
@@ -2094,10 +2190,20 @@ bool llm_arch_is_hybrid(const llm_arch & arch) {
20942190 switch (arch) {
20952191 case LLM_ARCH_JAMBA :
20962192 case LLM_ARCH_FALCON_H1 :
2193+ case LLM_ARCH_PLAMO2 :
20972194 case LLM_ARCH_GRANITE_HYBRID :
20982195 case LLM_ARCH_LFM2 :
20992196 return true ;
21002197 default :
21012198 return false ;
21022199 }
21032200}
2201+
2202+ bool llm_arch_is_diffusion (const llm_arch & arch) {
2203+ switch (arch) {
2204+ case LLM_ARCH_DREAM :
2205+ return true ;
2206+ default :
2207+ return false ;
2208+ }
2209+ }
0 commit comments