mirror of
https://github.com/ggerganov/llama.cpp.git
synced 2025-01-12 03:31:46 +00:00
llama : update llama_model API names (#11063)
* llama : deprecate llama_free_model, add llama_model_free ggml-ci * llama : change `llama_load_model_from_file` -> `llama_model_load_from_file` ggml-ci
This commit is contained in:
parent
3e6e7a6bc2
commit
47182dd03f
@ -846,7 +846,7 @@ struct common_init_result common_init_from_params(common_params & params) {
|
|||||||
} else if (!params.model_url.empty()) {
|
} else if (!params.model_url.empty()) {
|
||||||
model = common_load_model_from_url(params.model_url, params.model, params.hf_token, mparams);
|
model = common_load_model_from_url(params.model_url, params.model, params.hf_token, mparams);
|
||||||
} else {
|
} else {
|
||||||
model = llama_load_model_from_file(params.model.c_str(), mparams);
|
model = llama_model_load_from_file(params.model.c_str(), mparams);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (model == NULL) {
|
if (model == NULL) {
|
||||||
@ -873,7 +873,7 @@ struct common_init_result common_init_from_params(common_params & params) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!ok) {
|
if (!ok) {
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
|
|
||||||
return iparams;
|
return iparams;
|
||||||
}
|
}
|
||||||
@ -884,7 +884,7 @@ struct common_init_result common_init_from_params(common_params & params) {
|
|||||||
llama_context * lctx = llama_new_context_with_model(model, cparams);
|
llama_context * lctx = llama_new_context_with_model(model, cparams);
|
||||||
if (lctx == NULL) {
|
if (lctx == NULL) {
|
||||||
LOG_ERR("%s: failed to create context with model '%s'\n", __func__, params.model.c_str());
|
LOG_ERR("%s: failed to create context with model '%s'\n", __func__, params.model.c_str());
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
return iparams;
|
return iparams;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -900,7 +900,7 @@ struct common_init_result common_init_from_params(common_params & params) {
|
|||||||
const auto cvec = common_control_vector_load(params.control_vectors);
|
const auto cvec = common_control_vector_load(params.control_vectors);
|
||||||
if (cvec.n_embd == -1) {
|
if (cvec.n_embd == -1) {
|
||||||
llama_free(lctx);
|
llama_free(lctx);
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
|
|
||||||
return iparams;
|
return iparams;
|
||||||
}
|
}
|
||||||
@ -913,7 +913,7 @@ struct common_init_result common_init_from_params(common_params & params) {
|
|||||||
params.control_vector_layer_end);
|
params.control_vector_layer_end);
|
||||||
if (err) {
|
if (err) {
|
||||||
llama_free(lctx);
|
llama_free(lctx);
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
|
|
||||||
return iparams;
|
return iparams;
|
||||||
}
|
}
|
||||||
@ -926,7 +926,7 @@ struct common_init_result common_init_from_params(common_params & params) {
|
|||||||
if (lora == nullptr) {
|
if (lora == nullptr) {
|
||||||
LOG_ERR("%s: failed to apply lora adapter '%s'\n", __func__, la.path.c_str());
|
LOG_ERR("%s: failed to apply lora adapter '%s'\n", __func__, la.path.c_str());
|
||||||
llama_free(lctx);
|
llama_free(lctx);
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
return iparams;
|
return iparams;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1411,7 +1411,7 @@ struct llama_model * common_load_model_from_url(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return llama_load_model_from_file(local_path.c_str(), params);
|
return llama_model_load_from_file(local_path.c_str(), params);
|
||||||
}
|
}
|
||||||
|
|
||||||
struct llama_model * common_load_model_from_hf(
|
struct llama_model * common_load_model_from_hf(
|
||||||
|
@ -38,7 +38,7 @@ int main(int argc, char ** argv) {
|
|||||||
|
|
||||||
llama_model_params model_params = common_model_params_to_llama(params);
|
llama_model_params model_params = common_model_params_to_llama(params);
|
||||||
|
|
||||||
llama_model * model = llama_load_model_from_file(params.model.c_str(), model_params);
|
llama_model * model = llama_model_load_from_file(params.model.c_str(), model_params);
|
||||||
|
|
||||||
if (model == NULL) {
|
if (model == NULL) {
|
||||||
fprintf(stderr , "%s: error: unable to load model\n" , __func__);
|
fprintf(stderr , "%s: error: unable to load model\n" , __func__);
|
||||||
@ -194,7 +194,7 @@ int main(int argc, char ** argv) {
|
|||||||
llama_batch_free(batch);
|
llama_batch_free(batch);
|
||||||
|
|
||||||
llama_free(ctx);
|
llama_free(ctx);
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
|
|
||||||
llama_backend_free();
|
llama_backend_free();
|
||||||
|
|
||||||
|
@ -41,7 +41,7 @@ int main(int argc, char ** argv) {
|
|||||||
|
|
||||||
llama_model_params model_params = common_model_params_to_llama(params);
|
llama_model_params model_params = common_model_params_to_llama(params);
|
||||||
|
|
||||||
llama_model * model = llama_load_model_from_file(params.model.c_str(), model_params);
|
llama_model * model = llama_model_load_from_file(params.model.c_str(), model_params);
|
||||||
|
|
||||||
if (model == NULL) {
|
if (model == NULL) {
|
||||||
LOG_ERR("%s: error: unable to load model\n" , __func__);
|
LOG_ERR("%s: error: unable to load model\n" , __func__);
|
||||||
@ -236,7 +236,7 @@ int main(int argc, char ** argv) {
|
|||||||
|
|
||||||
llama_sampler_free(smpl);
|
llama_sampler_free(smpl);
|
||||||
llama_free(ctx);
|
llama_free(ctx);
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
|
|
||||||
llama_backend_free();
|
llama_backend_free();
|
||||||
|
|
||||||
|
@ -165,7 +165,7 @@ int main(int argc, char * argv[]) {
|
|||||||
|
|
||||||
llama_backend_init();
|
llama_backend_init();
|
||||||
|
|
||||||
llama_model * model = llama_load_model_from_file(params.model.c_str(), mparams);
|
llama_model * model = llama_model_load_from_file(params.model.c_str(), mparams);
|
||||||
|
|
||||||
// create generation context
|
// create generation context
|
||||||
llama_context * ctx = llama_new_context_with_model(model, cparams);
|
llama_context * ctx = llama_new_context_with_model(model, cparams);
|
||||||
@ -219,7 +219,7 @@ int main(int argc, char * argv[]) {
|
|||||||
|
|
||||||
llama_sampler_free(smpl);
|
llama_sampler_free(smpl);
|
||||||
llama_free(ctx);
|
llama_free(ctx);
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
llama_backend_free();
|
llama_backend_free();
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -1526,10 +1526,10 @@ int main(int argc, char ** argv) {
|
|||||||
// keep the same model between tests when possible
|
// keep the same model between tests when possible
|
||||||
if (!lmodel || !prev_inst || !inst.equal_mparams(*prev_inst)) {
|
if (!lmodel || !prev_inst || !inst.equal_mparams(*prev_inst)) {
|
||||||
if (lmodel) {
|
if (lmodel) {
|
||||||
llama_free_model(lmodel);
|
llama_model_free(lmodel);
|
||||||
}
|
}
|
||||||
|
|
||||||
lmodel = llama_load_model_from_file(inst.model.c_str(), inst.to_llama_mparams());
|
lmodel = llama_model_load_from_file(inst.model.c_str(), inst.to_llama_mparams());
|
||||||
if (lmodel == NULL) {
|
if (lmodel == NULL) {
|
||||||
fprintf(stderr, "%s: error: failed to load model '%s'\n", __func__, inst.model.c_str());
|
fprintf(stderr, "%s: error: failed to load model '%s'\n", __func__, inst.model.c_str());
|
||||||
return 1;
|
return 1;
|
||||||
@ -1540,7 +1540,7 @@ int main(int argc, char ** argv) {
|
|||||||
llama_context * ctx = llama_new_context_with_model(lmodel, inst.to_llama_cparams());
|
llama_context * ctx = llama_new_context_with_model(lmodel, inst.to_llama_cparams());
|
||||||
if (ctx == NULL) {
|
if (ctx == NULL) {
|
||||||
fprintf(stderr, "%s: error: failed to create context with model '%s'\n", __func__, inst.model.c_str());
|
fprintf(stderr, "%s: error: failed to create context with model '%s'\n", __func__, inst.model.c_str());
|
||||||
llama_free_model(lmodel);
|
llama_model_free(lmodel);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1626,7 +1626,7 @@ int main(int argc, char ** argv) {
|
|||||||
ggml_threadpool_free_fn(threadpool);
|
ggml_threadpool_free_fn(threadpool);
|
||||||
}
|
}
|
||||||
|
|
||||||
llama_free_model(lmodel);
|
llama_model_free(lmodel);
|
||||||
|
|
||||||
if (p) {
|
if (p) {
|
||||||
p->print_footer();
|
p->print_footer();
|
||||||
|
@ -221,7 +221,7 @@ static struct llama_model * llava_init(common_params * params) {
|
|||||||
|
|
||||||
llama_model_params model_params = common_model_params_to_llama(*params);
|
llama_model_params model_params = common_model_params_to_llama(*params);
|
||||||
|
|
||||||
llama_model * model = llama_load_model_from_file(params->model.c_str(), model_params);
|
llama_model * model = llama_model_load_from_file(params->model.c_str(), model_params);
|
||||||
if (model == NULL) {
|
if (model == NULL) {
|
||||||
LOG_ERR("%s: unable to load model\n" , __func__);
|
LOG_ERR("%s: unable to load model\n" , __func__);
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -265,7 +265,7 @@ static void llava_free(struct llava_context * ctx_llava) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
llama_free(ctx_llava->ctx_llama);
|
llama_free(ctx_llava->ctx_llama);
|
||||||
llama_free_model(ctx_llava->model);
|
llama_model_free(ctx_llava->model);
|
||||||
llama_backend_free();
|
llama_backend_free();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -323,7 +323,7 @@ int main(int argc, char ** argv) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -31,7 +31,7 @@ static struct llama_model * llava_init(common_params * params) {
|
|||||||
|
|
||||||
llama_model_params model_params = common_model_params_to_llama(*params);
|
llama_model_params model_params = common_model_params_to_llama(*params);
|
||||||
|
|
||||||
llama_model * model = llama_load_model_from_file(params->model.c_str(), model_params);
|
llama_model * model = llama_model_load_from_file(params->model.c_str(), model_params);
|
||||||
if (model == NULL) {
|
if (model == NULL) {
|
||||||
LOG_ERR("%s: unable to load model\n" , __func__);
|
LOG_ERR("%s: unable to load model\n" , __func__);
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -75,7 +75,7 @@ static void llava_free(struct llava_context * ctx_llava) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
llama_free(ctx_llava->ctx_llama);
|
llama_free(ctx_llava->ctx_llama);
|
||||||
llama_free_model(ctx_llava->model);
|
llama_model_free(ctx_llava->model);
|
||||||
llama_backend_free();
|
llama_backend_free();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -310,7 +310,7 @@ static struct llama_model * llava_init(common_params * params) {
|
|||||||
|
|
||||||
llama_model_params model_params = common_model_params_to_llama(*params);
|
llama_model_params model_params = common_model_params_to_llama(*params);
|
||||||
|
|
||||||
llama_model * model = llama_load_model_from_file(params->model.c_str(), model_params);
|
llama_model * model = llama_model_load_from_file(params->model.c_str(), model_params);
|
||||||
if (model == NULL) {
|
if (model == NULL) {
|
||||||
LOG_ERR("%s: unable to load model\n" , __func__);
|
LOG_ERR("%s: unable to load model\n" , __func__);
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -354,7 +354,7 @@ static void llava_free(struct llava_context * ctx_llava) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
llama_free(ctx_llava->ctx_llama);
|
llama_free(ctx_llava->ctx_llama);
|
||||||
llama_free_model(ctx_llava->model);
|
llama_model_free(ctx_llava->model);
|
||||||
llama_backend_free();
|
llama_backend_free();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -575,7 +575,7 @@ int main(int argc, char ** argv) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -63,7 +63,7 @@ int main(int argc, char ** argv) {
|
|||||||
|
|
||||||
llama_model_params model_params = common_model_params_to_llama(params);
|
llama_model_params model_params = common_model_params_to_llama(params);
|
||||||
|
|
||||||
llama_model * model = llama_load_model_from_file(params.model.c_str(), model_params);
|
llama_model * model = llama_model_load_from_file(params.model.c_str(), model_params);
|
||||||
|
|
||||||
if (model == NULL) {
|
if (model == NULL) {
|
||||||
LOG_ERR("%s: unable to load model\n" , __func__);
|
LOG_ERR("%s: unable to load model\n" , __func__);
|
||||||
@ -266,7 +266,7 @@ int main(int argc, char ** argv) {
|
|||||||
llama_batch_free(batch);
|
llama_batch_free(batch);
|
||||||
|
|
||||||
llama_free(ctx);
|
llama_free(ctx);
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
|
|
||||||
llama_backend_free();
|
llama_backend_free();
|
||||||
|
|
||||||
|
@ -309,7 +309,7 @@ int main(int argc, char ** argv) {
|
|||||||
auto mparams = llama_model_default_params();
|
auto mparams = llama_model_default_params();
|
||||||
mparams.use_mlock = false;
|
mparams.use_mlock = false;
|
||||||
|
|
||||||
model = llama_load_model_from_file(params.model.c_str(), mparams);
|
model = llama_model_load_from_file(params.model.c_str(), mparams);
|
||||||
|
|
||||||
if (model == NULL) {
|
if (model == NULL) {
|
||||||
fprintf(stderr, "%s: error: failed to load model '%s'\n", __func__, params.model.c_str());
|
fprintf(stderr, "%s: error: failed to load model '%s'\n", __func__, params.model.c_str());
|
||||||
@ -323,7 +323,7 @@ int main(int argc, char ** argv) {
|
|||||||
|
|
||||||
if (ctx == NULL) {
|
if (ctx == NULL) {
|
||||||
fprintf(stderr, "%s: error: failed to create context with model '%s'\n", __func__, params.model.c_str());
|
fprintf(stderr, "%s: error: failed to create context with model '%s'\n", __func__, params.model.c_str());
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -347,7 +347,7 @@ int main(int argc, char ** argv) {
|
|||||||
fprintf(stderr, "%s: error: Quantization should be tested with a float model, "
|
fprintf(stderr, "%s: error: Quantization should be tested with a float model, "
|
||||||
"this model contains already quantized layers (%s is type %d)\n", __func__, kv_tensor.first.c_str(), kv_tensor.second->type);
|
"this model contains already quantized layers (%s is type %d)\n", __func__, kv_tensor.first.c_str(), kv_tensor.second->type);
|
||||||
llama_free(ctx);
|
llama_free(ctx);
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
included_layers++;
|
included_layers++;
|
||||||
@ -409,7 +409,7 @@ int main(int argc, char ** argv) {
|
|||||||
|
|
||||||
|
|
||||||
llama_free(ctx);
|
llama_free(ctx);
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
// report timing
|
// report timing
|
||||||
{
|
{
|
||||||
const int64_t t_main_end_us = ggml_time_us();
|
const int64_t t_main_end_us = ggml_time_us();
|
||||||
|
@ -664,7 +664,7 @@ class LlamaData {
|
|||||||
"\r%*s"
|
"\r%*s"
|
||||||
"\rLoading model",
|
"\rLoading model",
|
||||||
get_terminal_width(), " ");
|
get_terminal_width(), " ");
|
||||||
llama_model_ptr model(llama_load_model_from_file(opt.model_.c_str(), opt.model_params));
|
llama_model_ptr model(llama_model_load_from_file(opt.model_.c_str(), opt.model_params));
|
||||||
if (!model) {
|
if (!model) {
|
||||||
printe("%s: error: unable to load model from file: %s\n", __func__, opt.model_.c_str());
|
printe("%s: error: unable to load model from file: %s\n", __func__, opt.model_.c_str());
|
||||||
}
|
}
|
||||||
|
@ -69,7 +69,7 @@ int main(int argc, char ** argv) {
|
|||||||
llama_model_params model_params = llama_model_default_params();
|
llama_model_params model_params = llama_model_default_params();
|
||||||
model_params.n_gpu_layers = ngl;
|
model_params.n_gpu_layers = ngl;
|
||||||
|
|
||||||
llama_model * model = llama_load_model_from_file(model_path.c_str(), model_params);
|
llama_model * model = llama_model_load_from_file(model_path.c_str(), model_params);
|
||||||
if (!model) {
|
if (!model) {
|
||||||
fprintf(stderr , "%s: error: unable to load model\n" , __func__);
|
fprintf(stderr , "%s: error: unable to load model\n" , __func__);
|
||||||
return 1;
|
return 1;
|
||||||
@ -194,7 +194,7 @@ int main(int argc, char ** argv) {
|
|||||||
}
|
}
|
||||||
llama_sampler_free(smpl);
|
llama_sampler_free(smpl);
|
||||||
llama_free(ctx);
|
llama_free(ctx);
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -83,7 +83,7 @@ int main(int argc, char ** argv) {
|
|||||||
llama_model_params model_params = llama_model_default_params();
|
llama_model_params model_params = llama_model_default_params();
|
||||||
model_params.n_gpu_layers = ngl;
|
model_params.n_gpu_layers = ngl;
|
||||||
|
|
||||||
llama_model * model = llama_load_model_from_file(model_path.c_str(), model_params);
|
llama_model * model = llama_model_load_from_file(model_path.c_str(), model_params);
|
||||||
|
|
||||||
if (model == NULL) {
|
if (model == NULL) {
|
||||||
fprintf(stderr , "%s: error: unable to load model\n" , __func__);
|
fprintf(stderr , "%s: error: unable to load model\n" , __func__);
|
||||||
@ -199,7 +199,7 @@ int main(int argc, char ** argv) {
|
|||||||
|
|
||||||
llama_sampler_free(smpl);
|
llama_sampler_free(smpl);
|
||||||
llama_free(ctx);
|
llama_free(ctx);
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -338,7 +338,7 @@ int main(int raw_argc, char ** raw_argv) {
|
|||||||
|
|
||||||
llama_model_params model_params = llama_model_default_params();
|
llama_model_params model_params = llama_model_default_params();
|
||||||
model_params.vocab_only = true;
|
model_params.vocab_only = true;
|
||||||
llama_model * model = llama_load_model_from_file(model_path, model_params);
|
llama_model * model = llama_model_load_from_file(model_path, model_params);
|
||||||
if (!model) {
|
if (!model) {
|
||||||
fprintf(stderr, "Error: could not load model from file '%s'.\n", model_path);
|
fprintf(stderr, "Error: could not load model from file '%s'.\n", model_path);
|
||||||
return 1;
|
return 1;
|
||||||
@ -408,7 +408,7 @@ int main(int raw_argc, char ** raw_argv) {
|
|||||||
}
|
}
|
||||||
// silence valgrind
|
// silence valgrind
|
||||||
llama_free(ctx);
|
llama_free(ctx);
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
#include "llama.h"
|
#include "llama.h"
|
||||||
|
|
||||||
struct llama_model_deleter {
|
struct llama_model_deleter {
|
||||||
void operator()(llama_model * model) { llama_free_model(model); }
|
void operator()(llama_model * model) { llama_model_free(model); }
|
||||||
};
|
};
|
||||||
|
|
||||||
struct llama_context_deleter {
|
struct llama_context_deleter {
|
||||||
|
@ -413,12 +413,19 @@ extern "C" {
|
|||||||
// Call once at the end of the program - currently only used for MPI
|
// Call once at the end of the program - currently only used for MPI
|
||||||
LLAMA_API void llama_backend_free(void);
|
LLAMA_API void llama_backend_free(void);
|
||||||
|
|
||||||
LLAMA_API struct llama_model * llama_load_model_from_file(
|
DEPRECATED(LLAMA_API struct llama_model * llama_load_model_from_file(
|
||||||
|
const char * path_model,
|
||||||
|
struct llama_model_params params),
|
||||||
|
"use llama_model_load_from_file instead");
|
||||||
|
|
||||||
|
LLAMA_API struct llama_model * llama_model_load_from_file(
|
||||||
const char * path_model,
|
const char * path_model,
|
||||||
struct llama_model_params params);
|
struct llama_model_params params);
|
||||||
|
|
||||||
// TODO: rename to llama_model_free
|
DEPRECATED(LLAMA_API void llama_free_model(struct llama_model * model),
|
||||||
LLAMA_API void llama_free_model(struct llama_model * model);
|
"use llama_model_free instead");
|
||||||
|
|
||||||
|
LLAMA_API void llama_model_free(struct llama_model * model);
|
||||||
|
|
||||||
// TODO: rename to llama_init_from_model
|
// TODO: rename to llama_init_from_model
|
||||||
LLAMA_API struct llama_context * llama_new_context_with_model(
|
LLAMA_API struct llama_context * llama_new_context_with_model(
|
||||||
|
@ -2009,6 +2009,10 @@ struct llama_model_params llama_model_default_params() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void llama_free_model(struct llama_model * model) {
|
void llama_free_model(struct llama_model * model) {
|
||||||
|
llama_model_free(model);
|
||||||
|
}
|
||||||
|
|
||||||
|
void llama_model_free(struct llama_model * model) {
|
||||||
delete model;
|
delete model;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -11656,6 +11656,12 @@ int64_t llama_time_us(void) {
|
|||||||
struct llama_model * llama_load_model_from_file(
|
struct llama_model * llama_load_model_from_file(
|
||||||
const char * path_model,
|
const char * path_model,
|
||||||
struct llama_model_params params) {
|
struct llama_model_params params) {
|
||||||
|
return llama_model_load_from_file(path_model, params);
|
||||||
|
}
|
||||||
|
|
||||||
|
struct llama_model * llama_model_load_from_file(
|
||||||
|
const char * path_model,
|
||||||
|
struct llama_model_params params) {
|
||||||
ggml_time_init();
|
ggml_time_init();
|
||||||
|
|
||||||
llama_model * model = new llama_model;
|
llama_model * model = new llama_model;
|
||||||
@ -11694,7 +11700,7 @@ struct llama_model * llama_load_model_from_file(
|
|||||||
ggml_backend_reg_t rpc_reg = ggml_backend_reg_by_name("RPC");
|
ggml_backend_reg_t rpc_reg = ggml_backend_reg_by_name("RPC");
|
||||||
if (!rpc_reg) {
|
if (!rpc_reg) {
|
||||||
LLAMA_LOG_ERROR("%s: failed to find RPC backend\n", __func__);
|
LLAMA_LOG_ERROR("%s: failed to find RPC backend\n", __func__);
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -11702,7 +11708,7 @@ struct llama_model * llama_load_model_from_file(
|
|||||||
ggml_backend_rpc_add_device_t ggml_backend_rpc_add_device_fn = (ggml_backend_rpc_add_device_t) ggml_backend_reg_get_proc_address(rpc_reg, "ggml_backend_rpc_add_device");
|
ggml_backend_rpc_add_device_t ggml_backend_rpc_add_device_fn = (ggml_backend_rpc_add_device_t) ggml_backend_reg_get_proc_address(rpc_reg, "ggml_backend_rpc_add_device");
|
||||||
if (!ggml_backend_rpc_add_device_fn) {
|
if (!ggml_backend_rpc_add_device_fn) {
|
||||||
LLAMA_LOG_ERROR("%s: failed to find RPC device add function\n", __func__);
|
LLAMA_LOG_ERROR("%s: failed to find RPC device add function\n", __func__);
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -11712,7 +11718,7 @@ struct llama_model * llama_load_model_from_file(
|
|||||||
model->devices.push_back(dev);
|
model->devices.push_back(dev);
|
||||||
} else {
|
} else {
|
||||||
LLAMA_LOG_ERROR("%s: failed to add RPC device for server '%s'\n", __func__, server.c_str());
|
LLAMA_LOG_ERROR("%s: failed to add RPC device for server '%s'\n", __func__, server.c_str());
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -11744,7 +11750,7 @@ struct llama_model * llama_load_model_from_file(
|
|||||||
if (params.split_mode == LLAMA_SPLIT_MODE_NONE) {
|
if (params.split_mode == LLAMA_SPLIT_MODE_NONE) {
|
||||||
if (params.main_gpu < 0 || params.main_gpu >= (int)model->devices.size()) {
|
if (params.main_gpu < 0 || params.main_gpu >= (int)model->devices.size()) {
|
||||||
LLAMA_LOG_ERROR("%s: invalid value for main_gpu: %d (available devices: %d)\n", __func__, params.main_gpu, (int)model->devices.size());
|
LLAMA_LOG_ERROR("%s: invalid value for main_gpu: %d (available devices: %d)\n", __func__, params.main_gpu, (int)model->devices.size());
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
ggml_backend_dev_t main_gpu = model->devices[params.main_gpu];
|
ggml_backend_dev_t main_gpu = model->devices[params.main_gpu];
|
||||||
@ -11767,7 +11773,7 @@ struct llama_model * llama_load_model_from_file(
|
|||||||
LLAMA_LOG_INFO("%s: cancelled model load\n", __func__);
|
LLAMA_LOG_INFO("%s: cancelled model load\n", __func__);
|
||||||
}
|
}
|
||||||
|
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -13,10 +13,10 @@ int main(int argc, char ** argv) {
|
|||||||
|
|
||||||
std::thread([&model_path]() {
|
std::thread([&model_path]() {
|
||||||
llama_backend_init();
|
llama_backend_init();
|
||||||
auto * model = llama_load_model_from_file(model_path, llama_model_default_params());
|
auto * model = llama_model_load_from_file(model_path, llama_model_default_params());
|
||||||
auto * ctx = llama_new_context_with_model(model, llama_context_default_params());
|
auto * ctx = llama_new_context_with_model(model, llama_context_default_params());
|
||||||
llama_free(ctx);
|
llama_free(ctx);
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
llama_backend_free();
|
llama_backend_free();
|
||||||
}).join();
|
}).join();
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ int main(int argc, char *argv[] ) {
|
|||||||
(void) ctx;
|
(void) ctx;
|
||||||
return progress > 0.50;
|
return progress > 0.50;
|
||||||
};
|
};
|
||||||
auto * model = llama_load_model_from_file(model_path, params);
|
auto * model = llama_model_load_from_file(model_path, params);
|
||||||
llama_backend_free();
|
llama_backend_free();
|
||||||
return model == nullptr ? EXIT_SUCCESS : EXIT_FAILURE;
|
return model == nullptr ? EXIT_SUCCESS : EXIT_FAILURE;
|
||||||
}
|
}
|
||||||
|
@ -152,7 +152,7 @@ int main(int argc, char **argv) {
|
|||||||
|
|
||||||
mparams.vocab_only = true;
|
mparams.vocab_only = true;
|
||||||
|
|
||||||
model = llama_load_model_from_file(fname.c_str(), mparams);
|
model = llama_model_load_from_file(fname.c_str(), mparams);
|
||||||
|
|
||||||
if (model == NULL) {
|
if (model == NULL) {
|
||||||
fprintf(stderr, "%s: error: failed to load vocab '%s'\n", __func__, fname.c_str());
|
fprintf(stderr, "%s: error: failed to load vocab '%s'\n", __func__, fname.c_str());
|
||||||
@ -165,7 +165,7 @@ int main(int argc, char **argv) {
|
|||||||
|
|
||||||
if (ctx == NULL) {
|
if (ctx == NULL) {
|
||||||
fprintf(stderr, "%s: error: failed to load vocab '%s'\n", __func__, fname.c_str());
|
fprintf(stderr, "%s: error: failed to load vocab '%s'\n", __func__, fname.c_str());
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -300,7 +300,7 @@ int main(int argc, char **argv) {
|
|||||||
fprintf(stderr, "%s : tokens written to '%s'\n", __func__, (fname_text + ".tokcpp").c_str());
|
fprintf(stderr, "%s : tokens written to '%s'\n", __func__, (fname_text + ".tokcpp").c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
llama_free(ctx);
|
llama_free(ctx);
|
||||||
|
|
||||||
llama_backend_free();
|
llama_backend_free();
|
||||||
|
@ -46,7 +46,7 @@ int main(int argc, char **argv) {
|
|||||||
|
|
||||||
mparams.vocab_only = true;
|
mparams.vocab_only = true;
|
||||||
|
|
||||||
model = llama_load_model_from_file(fname.c_str(), mparams);
|
model = llama_model_load_from_file(fname.c_str(), mparams);
|
||||||
|
|
||||||
if (model == NULL) {
|
if (model == NULL) {
|
||||||
fprintf(stderr, "%s: error: failed to load vocab '%s'\n", __func__, fname.c_str());
|
fprintf(stderr, "%s: error: failed to load vocab '%s'\n", __func__, fname.c_str());
|
||||||
@ -59,7 +59,7 @@ int main(int argc, char **argv) {
|
|||||||
|
|
||||||
if (ctx == NULL) {
|
if (ctx == NULL) {
|
||||||
fprintf(stderr, "%s: error: failed to load vocab '%s'\n", __func__, fname.c_str());
|
fprintf(stderr, "%s: error: failed to load vocab '%s'\n", __func__, fname.c_str());
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -143,7 +143,7 @@ int main(int argc, char **argv) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
llama_free(ctx);
|
llama_free(ctx);
|
||||||
|
|
||||||
llama_backend_free();
|
llama_backend_free();
|
||||||
|
@ -34,7 +34,7 @@ int main(int argc, char ** argv) {
|
|||||||
|
|
||||||
mparams.vocab_only = true;
|
mparams.vocab_only = true;
|
||||||
|
|
||||||
model = llama_load_model_from_file(fname.c_str(), mparams);
|
model = llama_model_load_from_file(fname.c_str(), mparams);
|
||||||
|
|
||||||
if (model == NULL) {
|
if (model == NULL) {
|
||||||
fprintf(stderr, "%s: error: failed to load vocab '%s'\n", __func__, fname.c_str());
|
fprintf(stderr, "%s: error: failed to load vocab '%s'\n", __func__, fname.c_str());
|
||||||
@ -47,7 +47,7 @@ int main(int argc, char ** argv) {
|
|||||||
|
|
||||||
if (ctx == NULL) {
|
if (ctx == NULL) {
|
||||||
fprintf(stderr, "%s: error: failed to load vocab '%s'\n", __func__, fname.c_str());
|
fprintf(stderr, "%s: error: failed to load vocab '%s'\n", __func__, fname.c_str());
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -113,7 +113,7 @@ int main(int argc, char ** argv) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
llama_free_model(model);
|
llama_model_free(model);
|
||||||
llama_free(ctx);
|
llama_free(ctx);
|
||||||
|
|
||||||
llama_backend_free();
|
llama_backend_free();
|
||||||
|
Loading…
Reference in New Issue
Block a user