Extend MLOps configuration variable expansion and model properties - #2583
Conversation
Allow additional `key: value` pairs (string or numeric) `model` properties and emit them in the generated MLOps file. Resolve variables in NPU, Vela and model settings.
5de8dd6 to
279d4e9
Compare
Test Results 2 files 14 suites 16m 44s ⏱️ Results for commit a626963. ♻️ This comment has been updated with latest results. |
There was a problem hiding this comment.
🟡 Changes recommended
Undefined $Var$ placeholders are not currently expanded to empty strings as required, which can lead to incorrect generated output (notably mlops.npu.macs being emitted as 0).
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
Extends ProjMgr’s MLOps YAML handling to support variable expansion across more fields and to allow arbitrary extra properties under mlops.model, emitting them into generated *.cbuild-mlops.yml outputs.
Changes:
- Added parsing/propagation of custom
mlops.modelproperties into generatedcbuild-mlopsfiles. - Expanded access-sequence variables in NPU settings, Vela selectors/options, model name, and custom model properties.
- Updated schema and test fixtures/reference outputs to cover the extended behavior.
File summaries
| File | Description |
|---|---|
| tools/projmgr/test/data/MLOps/ref/extended.cbuild-mlops.yml | Updates reference output to include resolved model name and an additional model property. |
| tools/projmgr/test/data/MLOps/extended.csolution.yml | Updates fixture to use $...$ variables in MLOps settings and adds corresponding variable definitions. |
| tools/projmgr/src/ProjMgrYamlParser.cpp | Parses NPU MACs as string (for variables) and collects additional mlops.model key/value properties. |
| tools/projmgr/src/ProjMgrMlops.cpp | Expands variables for more MLOps fields and carries custom model properties through to output generation. |
| tools/projmgr/src/ProjMgrCbuildMlops.cpp | Emits custom mlops.model additional properties into the generated YAML. |
| tools/projmgr/schemas/common.schema.json | Updates schema to allow numeric values where variables/custom properties may appear. |
| tools/projmgr/include/ProjMgrParser.h | Adds storage for additional model properties in parsed MLOps data model. |
| tools/projmgr/include/ProjMgrMlops.h | Adds storage for additional model properties in collected/emitted MLOps data model. |
Review details
- Files reviewed: 8/8 changed files
- Comments generated: 1
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #2583 +/- ##
==========================================
+ Coverage 72.16% 72.17% +0.01%
==========================================
Files 185 185
Lines 30253 30279 +26
Branches 17845 17865 +20
==========================================
+ Hits 21831 21855 +24
- Misses 6110 6111 +1
- Partials 2312 2313 +1
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
Fixes
mlops.model:; support $variables$ formlops:#2576Changes
mlops.modelproperties in generatedcbuild-mlopsfiles.Checklist