[Bugfix] Inconsistent token calculation compared to HF in llava family (#18479)

Signed-off-by: jaycha <jaycha@ncsoft.com>
This commit is contained in:
youngrok cha 2025-05-22 12:21:47 +09:00 committed by GitHub
parent acb54ca8e1
commit d022115cc6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 8 additions and 4 deletions

View File

@ -135,11 +135,13 @@ class LlavaNextProcessingInfo(BaseLlavaProcessingInfo):
current_aspect_ratio = current_width / current_height
if aspect_ratio > current_aspect_ratio:
new_height = (original_height * current_width) // original_width
new_height = int(
round(original_height * (current_width / original_width), 7))
padding = (current_height - new_height) // 2
current_height = current_height - (2 * padding)
else:
new_width = (original_width * current_height) // original_height
new_width = int(
round(original_width * (current_height / original_height), 7))
padding = (current_width - new_width) // 2
current_width = current_width - (2 * padding)

View File

@ -116,11 +116,13 @@ class LlavaOnevisionProcessingInfo(LlavaNextProcessingInfo):
current_aspect_ratio = current_width / current_height
if aspect_ratio > current_aspect_ratio:
new_height = (original_height * current_width) // original_width
new_height = int(
round(original_height * (current_width / original_width), 7))
padding = (current_height - new_height) // 2
current_height = current_height - (2 * padding)
else:
new_width = (original_width * current_height) // original_height
new_width = int(
round(original_width * (current_height / original_height), 7))
padding = (current_width - new_width) // 2
current_width = current_width - (2 * padding)