Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
change
sglang
Commits
b4408e60
Unverified
Commit
b4408e60
authored
Oct 10, 2025
by
Lianmin Zheng
Committed by
GitHub
Oct 10, 2025
Browse files
Revert "fix: fix video input for qwen3-vl" (#11437)
parent
52fcbbb8
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
3 additions
and
45 deletions
+3
-45
python/sglang/srt/layers/rotary_embedding.py
python/sglang/srt/layers/rotary_embedding.py
+0
-5
python/sglang/srt/model_executor/model_runner.py
python/sglang/srt/model_executor/model_runner.py
+1
-16
test/srt/test_vision_openai_server_a.py
test/srt/test_vision_openai_server_a.py
+0
-21
test/srt/test_vision_openai_server_common.py
test/srt/test_vision_openai_server_common.py
+2
-3
No files found.
python/sglang/srt/layers/rotary_embedding.py
View file @
b4408e60
...
...
@@ -1126,11 +1126,6 @@ class MRotaryEmbedding(RotaryEmbedding):
second_per_grid_ts
:
Optional
[
torch
.
Tensor
]
=
None
,
**
kwargs
,
)
->
Tuple
[
torch
.
Tensor
,
torch
.
Tensor
]:
if
model_type
.
startswith
(
"qwen3_vl"
)
and
video_grid_thw
is
not
None
:
video_grid_thw
=
torch
.
repeat_interleave
(
video_grid_thw
,
video_grid_thw
[:,
0
],
dim
=
0
)
video_grid_thw
[:,
0
]
=
1
mrope_position_deltas
=
[]
if
input_ids
is
not
None
and
(
image_grid_thw
is
not
None
or
video_grid_thw
is
not
None
...
...
python/sglang/srt/model_executor/model_runner.py
View file @
b4408e60
...
...
@@ -186,6 +186,7 @@ UNBALANCED_MODEL_LOADING_TIMEOUT_S = 300
logger
=
logging
.
getLogger
(
__name__
)
if
_is_npu
:
import
torch_npu
...
...
@@ -624,22 +625,6 @@ class ModelRunner:
"Setting hicache_io_backend to vanilla I/O, which may lead to suboptimal performance with small page sizes."
)
if
self
.
model_config
.
hf_config
.
model_type
==
"qwen3_vl_moe"
:
if
(
quantization_config
:
=
getattr
(
self
.
model_config
.
hf_config
,
"quantization_config"
)
)
is
not
None
:
text_config
=
self
.
model_config
.
hf_text_config
weight_block_size_n
=
quantization_config
[
"weight_block_size"
][
0
]
if
(
text_config
.
moe_intermediate_size
//
(
self
.
tp_size
//
self
.
moe_ep_size
)
)
%
weight_block_size_n
!=
0
:
raise
ValueError
(
f
"For qwen3-vl-fp8 models, please make sure (
{
text_config
.
moe_intermediate_size
=
}
// (
{
self
.
tp_size
=
}
//
{
self
.
moe_ep_size
=
}
)) %
{
weight_block_size_n
=
}
== 0"
)
def
init_torch_distributed
(
self
):
logger
.
info
(
"Init torch distributed begin."
)
...
...
test/srt/test_vision_openai_server_a.py
View file @
b4408e60
...
...
@@ -50,27 +50,6 @@ class TestQwen2VLServer(ImageOpenAITestMixin, VideoOpenAITestMixin):
cls
.
base_url
+=
"/v1"
class
TestQwen3VLServer
(
ImageOpenAITestMixin
,
VideoOpenAITestMixin
):
@
classmethod
def
setUpClass
(
cls
):
cls
.
model
=
"Qwen/Qwen3-VL-30B-A3B-Instruct"
cls
.
base_url
=
DEFAULT_URL_FOR_TEST
cls
.
api_key
=
"sk-123456"
cls
.
process
=
popen_launch_server
(
cls
.
model
,
cls
.
base_url
,
timeout
=
DEFAULT_TIMEOUT_FOR_SERVER_LAUNCH
,
api_key
=
cls
.
api_key
,
other_args
=
[
"--mem-fraction-static"
,
"0.80"
,
"--cuda-graph-max-bs"
,
"4"
,
],
)
cls
.
base_url
+=
"/v1"
class
TestQwen2_5_VLServer
(
ImageOpenAITestMixin
,
VideoOpenAITestMixin
):
@
classmethod
def
setUpClass
(
cls
):
...
...
test/srt/test_vision_openai_server_common.py
View file @
b4408e60
...
...
@@ -494,7 +494,7 @@ class VideoOpenAITestMixin(TestOpenAIOmniServerBase):
**
(
self
.
get_vision_request_kwargs
()),
)
video_response
=
response
.
choices
[
0
].
message
.
content
.
lower
()
video_response
=
response
.
choices
[
0
].
message
.
content
print
(
"-"
*
30
)
print
(
f
"Video response:
\n
{
video_response
}
"
)
...
...
@@ -502,10 +502,9 @@ class VideoOpenAITestMixin(TestOpenAIOmniServerBase):
# Add assertions to validate the video response
assert
(
"i
p
od"
in
video_response
"i
P
od"
in
video_response
or
"device"
in
video_response
or
"microphone"
in
video_response
or
"phone"
in
video_response
),
f
"video_response:
{
video_response
}
, should contain 'iPod' or 'device'"
assert
(
"man"
in
video_response
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment