Skip to content

Commit f265253

Browse files
committed
reword MLM/ML-Model notable differences
1 parent 7e35373 commit f265253

File tree

2 files changed

+40
-13
lines changed

2 files changed

+40
-13
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ connectors, please refer to the [STAC Model](./README_STAC_MODEL.md) document.
117117
version [`1.3.0`](https://github.com/stac-extensions/mlm/blob/main/CHANGELOG.md#v130) of the extension.
118118
- [SigSpatial 2024 GeoSearch Workshop presentation](/docs/static/sigspatial_2024_mlm.pdf)
119119
- **Tools**:
120-
- [MLM Form Filler](https://mlm-form.vercel.app/) a two page app to fill out and validate MLM STAC Item metadata. <br>
120+
- [MLM Form Filler](https://mlm-form.vercel.app/) a two-page app to fill out and validate MLM STAC Item metadata. <br>
121121
Check out the [wherobots/mlm-form](https://github.com/wherobots/mlm-form) repository if you have questions, issues,
122122
or want to contribute.
123123

docs/legacy/ml-model.md

Lines changed: 39 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,30 @@
1010

1111
## Notable Differences
1212

13-
- The [MLM][mlm-spec] Extension covers more details at both the [Item](#item-properties) and [Asset](#asset-objects)
13+
- The [MLM][mlm-spec] extension covers more details at both the [Item](#item-properties) and [Asset](#asset-objects)
1414
levels, making it easier to describe and use model metadata.
15-
- The [MLM][mlm-spec] extension covers Runtime requirements within the [Container Asset](./../../README.md#container-asset),
16-
while the [ML-Model][ml-model] extension records [similar information][ml-model-runtimes] in
17-
the `ml-model:inference-runtime` or `ml-model:training-runtime` [Asset Roles](#roles).
18-
- The [MLM][mlm-spec] extension has a corresponding Python library, [`stac-model`](https://pypi.org/project/stac-model/)
19-
which can be used to create and validate MLM metadata.
15+
16+
- The [MLM][mlm-spec] extension covers runtime requirements using distinct [Asset Roles](#roles)
17+
([Model][mlm-asset-model], [Container][mlm-asset-container] and [Source Code][mlm-asset-code]) which allows
18+
for more flexibility in describing how and which operations are performed by a given model.
19+
This is in contrast to the [ML-Model][ml-model] extension that records [similar information][ml-model-runtimes]
20+
in `ml-model:inference-runtime` or `ml-model:training-runtime` __*all at once*__, which leads to runtime ambiguities
21+
and limited reusability.
22+
23+
- The [MLM][mlm-spec] extension provides additional fields to better describe the model properties, such as
24+
the [Model Inputs][mlm-inputs] to describe the input features, bands, data transforms, or any
25+
other relevant data sources and preparation steps required by the model, the [Model Outputs][mlm-outputs] to describe
26+
the output predictions, regression values, classes or other relevant information about what the model produces, and
27+
the [Model Hyperparameters][mlm-hyperparam] to better describe training configuration
28+
that lead to the model definition. All of these fields are __*undefined*__ in the [ML-Model][ml-model] extension.
29+
30+
- The [MLM][mlm-spec] extension has a corresponding Python library [`stac-model`][mlm-stac-model],
31+
which can be used to create and validate MLM metadata using [pydantic][pydantic].
2032
An example of the library in action is [provided in examples](./../../stac_model/examples.py).
21-
The [ML-Model][ml-model] extension does not support this and requires the JSON to be written manually
22-
by interpreting the JSON Schema or existing examples.
23-
- The [MLM][mlm-spec] extension is easier to maintain and enhance in a fast moving ML ecosystem thanks to it's use
24-
of [pydantic][pydantic] models, while still being compatible with [pystac][pystac] for extension and STAc core
25-
validation.
33+
The extension also provides [pystac MLM][pystac-mlm] for easier integration with the STAC ecosystem.
34+
The [MLM Form Filler][mlm-form] is also available to help users create valid MLM metadata in a no-code fashion.
35+
In contrast, [ML-Model][ml-model] extension does not provide any support for Python integration and requires the JSON
36+
to be written manually.
2637

2738
## Migration Tables
2839

@@ -84,6 +95,22 @@ Further roles are also proposed in [MLM Asset Roles](./../../README.md#mlm-asset
8495

8596
[mlm-acc-type]: ./../../README.md#accelerator-type-enum
8697

98+
[mlm-asset-model]: ./../../README.md#model-asset
99+
100+
[mlm-asset-container]: ./../../README.md#container-asset
101+
102+
[mlm-asset-code]: ./../../README.md#source-code-asset
103+
104+
[mlm-inputs]: ./../../README.md#model-input-object
105+
106+
[mlm-outputs]: ./../../README.md#model-output-object
107+
108+
[mlm-hyperparam]: ./../../README.md#model-hyperparameters-object
109+
110+
[mlm-stac-model]: https://pypi.org/project/stac-model/
111+
112+
[mlm-form]: https://mlm-form.vercel.app/
113+
87114
[mlm-spec]: ./../../README.md
88115

89116
[mlm-bp]: ./../../best-practices.md
@@ -96,6 +123,6 @@ Further roles are also proposed in [MLM Asset Roles](./../../README.md#mlm-asset
96123

97124
[pydantic]: https://docs.pydantic.dev/latest/
98125

99-
[pystac]: https://pystac.readthedocs.io/en/latest/
126+
[pystac-mlm]: https://github.com/stac-utils/pystac/blob/main/pystac/extensions/mlm.py
100127

101128
[docker-compose-file]: https://github.com/compose-spec/compose-spec/blob/master/spec.md#compose-file

0 commit comments

Comments
 (0)