Skip to content

Commit 076774b

Browse files
authored
Wire up muse-glimmer CI (#21797)
As titled
1 parent d521760 commit 076774b

5 files changed

Lines changed: 35 additions & 181 deletions

File tree

.github/workflows/mlx.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ on:
1414
- extension/llm/export/**
1515
- extension/audio/**
1616
- examples/models/gemma4_31b/**
17+
- examples/models/muse-glimmer/**
1718
- examples/models/parakeet/**
1819
- examples/models/voxtral_realtime/**
1920
- examples/models/qwen3_5_moe/**
@@ -90,6 +91,7 @@ jobs:
9091
backends/mlx/test/test_slot_recycling.py \
9192
backends/mlx/test/test_sample.py \
9293
examples/models/gemma4_31b/tests/test_mlx_pipeline.py \
94+
examples/models/muse-glimmer/tests/test_mlx_pipeline.py \
9395
-v
9496
echo "::endgroup::"
9597

examples/models/muse-glimmer/tests/test_benchmark_dflash_long_context.py

Lines changed: 0 additions & 174 deletions
This file was deleted.

examples/models/muse-glimmer/tests/test_ondevice_serving.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,15 @@
1010

1111
import pytest
1212

13-
from executorch.examples.llm_server.python.chat_template import ChatTemplate
14-
from executorch.examples.llm_server.python.protocol import ChatMessage
13+
# The serving stack is built on pydantic, which ships with the llm_server
14+
# extras (examples/llm_server/python/requirements.txt) rather than core
15+
# ExecuTorch, so skip instead of failing collection when it is absent.
16+
pytest.importorskip("pydantic", reason="requires llm_server serving dependencies")
17+
18+
from executorch.examples.llm_server.python.chat_template import ( # noqa: E402
19+
ChatTemplate,
20+
)
21+
from executorch.examples.llm_server.python.protocol import ChatMessage # noqa: E402
1522

1623
_SERVER = os.environ.get("MUSE_GLIMMER_SERVER_URL")
1724
_HF_DIR = os.environ.get("MUSE_GLIMMER_HF_DIR")

examples/models/muse-glimmer/tests/test_serve.py

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,20 @@
1313

1414
import pytest
1515

16-
from executorch.examples.llm_server.python import chat_template
17-
from executorch.examples.llm_server.python.errors import APIError
18-
from executorch.examples.llm_server.python.protocol import ChatCompletionRequest
19-
from executorch.examples.llm_server.python.session_runtime import PromptInput
20-
from executorch.examples.models.muse_glimmer.serving import serve
16+
# The serving stack is built on pydantic, which ships with the llm_server
17+
# extras (examples/llm_server/python/requirements.txt) rather than core
18+
# ExecuTorch, so skip instead of failing collection when it is absent.
19+
pytest.importorskip("pydantic", reason="requires llm_server serving dependencies")
20+
21+
from executorch.examples.llm_server.python import chat_template # noqa: E402
22+
from executorch.examples.llm_server.python.errors import APIError # noqa: E402
23+
from executorch.examples.llm_server.python.protocol import ( # noqa: E402
24+
ChatCompletionRequest,
25+
)
26+
from executorch.examples.llm_server.python.session_runtime import ( # noqa: E402
27+
PromptInput,
28+
)
29+
from executorch.examples.models.muse_glimmer.serving import serve # noqa: E402
2130

2231
_HERE = pathlib.Path(serve.__file__).resolve().parent
2332
_LLM_SERVER_PYTHON = pathlib.Path(chat_template.__file__).resolve().parent

pytest.ini

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,12 @@ addopts =
3030
# Ignore failing llava tests (missing accelerate dependency)
3131
--ignore=examples/models/llava/test/test_llava.py
3232

33+
# Backend-specific Muse Glimmer pipelines. These run from mlx.yml / cuda.yml,
34+
# which name them explicitly -- --ignore only suppresses them while
35+
# collecting the directory, not when a path is passed on the command line.
36+
--ignore=examples/models/muse-glimmer/tests/test_mlx_pipeline.py
37+
--ignore=examples/models/muse-glimmer/tests/test_cuda_pipeline.py
38+
3339
# Ignore tests with missing custom_ops_generated_lib dependencies
3440
--ignore=exir/backend/test/demos/test_delegate_aten_mode.py
3541
--ignore=exir/backend/test/demos/test_xnnpack_qnnpack.py
@@ -98,6 +104,10 @@ testpaths =
98104
examples/models/llama3_2_vision/text_decoder/test
99105
examples/models/llava/test
100106

107+
# Backend-agnostic Muse Glimmer tests. The MLX and CUDA pipeline tests are
108+
# excluded above and run from their own backend workflows.
109+
examples/models/muse-glimmer/tests
110+
101111
# exir
102112
exir/
103113

0 commit comments

Comments
 (0)