From 2bb992f034689e2ddd7b9ac05163b0359a5957b3 Mon Sep 17 00:00:00 2001 From: Robert Brisita <986796+rbrisita@users.noreply.github.com> Date: Tue, 2 May 2023 12:23:44 -0400 Subject: llama : allow 0 as a seed number. (#1275) --- examples/common.cpp | 2 +- examples/embedding/embedding.cpp | 2 +- examples/main/README.md | 2 +- examples/main/main.cpp | 2 +- examples/perplexity/perplexity.cpp | 2 +- llama.cpp | 6 +++--- llama.h | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/examples/common.cpp b/examples/common.cpp index ad7b0bb..2bf0dc5 100644 --- a/examples/common.cpp +++ b/examples/common.cpp @@ -324,7 +324,7 @@ void gpt_print_usage(int /*argc*/, char ** argv, const gpt_params & params) { fprintf(stderr, " run in interactive mode and poll user input upon seeing PROMPT (can be\n"); fprintf(stderr, " specified more than once for multiple prompts).\n"); fprintf(stderr, " --color colorise output to distinguish prompt and user input from generations\n"); - fprintf(stderr, " -s SEED, --seed SEED RNG seed (default: -1, use random seed for <= 0)\n"); + fprintf(stderr, " -s SEED, --seed SEED RNG seed (default: -1, use random seed for < 0)\n"); fprintf(stderr, " -t N, --threads N number of threads to use during computation (default: %d)\n", params.n_threads); fprintf(stderr, " -p PROMPT, --prompt PROMPT\n"); fprintf(stderr, " prompt to start generation with (default: empty)\n"); diff --git a/examples/embedding/embedding.cpp b/examples/embedding/embedding.cpp index b3e0014..1e9d8a8 100644 --- a/examples/embedding/embedding.cpp +++ b/examples/embedding/embedding.cpp @@ -21,7 +21,7 @@ int main(int argc, char ** argv) { fprintf(stderr, "%s: build = %d (%s)\n", __func__, BUILD_NUMBER, BUILD_COMMIT); - if (params.seed <= 0) { + if (params.seed < 0) { params.seed = time(NULL); } diff --git a/examples/main/README.md b/examples/main/README.md index 234bf2e..ba210d1 100644 --- a/examples/main/README.md +++ b/examples/main/README.md @@ -130,7 +130,7 @@ It is important to note that the generated text may be shorter than the specifie - `-s SEED, --seed SEED`: Set the random number generator (RNG) seed (default: -1). -The RNG seed is used to initialize the random number generator that influences the text generation process. By setting a specific seed value, you can obtain consistent and reproducible results across multiple runs with the same input and settings. This can be helpful for testing, debugging, or comparing the effects of different options on the generated text to see when they diverge. If the seed is set to a value less than or equal to 0, a random seed will be used, which will result in different outputs on each run. +The RNG seed is used to initialize the random number generator that influences the text generation process. By setting a specific seed value, you can obtain consistent and reproducible results across multiple runs with the same input and settings. This can be helpful for testing, debugging, or comparing the effects of different options on the generated text to see when they diverge. If the seed is set to a value less than 0, a random seed will be used, which will result in different outputs on each run. ### Temperature diff --git a/examples/main/main.cpp b/examples/main/main.cpp index 0514186..727c96c 100644 --- a/examples/main/main.cpp +++ b/examples/main/main.cpp @@ -84,7 +84,7 @@ int main(int argc, char ** argv) { fprintf(stderr, "%s: build = %d (%s)\n", __func__, BUILD_NUMBER, BUILD_COMMIT); - if (params.seed <= 0) { + if (params.seed < 0) { params.seed = time(NULL); } diff --git a/examples/perplexity/perplexity.cpp b/examples/perplexity/perplexity.cpp index 2ca3388..d474bc5 100644 --- a/examples/perplexity/perplexity.cpp +++ b/examples/perplexity/perplexity.cpp @@ -109,7 +109,7 @@ int main(int argc, char ** argv) { fprintf(stderr, "%s: build = %d (%s)\n", __func__, BUILD_NUMBER, BUILD_COMMIT); - if (params.seed <= 0) { + if (params.seed < 0) { params.seed = time(NULL); } diff --git a/llama.cpp b/llama.cpp index b8751be..a8156bc 100644 --- a/llama.cpp +++ b/llama.cpp @@ -809,7 +809,7 @@ struct llama_context_params llama_context_default_params() { struct llama_context_params result = { /*.n_ctx =*/ 512, /*.n_parts =*/ -1, - /*.seed =*/ 0, + /*.seed =*/ -1, /*.f16_kv =*/ false, /*.logits_all =*/ false, /*.vocab_only =*/ false, @@ -2053,7 +2053,7 @@ struct llama_context * llama_init_from_file( llama_context * ctx = new llama_context; - if (params.seed <= 0) { + if (params.seed < 0) { params.seed = time(NULL); } @@ -2395,7 +2395,7 @@ int llama_get_kv_cache_token_count(const struct llama_context * ctx) { #define LLAMA_MAX_RNG_STATE 64*1024 void llama_set_rng_seed(struct llama_context * ctx, int seed) { - if (seed <= 0) { + if (seed < 0) { seed = time(NULL); } ctx->rng.seed(seed); diff --git a/llama.h b/llama.h index 2f6ce8d..4052a8c 100644 --- a/llama.h +++ b/llama.h @@ -56,7 +56,7 @@ extern "C" { struct llama_context_params { int n_ctx; // text context int n_parts; // -1 for default - int seed; // RNG seed, 0 for random + int seed; // RNG seed, -1 for random bool f16_kv; // use fp16 for KV cache bool logits_all; // the llama_eval() call computes all logits, not just the last one -- cgit v1.2.3