[CI] Skip Phi-MoE test due to old API util#31632
Conversation
Signed-off-by: Andreas Karatzas <akaratza@amd.com>
There was a problem hiding this comment.
Code Review
This pull request correctly addresses a CI failure by skipping a failing test for Phi-MoE models. The change to add -rs to the pytest command is a good improvement for visibility into skipped tests. However, the implementation for skipping the test is too broad. It disables all tests in the test_phimoe.py file, while only the test_models function seems to be affected by the upstream issue. To maintain test coverage, the skip should be applied more narrowly to only the failing test.
| # There is a known issue that triggers `AttributeError: 'DynamicCache' | ||
| # object has no attribute 'seen_tokens'` when running: | ||
| # `tests/models/language/generation/test_phimoe.py::test_models | ||
| # [5-64-bfloat16-microsoft/Phi-3.5-MoE-instruct]` | ||
| # This issue is being investigated and tracked in: | ||
| # https://huggingface.co/microsoft/Phi-3.5-MoE-instruct/discussions/58 | ||
| # It is platform-agnostic. Therefore, we skip this test on all platforms for now. | ||
| pytest.skip( | ||
| "Skipping due to known issue: " | ||
| "'DynamicCache' object has no attribute 'seen_tokens'. See: " | ||
| "https://huggingface.co/microsoft/Phi-3.5-MoE-instruct/discussions/58 " | ||
| "for details.", | ||
| allow_module_level=True, | ||
| ) |
There was a problem hiding this comment.
This module-level pytest.skip disables all tests in this file, including test_phimoe_routing_function. Based on the issue description and the comment, only the test_models function is affected by the 'DynamicCache' object has no attribute 'seen_tokens' error. The test_phimoe_routing_function appears to be a simple unit test that does not involve model generation and is likely still passing.
To avoid unnecessarily reducing test coverage, it would be better to apply the skip only to the failing test. This can be done by removing this module-level skip and adding a @pytest.mark.skip(reason=...) decorator directly to the test_models function.
Signed-off-by: Andreas Karatzas <akaratza@amd.com>
.buildkite/test-amd.yaml
Outdated
| - uv pip install --system --no-build-isolation 'git+https://github.com/state-spaces/mamba@v2.2.5' | ||
| - uv pip install --system --no-build-isolation 'git+https://github.com/Dao-AILab/causal-conv1d@v1.5.2' | ||
| - pytest -v -s models/language/generation -m '(not core_model) and (not hybrid_model)' | ||
| - pytest -v -rs models/language/generation -m '(not core_model) and (not hybrid_model)' |
There was a problem hiding this comment.
Revert this? I think you only used this for debugging
Signed-off-by: Andreas Karatzas <akaratza@amd.com>
Signed-off-by: Andreas Karatzas <akaratza@amd.com>
|
I also modified the |
Signed-off-by: Andreas Karatzas <akaratza@amd.com>
Signed-off-by: Andreas Karatzas <akaratza@amd.com>
|
@charlotte12l @hmellor @heheda12345 Could you please review my last commit? After #28454, This causes
|
|
@AndreasKaratzas Thanks for the fix! Could you create a convertor for NomicBert models, , and put themax_trained_positions logics into convertor? We hope to use the convertor to consolidate all configuration update/read logics.
Besides, I saw |
@charlotte12l Let me see what I can do. I might need help with that tbh 😅 But I'll ping you in that case. |
Signed-off-by: Andreas Karatzas <akaratza@amd.com>
|
@charlotte12l I think the last commit resolves what you are suggesting. I tested: |
|
Could you please let me fix tests/models/language/pooling_mteb_test/test_nomic.py? PTAL #31662 |
I checked your PR and I did not see my changes, so for now I think I'm gonna keep them here, but @charlotte12l can probably comment on that matter too. |
The odd logic for NomicBertModelConfig was added by me in #18755. Let me and @charlotte12l discuss this logic further so that your other fixes can be merged quickly. |
Signed-off-by: Andreas Karatzas <akaratza@amd.com>
|
@noooop I just removed the logic for Nordic. But please if you can have the PR that you are working on merged quickly because it is important for the AMD CI. We would like to have this test green. Let me know if I can help in any way :) |
|
@noooop I'm okay with keeping those logics in vllm/model_executor/models/config.py for now, but in such case, we still need to update I agree to avoid splitting across different locations. I propose to consolidate those into convertor in the future if you are okay with it. |
|
|
Sorry, I click close by mistake. |
|
I'm very sorry. Please submit an empty commit or anything to restart the Read the Docs build. |
|
Give me some time for that cause I just switched off my PC 😅
|
|
Wait a second, it looks like the CI has already recovered automatically. You don't need to do anything. |
Signed-off-by: Andreas Karatzas <akaratza@amd.com>
Head branch was pushed to by a user without write access
Signed-off-by: Andreas Karatzas <akaratza@amd.com>
Signed-off-by: Andreas Karatzas <akaratza@amd.com>
Signed-off-by: Andreas Karatzas <akaratza@amd.com>
Signed-off-by: Andreas Karatzas <akaratza@amd.com> Signed-off-by: dsuhinin <suhinin.dmitriy@gmail.com>
Signed-off-by: Andreas Karatzas <akaratza@amd.com>
This PR addresses test failures in the Language Models Test (Extended Generation) test group on ROCm by:
test_phimoe.pydue to a known upstream issueChanges
1. Skip PhiMoE Tests
Skipped all tests in
tests/models/language/generation/test_phimoe.pydue to a known issue whereAttributeError: 'DynamicCache' object has no attribute 'seen_tokens'is raised.test_phimoe.py::test_models[5-64-bfloat16-microsoft/Phi-3.5-MoE-instruct]2. Mamba Installation on ROCm 7.0+ (Awaiting Upstream Fix)
Mamba-ssm currently fails to build and run correctly on ROCm 7.0+. We are awaiting the merge of an upstream fix:
Then we are also going to update the version of the package.
3. Fix NomicBert max_model_len Validation
After #28454, cached
derived_max_model_len_and_keywasn't updated whenNomicBertModelConfigrestrictedmax_position_embeddings, causing validation to use stale values. Affects both ROCm and CUDA.pytest -s -v models/language/pooling/test_nomic_max_model_len.py::test_set_max_model_len_illegal