-
-
Notifications
You must be signed in to change notification settings - Fork 11.7k
[CI/Build] Fix some V1 tests not being run #25569
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[CI/Build] Fix some V1 tests not being run #25569
Conversation
Signed-off-by: DarkLight1337 <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request addresses an issue where some V1 tests were not being executed in the CI pipeline. The changes in .buildkite/test-pipeline.yaml correctly add test_kv_sharing.py and test_request.py to the test runs. The modifications in tests/v1/test_kv_sharing.py are intended to adapt the tests to a recent API change. However, I've identified a critical flaw in the updated test logic. The tests now include tautological assertions that don't validate the production code's behavior, which could provide a false sense of correctness. My review comments detail these issues and suggest how to resolve them.
Signed-off-by: DarkLight1337 <[email protected]>
sarckk
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks for the catch!
note: since #22628 moved the actual KV sharing up logic to the gpu model runner, unit tests in
pytest tests/v1/worker/test_gpu_model_runner.py -k "test_init_kv_cache"
will cover the KV sharing logic including assertions that were removed in this PR.
NickLucche
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, left a comment about grouping these tests though
| - pytest -v -s v1/spec_decode | ||
| - pytest -v -s v1/kv_connector/unit | ||
| - pytest -v -s v1/metrics | ||
| - pytest -v -s v1/test_kv_sharing.py | ||
| - pytest -v -s v1/test_metrics_reader.py | ||
| - pytest -v -s v1/test_oracle.py | ||
| - pytest -v -s v1/test_request.py |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wonder whether we should factor these tests into their own folder so we can just do pytest -v v1/core ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's address that in another PR
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it possible to change this V1 Test others from running a list of files to running all files that are not covered by other tests?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Technically I think it's possible - I can think of two ways to go about it:
- Scan the
test-pipeline.yamlfile and parse the commands corresponding to the rest of the V1 test CIs to figure out which tests are not being covered. - Add a pytest mark for the tests that are covered by the rest of the V1 test CIs , then we can exclude tests with those marks in the "other" CI
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But either way, it would be quite complicated
Signed-off-by: DarkLight1337 <[email protected]>
Signed-off-by: DarkLight1337 <[email protected]> Signed-off-by: yewentao256 <[email protected]>
Signed-off-by: DarkLight1337 <[email protected]> Signed-off-by: xuebwang-amd <[email protected]>
Signed-off-by: DarkLight1337 <[email protected]>
Signed-off-by: DarkLight1337 <[email protected]>
Signed-off-by: DarkLight1337 <[email protected]>
Signed-off-by: DarkLight1337 <[email protected]> Signed-off-by: xuebwang-amd <[email protected]>
Signed-off-by: DarkLight1337 <[email protected]>
Purpose
KV sharing tests have been failing since #22628 but have not been caught because the test isn't actually being run. This PR fixes the tests and also adds them to the CI.
I found that
test_request.pyis also not being run so I have added it to the CI as well.Test Plan
Test Result
Essential Elements of an Effective PR Description Checklist
supported_models.mdandexamplesfor a new model.