This commit is contained in:
Georgi Gerganov
2026-06-06 10:48:36 +03:00
parent 65eef9549c
commit 1c4a91c0f3
13 changed files with 97 additions and 314 deletions

View File

@@ -974,13 +974,6 @@ private:
cparams.n_rs_seq = 0;
ctx_dft.reset(llama_init_from_model(model_dft.get(), cparams));
if (spec_mtp) {
// MTP draft must know its target before the first decode
llama_set_mtp_source(ctx_dft.get(), ctx_tgt);
}
ctx_dft_seq_rm_type = common_context_can_seq_rm(ctx_dft.get());
params_base.speculative.draft.ctx_tgt = ctx_tgt;
params_base.speculative.draft.ctx_dft = ctx_dft.get();
} else if (std::find(params_base.speculative.types.begin(), params_base.speculative.types.end(),
@@ -1001,12 +994,6 @@ private:
return false;
}
// wire the source before any decode (the seq-rm probe below
// triggers sched_reserve which needs src for Gemma4-style MTP)
llama_set_mtp_source(ctx_dft.get(), ctx_tgt);
ctx_dft_seq_rm_type = common_context_can_seq_rm(ctx_dft.get());
params_base.speculative.draft.ctx_tgt = ctx_tgt;
params_base.speculative.draft.ctx_dft = ctx_dft.get();
}
@@ -1094,6 +1081,10 @@ private:
}
}
if (ctx_dft) {
ctx_dft_seq_rm_type = common_context_can_seq_rm(ctx_dft.get());
}
if (spec) {
SRV_INF("%s", "speculative decoding context initialized\n");
} else {