Skip to content

Commit 5161087

Browse files
committed
[refactor] Increase common loading granularity
Split some common loading functionallity. This will help in the memory loading tests.
1 parent 0a27c00 commit 5161087

File tree

2 files changed

+16
-9
lines changed

2 files changed

+16
-9
lines changed

common/common.cpp

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -899,15 +899,7 @@ std::string fs_get_cache_file(const std::string & filename) {
899899
// Model utils
900900
//
901901

902-
struct common_init_result common_init_from_params(common_params & params) {
903-
common_init_result iparams;
904-
auto mparams = common_model_params_to_llama(params);
905-
906-
llama_model * model = llama_model_load_from_file(params.model.path.c_str(), mparams);
907-
if (model == NULL) {
908-
LOG_ERR("%s: failed to load model '%s'\n", __func__, params.model.path.c_str());
909-
return iparams;
910-
}
902+
struct common_init_result common_init_from_model_and_params(llama_model* model, common_init_result iparams, common_params & params) {
911903

912904
const llama_vocab * vocab = llama_model_get_vocab(model);
913905

@@ -1068,6 +1060,19 @@ struct common_init_result common_init_from_params(common_params & params) {
10681060
return iparams;
10691061
}
10701062

1063+
struct common_init_result common_init_from_params(common_params & params) {
1064+
common_init_result iparams;
1065+
auto mparams = common_model_params_to_llama(params);
1066+
1067+
llama_model * model = llama_model_load_from_file(params.model.path.c_str(), mparams);
1068+
if (model == NULL) {
1069+
LOG_ERR("%s: failed to load model '%s'\n", __func__, params.model.path.c_str());
1070+
return iparams;
1071+
}
1072+
1073+
return common_init_from_model_and_params(model, std::move(iparams), params);
1074+
}
1075+
10711076
std::string get_model_endpoint() {
10721077
const char * model_endpoint_env = getenv("MODEL_ENDPOINT");
10731078
// We still respect the use of environment-variable "HF_ENDPOINT" for backward-compatibility.

common/common.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -551,6 +551,8 @@ struct common_init_result {
551551
};
552552

553553
struct common_init_result common_init_from_params(common_params & params);
554+
struct common_init_result common_init_from_model_and_params(llama_model * model, common_init_result iparams,
555+
common_params & params);
554556

555557
struct llama_model_params common_model_params_to_llama ( common_params & params);
556558
struct llama_context_params common_context_params_to_llama(const common_params & params);

0 commit comments

Comments
 (0)