Skip to content

Commit d022115

Browse files
authored
[Bugfix] Inconsistent token calculation compared to HF in llava family (#18479)
Signed-off-by: jaycha <jaycha@ncsoft.com>
1 parent acb54ca commit d022115

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

vllm/model_executor/models/llava_next.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,11 +135,13 @@ def _get_num_unpadded_features(
135135
current_aspect_ratio = current_width / current_height
136136

137137
if aspect_ratio > current_aspect_ratio:
138-
new_height = (original_height * current_width) // original_width
138+
new_height = int(
139+
round(original_height * (current_width / original_width), 7))
139140
padding = (current_height - new_height) // 2
140141
current_height = current_height - (2 * padding)
141142
else:
142-
new_width = (original_width * current_height) // original_height
143+
new_width = int(
144+
round(original_width * (current_height / original_height), 7))
143145
padding = (current_width - new_width) // 2
144146
current_width = current_width - (2 * padding)
145147

vllm/model_executor/models/llava_onevision.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -116,11 +116,13 @@ def _get_num_unpadded_features(
116116
current_aspect_ratio = current_width / current_height
117117

118118
if aspect_ratio > current_aspect_ratio:
119-
new_height = (original_height * current_width) // original_width
119+
new_height = int(
120+
round(original_height * (current_width / original_width), 7))
120121
padding = (current_height - new_height) // 2
121122
current_height = current_height - (2 * padding)
122123
else:
123-
new_width = (original_width * current_height) // original_height
124+
new_width = int(
125+
round(original_width * (current_height / original_height), 7))
124126
padding = (current_width - new_width) // 2
125127
current_width = current_width - (2 * padding)
126128

0 commit comments

Comments
 (0)