From 5475357458a8fb2acd3728af2746edef2fae2b61 Mon Sep 17 00:00:00 2001 From: Michal Moskal Date: Wed, 29 Jan 2025 08:53:11 -0800 Subject: [PATCH] fail llama_sampler_init_llg() at runtime --- common/llguidance.cpp | 21 ++++++++++++++------- common/sampling.h | 6 ++---- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/common/llguidance.cpp b/common/llguidance.cpp index d6a6aa708..192a17215 100644 --- a/common/llguidance.cpp +++ b/common/llguidance.cpp @@ -1,14 +1,14 @@ +#include "common.h" +#include "sampling.h" +#include "log.h" +#include "llama.h" + +#include + #ifdef LLAMA_USE_LLGUIDANCE -# include "common.h" -# include "sampling.h" -# include "log.h" -# include "llama.h" - # include "llguidance.h" -# include - struct llama_sampler_llg { const llama_vocab * vocab; std::string grammar_kind; @@ -263,4 +263,11 @@ llama_sampler * llama_sampler_init_llg(const llama_vocab * vocab, const char * g }; } +#else + +llama_sampler * llama_sampler_init_llg(const llama_vocab *, const char *, const char *) { + LOG_WRN("llguidance (cmake -DLLAMA_LLGUIDANCE=ON) is not enabled"); + return nullptr; +} + #endif // LLAMA_USE_LLGUIDANCE diff --git a/common/sampling.h b/common/sampling.h index 38ae951e5..2064421db 100644 --- a/common/sampling.h +++ b/common/sampling.h @@ -103,7 +103,5 @@ std::string common_sampler_type_to_str(enum common_sampler_type cnstr); std::vector common_sampler_types_from_names(const std::vector & names, bool allow_alt_names); std::vector common_sampler_types_from_chars(const std::string & chars); -#ifdef LLAMA_USE_LLGUIDANCE -struct llama_sampler * llama_sampler_init_llg(const llama_vocab * vocab, - const char * grammar_kind, const char * grammar_data); -#endif // LLAMA_USE_LLGUIDANCE +llama_sampler * llama_sampler_init_llg(const llama_vocab * vocab, + const char * grammar_kind, const char * grammar_data);