prevent outputting infinity to logprobs (+1 squashed commits)

Squashed commits:

[bcc5f8b92] prevent outputting infinity to logprobs
This commit is contained in:
Concedo 2024-11-13 00:02:46 +08:00
parent df7c2b9923
commit 48e9372337

View file

@ -606,13 +606,21 @@ llama_token sample_token(llama_token_data_array * candidates, std::mt19937 & rng
int idx = dist(rng);
newpick.selected_token = FileFormatTokenizeID(candidates->data[idx].id, file_format, true);
newpick.selected_logprob = logf(candidates->data[idx].p);
float rp1 = (candidates->data[idx].p<=0.0001?0.0001f:candidates->data[idx].p);
float sprob = logf(rp1);
sprob = (sprob > 999.0f?999.0f:sprob);
sprob = (sprob < -999.0f?-999.0f:sprob);
newpick.selected_logprob = sprob;
newpick.selected_probability = candidates->data[idx].p;
newpick.selected_tokenid = candidates->data[idx].id;
for (size_t i = 0; (i < candidates->size && i<logprobs_max); ++i)
{
newpick.tokens.push_back(FileFormatTokenizeID(candidates->data[i].id, file_format, true));
newpick.logprobs.push_back(logf(candidates->data[i].p));
float rp2 = (candidates->data[i].p<=0.0001?0.0001f:candidates->data[i].p);
float prob = logf(rp2);
prob = (prob > 999.0f?999.0f:prob);
prob = (prob < -999.0f?-999.0f:prob);
newpick.logprobs.push_back(prob);
newpick.p.push_back(candidates->data[i].p);
newpick.tokenid.push_back(candidates->data[i].id);
}