diff --git a/python/sglang/srt/hardware_backend/npu/allocator_npu.py b/python/sglang/srt/hardware_backend/npu/allocator_npu.py index 32ec7ffc8..e59dbf6a0 100644 --- a/python/sglang/srt/hardware_backend/npu/allocator_npu.py +++ b/python/sglang/srt/hardware_backend/npu/allocator_npu.py @@ -126,6 +126,7 @@ class NPUPagedTokenToKVPoolAllocator(PagedTokenToKVPoolAllocator): if num_new_pages == 0: out_indices = last_loc + 1 else: + start_new_pages = start_new_pages.clamp(max=num_new_pages - 1) out_indices = (last_loc + 1) * (1 - need_new_pages) + self.free_pages[ start_new_pages ] * self.page_size * need_new_pages