MLOS
MLOS copied to clipboard
external config improvements
trafficstars
- [x] unify json schema to a single top level schema
- Idea is that it just selects subschemas based on class prefix
e.g.,
"class": "mlos_bench.service.*" maps to --> "service-schema.json","mlos_bench.environment.*" maps to --> "environment-schema.jsonc", etc. - #596
- Idea is that it just selects subschemas based on class prefix
e.g.,
- [ ] extend to allowing yml as input when reading configs (wishlist - not required)
- still maps to the same schema, just a different input format
- [x] register top level json schema with url pointing to this repo and file extensions like
.mlos.jsonc,.mlos.json,.mlos.yml,.mlos.yamlat https://www.schemastore.org/json/- this allows the schemas to work without additional configurations in the IDE
- useful for improving examples like https://github.com/microsoft/mlos-autotuning-template and https://github.com/Microsoft-CISL/sqlite-autotuning
- https://github.com/SchemaStore/schemastore/pull/3402
- [ ] rename internal config files to match the naming scheme published on schemastore.org (e.g.,
*.jsonc -> *.mlos.jsonc) - [x] add schema checking on the config dict objects as well (e.g., at object instantiation time, not just file read time)
- there's a number of our unit tests that only use python defined configs and were missing errors
- #543 did that
quick wip branch: https://github.com/bpkroth/MLOS/tree/single-schema-definition-support