feat(parsers): add pydantic schemas for Megatron training configs - #340
Open
speriaswamy-amd wants to merge 1 commit into
Open
Conversation
Third pilot suite. Defaults mirror the tdict.setdefault/pdict.setdefault blocks in megatron_training_lib.py -- several disagree with every shipped sample. model_params is split into MegatronSingleNodeModelParams and MegatronMultiNodeModelParams rather than one combined model: a single-node test only ever reads its own topology's variants, so a shared model would document (and later, `cvs man`, sample-reference) the other topology's fields too. AIMVT-276.
speriaswamy-amd
force-pushed
the
speriaswamy/cvsman-07-megatron-schemas
branch
from
August 14, 2026 20:33
d2df392 to
4602008
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part 7 of 14 in a stack for AIMVT-276. Base: #339.
Why
Third pilot suite. Defaults mirror the
tdict.setdefault/pdict.setdefaultblocks inmegatron_training_lib.py, which is where the runtime defaults actually live — several disagree with every shipped sample.model_paramsis split intoMegatronSingleNodeModelParams(single_nodekey) andMegatronMultiNodeModelParams(multi_nodekey) rather than one combined model covering both keys: a single-node test only ever reads its own topology's variants, and a shared model would makecvs man megatron_llama3_1_8b_singledocument (and sample-reference)multi_nodefields it never touches.What changed
cvs/parsers/config_schemas/megatron.py(new) —MegatronContainerConfig,MegatronResultThresholds,MegatronModelVariant,MegatronConfigFile,MegatronSingleNodeModelParams,MegatronMultiNodeModelParams.cvs/parsers/config_schemas/__init__.py— re-exports grow to include these.