* Fix bug in main.cpp where penalize_nl=false has no effect. It modifies the underlying logits array, but at this point we are already working on the candidates copy.
* Suppress redefinition warning for NOMINMAX on mingw. In my installation, this macro is already defined by /usr/lib/gcc/x86_64-w64-mingw32/11/include/c++/x86_64-w64-mingw32/bits/os_defines.h:45.
* main : fix indentation
* main : pass ctx to llama_token_nl()
---------
Co-authored-by: Georgi Gerganov <redacted>
last_n_tokens.data() + last_n_tokens.size() - last_n_repeat,
last_n_repeat, alpha_frequency, alpha_presence);
if (!penalize_nl) {
- logits[llama_token_nl(ctx)] = nl_logit;
+ for (size_t idx = 0; idx < candidates_p.size; idx++) {
+ if (candidates_p.data[idx].id == llama_token_nl(ctx)) {
+ candidates_p.data[idx].logit = nl_logit;
+ break;
+ }
+ }
}
if (grammar != NULL) {