From 79242d8ddc390049b51e5a5a1c7e24dd132cc243 Mon Sep 17 00:00:00 2001 From: okaris Date: Tue, 24 Jun 2025 08:59:29 +0000 Subject: [PATCH] llama : expose layer device type via C API --- include/llama.h | 1 + src/llama-model.cpp | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/include/llama.h b/include/llama.h index 453190e852b51..0095b2bcc7f33 100644 --- a/include/llama.h +++ b/include/llama.h @@ -481,6 +481,7 @@ extern "C" { LLAMA_API int32_t llama_model_n_ctx_train(const struct llama_model * model); LLAMA_API int32_t llama_model_n_embd (const struct llama_model * model); LLAMA_API int32_t llama_model_n_layer (const struct llama_model * model); + LLAMA_API int32_t llama_model_dev_layer (const struct llama_model * model, int32_t il); LLAMA_API int32_t llama_model_n_head (const struct llama_model * model); LLAMA_API int32_t llama_model_n_head_kv (const struct llama_model * model); LLAMA_API int32_t llama_model_n_swa (const struct llama_model * model); diff --git a/src/llama-model.cpp b/src/llama-model.cpp index 1813f06d7b308..cb480592ddacb 100644 --- a/src/llama-model.cpp +++ b/src/llama-model.cpp @@ -19192,6 +19192,11 @@ int32_t llama_model_n_layer(const llama_model * model) { return model->hparams.n_layer; } +int32_t llama_model_dev_layer(const llama_model * model, int32_t il) { + ggml_backend_dev_t dev = model->dev_layer(il); + return static_cast(ggml_backend_dev_type(dev)); +} + int32_t llama_model_n_head(const llama_model * model) { return model->hparams.n_head(); }