llama : sanitize tokens in the upper bound (#9359)

This commit is contained in:
slaren 2024-09-08 12:41:51 +02:00 committed by GitHub
parent 00b02bb249
commit eae597182c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -16077,7 +16077,7 @@ static int llama_decode_internal(
}
for (uint32_t i = 0; i < n_tokens_all; ++i) {
if (batch_all.token[i] < 0) {
if (batch_all.token[i] < 0 || (uint32_t)batch_all.token[i] >= lctx.model.vocab.n_vocab) {
LLAMA_LOG_ERROR("%s: invalid token[%d] = %d", __func__, i, batch_all.token[i]);
return -1;
}
@ -16376,7 +16376,7 @@ static int llama_encode_internal(
}
for (uint32_t i = 0; i < n_tokens; ++i) {
if (batch.token[i] < 0) {
if (batch.token[i] < 0 || (uint32_t)batch.token[i] >= lctx.model.vocab.n_vocab) {
LLAMA_LOG_ERROR("%s: invalid token[%d] = %d", __func__, i, batch.token[i]);
return -1;
}