vLLM is an inference and serving engine for large language models. Prior to 0.32.0, vllm/tokenizers/hf.py computes max_token_id with an off-by-one upper bound, allowing a pre-tokenized prompt ID equal to the vocabulary size to pass validation. For a tensor-parallel size of one and an exact multiple-of-64 vocabulary, VocabParallelEmbedding.forward does not mask that value before F.embedding uses it, causing a CUDA device-side assertion and terminating the engine. This issue is fixed in version 0.32.0.
https://github.com/vllm-project/vllm/security/advisories/GHSA-q97c-p368-75c4
https://github.com/vllm-project/vllm/releases/tag/v0.32.0
https://github.com/vllm-project/vllm/pull/59491
https://github.com/vllm-project/vllm/commit/37cecc8141e2dcba9dd534897a164d4baaf27229