Numeric fix

Should probably still scale by temp even if penalized
This commit is contained in:
beiller 2023-03-11 14:55:57 -05:00 committed by GitHub
parent 78651d5792
commit c90e78edc3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -392,7 +392,7 @@ gpt_vocab::id llama_sample_top_p(
const double scale = 1.0/temp; const double scale = 1.0/temp;
for (int i = 0; i < n_logits; ++i) { for (int i = 0; i < n_logits; ++i) {
if ( std::find(last_n_tokens.begin(), last_n_tokens.end(), i) != last_n_tokens.end() ) { if ( std::find(last_n_tokens.begin(), last_n_tokens.end(), i) != last_n_tokens.end() ) {
logits_id.push_back(std::make_pair(logits[i]*(1/repeat_penalty), i)); logits_id.push_back(std::make_pair(logits[i]*scale*(1/repeat_penalty), i));
} else { } else {
logits_id.push_back(std::make_pair(logits[i]*scale, i)); logits_id.push_back(std::make_pair(logits[i]*scale, i));
} }