]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/commitdiff
return filter to save memory (#24125)
authorforforever73 <redacted>
Thu, 4 Jun 2026 13:56:33 +0000 (21:56 +0800)
committerGitHub <redacted>
Thu, 4 Jun 2026 13:56:33 +0000 (15:56 +0200)
Co-authored-by: lvyichen <redacted>
src/llama-model.cpp

index 3c2a8e78b78c864f113063c13401c33ae0700036..bc7a83b15f53af349566902699e6c1d44ccb3b50 100644 (file)
@@ -2112,6 +2112,15 @@ llama_memory_i * llama_model::create_memory(const llama_memory_params & params,
                         filter = [n_main](int32_t il) { return (uint32_t)il >= n_main; };
                     }
 
+                    if (arch == LLM_ARCH_STEP35 && hparams.nextn_predict_layers > 0) {
+                        const uint32_t n_main = hparams.n_layer - hparams.nextn_predict_layers;
+                        if (params.ctx_type == LLAMA_CONTEXT_TYPE_MTP) {
+                            filter = [n_main](int32_t il) { return (uint32_t)il >= n_main; };
+                        } else {
+                            filter = [n_main](int32_t il) { return (uint32_t)il <  n_main; };
+                        }
+                    }
+
                     if (hparams.swa_type != LLAMA_SWA_TYPE_NONE) {
                         GGML_ASSERT(hparams.is_swa_any());