Skip to content
Merged
Show file tree
Hide file tree
Changes from 6 commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
782ba07
Add class for Qwen3-Omni
avasenin-14 Jul 8, 2026
8602664
Add tiny random tests
avasenin-14 Jul 8, 2026
50be29f
Update transformers version check
avasenin-14 Jul 8, 2026
9f227cb
Merge master into the branch
avasenin-14 Jul 8, 2026
7874f92
Add dedicated test in CI
avasenin-14 Jul 8, 2026
375f972
Move the test to tools run
avasenin-14 Jul 8, 2026
712b54f
Add check for other optimum-intel versions
avasenin-14 Jul 9, 2026
ec4b9bd
Merge branch 'master' into llm-bench-qwen3-omni
avasenin-14 Jul 20, 2026
592f9a2
Add speech recognition task
avasenin-14 Jul 20, 2026
1f90455
Add text-to-speech
avasenin-14 Jul 22, 2026
5437f61
Merge branch 'master' into llm-bench-qwen3-omni
avasenin-14 Jul 22, 2026
01765c3
Rewrite some obscure parts
avasenin-14 Jul 22, 2026
6eba48d
Add vlm pytorch path
avasenin-14 Jul 22, 2026
4e96315
Fix a couple things
avasenin-14 Jul 22, 2026
7d227c6
Fix a couple of issues
avasenin-14 Jul 22, 2026
aaa00d2
Simplify a bit
avasenin-14 Jul 22, 2026
87cace1
A couple fixes
avasenin-14 Jul 22, 2026
a38959a
Install Optimum from commit for the test
avasenin-14 Jul 22, 2026
2a58e3c
Add xfail for tiny-random model
avasenin-14 Jul 23, 2026
5828a6d
Fix review feedback
avasenin-14 Jul 31, 2026
2f8a360
Merge branch 'master' into llm-bench-qwen3-omni
avasenin-14 Jul 31, 2026
899ec89
Merge branch 'master' into llm-bench-qwen3-omni
avasenin-14 Aug 4, 2026
99c38a2
Add closing brace
avasenin-14 Aug 4, 2026
4081724
Merge branch 'master' into llm-bench-qwen3-omni
avasenin-14 Aug 5, 2026
14c1f1e
Pin OpenVino commit for ScatterNDUpdate exception workaround
avasenin-14 Aug 5, 2026
d3854f6
Merge branch 'master' into llm-bench-qwen3-omni
avasenin-14 Aug 10, 2026
909120f
Merge branch 'master' into llm-bench-qwen3-omni
avasenin-14 Aug 11, 2026
0b6b0af
Fix copilot feedback
avasenin-14 Aug 11, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1074,6 +1074,14 @@ jobs:
python -m pytest -vs ${{ env.SRC_DIR }}/tests/python_tests/samples/test_tools_llm_benchmark.py -m "samples and transformers_lower_v5"
env:
SAMPLES_PY_DIR: "${{ env.SRC_DIR }}/tools"
- name: Test LLM Benchmark Tools with Qwen3-Omni model
if: ${{ fromJSON(needs.smart_ci.outputs.affected_components).llm_bench }}
run: |
source ${{ env.INSTALL_DIR }}/setupvars.sh
python -m pip install transformers==5.1
Comment thread
avasenin-14 marked this conversation as resolved.
python -m pytest -vs ${{ env.SRC_DIR }}/tests/python_tests/samples/test_tools_llm_benchmark.py -k "qwen3-omni"
Comment thread
avasenin-14 marked this conversation as resolved.
Outdated
Comment thread
avasenin-14 marked this conversation as resolved.
Outdated
env:
SAMPLES_PY_DIR: "${{ env.SRC_DIR }}/tools"

genai_nodejs_tests:
name: Node.js bindings tests
Expand Down
20 changes: 20 additions & 0 deletions tests/python_tests/samples/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,22 @@
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)


def get_transformers_version():
"""Return (major, minor) of the installed transformers, or None if unavailable."""
try:
version = metadata.version("transformers")
except metadata.PackageNotFoundError:
return None
try:
major, minor = version.split(".")[:2]
return int(major), int(minor)
except ValueError:
return None
Comment thread
avasenin-14 marked this conversation as resolved.
Outdated


TRANSFORMERS_VERSION = get_transformers_version()

# Dictionary containing model configurations.
# Each key is a model identifier, and the value is a dictionary with:
# - "name": the model's name or path
Expand Down Expand Up @@ -197,6 +213,10 @@
"name": "optimum-intel-internal-testing/tiny-random-qwen3-vl",
"convert_args": ["--trust-remote-code", "--task", "image-text-to-text"],
},
"tiny-random-qwen3-omni": {
"name": "optimum-intel-internal-testing/tiny-random-qwen3-omni",
"convert_args": ["--trust-remote-code", "--task", "image-text-to-text"],
},
}

TEST_FILES = {
Expand Down
31 changes: 30 additions & 1 deletion tests/python_tests/samples/test_tools_llm_benchmark.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@
from utils.constants import get_ov_cache_converted_models_dir
from utils.kokoro_test_assets import prepare_tiny_kokoro_model_path
from utils.kokoro_test_assets import prepare_tiny_kokoro_ov_path
from conftest import SAMPLES_PY_DIR, convert_model, download_test_content
from conftest import SAMPLES_PY_DIR, convert_model, download_test_content, TRANSFORMERS_VERSION


convert_draft_model = convert_model
download_mask_image = download_test_content
Expand Down Expand Up @@ -714,3 +715,31 @@ def test_python_tool_llm_benchmark_video_gen_json(
generate_llm_bench_input_generation_jsonl,
] + sample_args
run_sample(benchmark_py_command)

@pytest.mark.samples
@pytest.mark.skipif(
TRANSFORMERS_VERSION is None or TRANSFORMERS_VERSION < (5, 1),
reason="Requires transformers >= 5.1",
)
Comment thread
avasenin-14 marked this conversation as resolved.
Outdated
@pytest.mark.parametrize("download_test_content", ["cat.png"], indirect=True)
@pytest.mark.parametrize("convert_model", ["tiny-random-qwen3-omni"], indirect=True)
@pytest.mark.parametrize(
"sample_args",
[
["-d", "cpu", "-n", "1", "--num_steps", "4", "--task", "visual_text_gen", "--optimum"],
["-d", "cpu", "-n", "1", "--num_steps", "4", "--task", "visual_text_gen", "--genai"],
],
)
Comment thread
avasenin-14 marked this conversation as resolved.
def test_python_tool_llm_benchmark_visual_text_gen(self, download_test_content, convert_model, sample_args):
Comment thread
avasenin-14 marked this conversation as resolved.
Outdated
benchmark_script = SAMPLES_PY_DIR / "llm_bench/benchmark.py"
benchmark_py_command = [
sys.executable,
Comment thread
avasenin-14 marked this conversation as resolved.
Outdated
benchmark_script,
"-m",
convert_model,
"--media",
download_test_content,
"--prompt",
"What animal is in this image?",
] + sample_args
run_sample(benchmark_py_command)
4 changes: 3 additions & 1 deletion tools/llm_bench/llm_bench_utils/config_class.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
OVDiffusionPipeline,
OVModelForSpeechSeq2Seq,
OVModelForVisualCausalLM,
OVModelForMultimodalLM,
OVPipelineForInpainting,
OVPipelineForImage2Image,
OVModelForFeatureExtraction,
Expand Down Expand Up @@ -171,7 +172,8 @@ class UseCaseTextToSpeech(UseCase):
"videochat-flash-qwen",
"gemma4",
]
)
),
UseCaseVLM(["qwen3-omni"], ov_cls=OVModelForMultimodalLM),
Comment thread
avasenin-14 marked this conversation as resolved.
],
"speech_to_text": [UseCaseSpeech2Text(["whisper"])],
"image_cls": [UseCaseImageCls(["vit"])],
Expand Down
Loading