diff options
| author | Mitja Felicijan <mitja.felicijan@gmail.com> | 2026-02-12 20:57:17 +0100 |
|---|---|---|
| committer | Mitja Felicijan <mitja.felicijan@gmail.com> | 2026-02-12 20:57:17 +0100 |
| commit | b333b06772c89d96aacb5490d6a219fba7c09cc6 (patch) | |
| tree | 211df60083a5946baa2ed61d33d8121b7e251b06 /llama.cpp/examples/lookup/lookup-create.cpp | |
| download | llmnpc-b333b06772c89d96aacb5490d6a219fba7c09cc6.tar.gz | |
Engage!
Diffstat (limited to 'llama.cpp/examples/lookup/lookup-create.cpp')
| -rw-r--r-- | llama.cpp/examples/lookup/lookup-create.cpp | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/llama.cpp/examples/lookup/lookup-create.cpp b/llama.cpp/examples/lookup/lookup-create.cpp new file mode 100644 index 0000000..f7b6ea1 --- /dev/null +++ b/llama.cpp/examples/lookup/lookup-create.cpp @@ -0,0 +1,40 @@ +#include "arg.h" +#include "common.h" +#include "ngram-cache.h" +#include "llama.h" + +#include <string> +#include <vector> + +int main(int argc, char ** argv){ + common_params params; + + if (!common_params_parse(argc, argv, params, LLAMA_EXAMPLE_LOOKUP)) { + return 1; + } + + // init llama.cpp + llama_backend_init(); + llama_numa_init(params.numa); + + // load the model + auto llama_init = common_init_from_params(params); + + auto * model = llama_init->model(); + auto * ctx = llama_init->context(); + + GGML_ASSERT(model != nullptr); + + // tokenize the prompt + std::vector<llama_token> inp; + inp = common_tokenize(ctx, params.prompt, true, true); + fprintf(stderr, "%s: tokenization done\n", __func__); + + common_ngram_cache ngram_cache; + common_ngram_cache_update(ngram_cache, LLAMA_NGRAM_STATIC, LLAMA_NGRAM_STATIC, inp, inp.size(), true); + fprintf(stderr, "%s: hashing done, writing file to %s\n", __func__, params.speculative.lookup_cache_static.c_str()); + + common_ngram_cache_save(ngram_cache, params.speculative.lookup_cache_static); + + return 0; +} |
