@@ -1945,9 +1945,11 @@ enum e_model {
19451945 MODEL_770M,
19461946 MODEL_780M,
19471947 MODEL_0_5B,
1948+ MODEL_0_6B,
19481949 MODEL_1B,
19491950 MODEL_1_3B,
19501951 MODEL_1_4B,
1952+ MODEL_1_7B,
19511953 MODEL_2B,
19521954 MODEL_2_8B,
19531955 MODEL_3B,
@@ -1965,6 +1967,7 @@ enum e_model {
19651967 MODEL_16B,
19661968 MODEL_20B,
19671969 MODEL_30B,
1970+ MODEL_32B,
19681971 MODEL_34B,
19691972 MODEL_35B,
19701973 MODEL_40B,
@@ -1983,6 +1986,8 @@ enum e_model {
19831986 MODEL_10B_128x3_66B,
19841987 MODEL_57B_A14B,
19851988 MODEL_27B,
1989+ MODEL_30B_A3B,
1990+ MODEL_235B_A22B
19861991};
19871992
19881993static const size_t kiB = 1024;
@@ -4378,9 +4383,11 @@ static const char * llama_model_type_name(e_model type) {
43784383 case MODEL_770M: return "770M";
43794384 case MODEL_780M: return "780M";
43804385 case MODEL_0_5B: return "0.5B";
4386+ case MODEL_0_6B: return "0.6B";
43814387 case MODEL_1B: return "1B";
43824388 case MODEL_1_3B: return "1.3B";
43834389 case MODEL_1_4B: return "1.4B";
4390+ case MODEL_1_7B: return "1.7B";
43844391 case MODEL_2B: return "2B";
43854392 case MODEL_2_8B: return "2.8B";
43864393 case MODEL_3B: return "3B";
@@ -4398,6 +4405,7 @@ static const char * llama_model_type_name(e_model type) {
43984405 case MODEL_16B: return "16B";
43994406 case MODEL_20B: return "20B";
44004407 case MODEL_30B: return "30B";
4408+ case MODEL_32B: return "32B";
44014409 case MODEL_34B: return "34B";
44024410 case MODEL_35B: return "35B";
44034411 case MODEL_40B: return "40B";
@@ -4416,6 +4424,8 @@ static const char * llama_model_type_name(e_model type) {
44164424 case MODEL_10B_128x3_66B: return "10B+128x3.66B";
44174425 case MODEL_57B_A14B: return "57B.A14B";
44184426 case MODEL_27B: return "27B";
4427+ case MODEL_30B_A3B: return "30B.A3B";
4428+ case MODEL_235B_A22B: return "235B.A22B";
44194429 default: return "?B";
44204430 }
44214431}
@@ -4762,6 +4772,10 @@ static void llm_load_hparams(
47624772 {
47634773 ml.get_key(LLM_KV_ATTENTION_LAYERNORM_RMS_EPS, hparams.f_norm_rms_eps);
47644774 switch (hparams.n_layer) {
4775+ case 28: model.type = hparams.n_embd == 1024 ? e_model::MODEL_0_6B : e_model::MODEL_1_7B; break;
4776+ case 36: model.type = hparams.n_embd == 2560 ? e_model::MODEL_4B : e_model::MODEL_8B; break;
4777+ case 40: model.type = e_model::MODEL_14B; break;
4778+ case 64: model.type = e_model::MODEL_32B; break;
47654779 default: model.type = e_model::MODEL_UNKNOWN;
47664780 }
47674781 } break;
@@ -4771,6 +4785,8 @@ static void llm_load_hparams(
47714785
47724786 ml.get_key(LLM_KV_ATTENTION_LAYERNORM_RMS_EPS, hparams.f_norm_rms_eps);
47734787 switch (hparams.n_layer) {
4788+ case 48: model.type = e_model::MODEL_30B_A3B; break;
4789+ case 94: model.type = e_model::MODEL_235B_A22B; break;
47744790 default: model.type = e_model::MODEL_UNKNOWN;
47754791 }
47764792 } break;
0 commit comments