From 1dfbf2cf3a9f15193dd893396d07762bbd2c4785 Mon Sep 17 00:00:00 2001 From: psocolovsky <50770545+psocolovsky@users.noreply.github.com> Date: Mon, 19 May 2025 21:17:36 +0200 Subject: [PATCH] common : add load_progress_callback (#13617) --- common/common.cpp | 3 +++ common/common.h | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/common/common.cpp b/common/common.cpp index 62e922a99..4c835771f 100644 --- a/common/common.cpp +++ b/common/common.cpp @@ -1102,6 +1102,9 @@ struct llama_model_params common_model_params_to_llama(common_params & params) { mparams.tensor_buft_overrides = params.tensor_buft_overrides.data(); } + mparams.progress_callback = params.load_progress_callback; + mparams.progress_callback_user_data = params.load_progress_callback_user_data; + return mparams; } diff --git a/common/common.h b/common/common.h index da525dd42..f3cb00be3 100644 --- a/common/common.h +++ b/common/common.h @@ -428,6 +428,11 @@ struct common_params { // common params std::string out_file; // output filename for all example programs + // optional callback for model loading progress and cancellation: + // called with a progress value between 0.0 and 1.0. + // return false from callback to abort model loading or true to continue + llama_progress_callback load_progress_callback = NULL; + void * load_progress_callback_user_data = NULL; }; // call once at the start of a program if it uses libcommon