-
Notifications
You must be signed in to change notification settings - Fork 1.2k
fix(tests): enable post-training tests #1786
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
Conversation
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 don't like this; will refactor
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.
copy-pasta, revisit
d23fd58 to
e6272eb
Compare
|
@ashwinb @raghotham for these tests to work in CI, I'd need to download the model (either via Meta or HF). AFAIU both require some kind of a token. My understanding is we'll need to add a github secret for HF token, then use it to |
|
@booxter If you went the HuggingFace token route, how would you plan to leverage a HuggingFace token in the workflow file you're editing? If you need If you want the maintainers to add I've copy-pasted the exact trigger condition below: pull_request:
branches: [ main ]To illustrate why these trigger conditions could cause an issue in this situation: Let's say you leave this file's trigger conditions alone, but you add your innocent-looking workflow step like this... - name: Run integration tests
env:
HF_TOKEN: "${{ secrets.HF_TOKEN }}" #<------ exposed secret here
INFERENCE_MODEL: "meta-llama/Llama-3.2-3B-Instruct"
run: uv run pytest -v tests/integration/${{ matrix.test-type }} --stack-config=experimental-post-training --text-model="meta-llama/Llama-3.2-3B-Instruct" --embedding-model=all-MiniLM-L6-v2
if: matrix.test-type == 'post_training'Next, let's say your PR is approved and it's merged into this repo's So if you do need Technically, a third option would be to create a new workflow file for these integration tests you're proposing and leave the existing integration-tests.yml workflow alone. Then we can continue to let integration-tests.yml auto-trigger on PR builds without security concerns, while your new workflow file can be one that maintainers manually trigger if/when desired. WDYT? |
|
I think ultimately, we should run our tests against models that are not gated on HuggingFace. If llama models are not, then we may instead run tests using some other small model like Granite. The problem is that as of right not, the inline torchtune provider doesn't support Granite. (I think even torchtune lacks some model specific changes to enable Granite tuning.) Until this is fixed, we may not actually be able to enable these tests it seems. For the record, I tried to hack something for Granite here but got stuck: main...booxter:llama-stack:post-training-granite mostly because I am not well versed in tuning. |
|
@raghotham @ashwinb is there any guidance from Meta on how to pull llama models in CI environment without tokens? Is it possible / desirable? |
e6272eb to
667a05f
Compare
|
failure in pre-commit? hm... |
Signed-off-by: Ihar Hrachyshka <ihar.hrachyshka@gmail.com>
667a05f to
35dcfff
Compare
|
Disc is overflown because we download inference models and training model and write checkpoints... Need to clean the runner up; or avoid downloading models for inference. |
Signed-off-by: Ihar Hrachyshka <ihar.hrachyshka@gmail.com>
41621de to
62ba825
Compare
62ba825 to
01fdae0
Compare
What does this PR do?
Fix and enable post-training integration tests.