This repository has been archived by the owner on Sep 27, 2024. It is now read-only.
Releases: tensorflow/model-card-toolkit
Releases · tensorflow/model-card-toolkit
Release 2.1.0 rc0
- Remove Python 3.7 support
- Allow tfma > 0.42 and < 0.45 (#289)
2.0.0
What's Changed
- Remove unused comments related to Python 2 compatibility. by @copybara-service in #210
- update jinja2 dependency by @copybara-service in #211
- Update broken link in Standalone_Model_Card_Toolkit_Demo.ipynb by @sanatmpa1 in #221
- added gitignore to repo by @hanneshapke in #240
- Fix failing tests by @codesue in #245
- Add support for multiple output models by @casassg in #223
- Bump version to 2.0.0 by @codesue in #249
- Deprecate ModelCardGenerator component by @codesue in #248
- Prevent empty fields from rendering as "None" by @codesue in #251
- Make tests pytest and unittest compatible by @codesue in #254
- Consolidate testdata and delete unused output files by @codesue in #255
- Add testing workflow and update contributing guide by @codesue in #259
- rename the branch 'master' to 'main' by @sklin93 in #260
- fixed the version of tensorflow-datasets for the testing by @vulkomilev in #262
- Basic linter config by @hanneshapke in #261
- release 2.0 rc0 by @hanneshapke in #265
New Contributors
- @calvinleungyk made their first contribution in #225
- @sanatmpa1 made their first contribution in #221
- @codesue made their first contribution in #238
- @alanschiemenz made their first contribution in #219
- @hanneshapke made their first contribution in #240
- @casassg made their first contribution in #223
- @sklin93 made their first contribution in #260
- @vulkomilev made their first contribution in #262
Full Changelog: 1751a8e...v2.0.0
2.0.0 rc0
What's Changed
- Remove unused comments related to Python 2 compatibility. by @copybara-service in #210
- update jinja2 dependency by @copybara-service in #211
- Update broken link in Standalone_Model_Card_Toolkit_Demo.ipynb by @sanatmpa1 in #221
- added gitignore to repo by @hanneshapke in #240
- Fix failing tests by @codesue in #245
- Add support for multiple output models by @casassg in #223
- Bump version to 2.0.0 by @codesue in #249
- Deprecate ModelCardGenerator component by @codesue in #248
- Prevent empty fields from rendering as "None" by @codesue in #251
- Make tests pytest and unittest compatible by @codesue in #254
- Consolidate testdata and delete unused output files by @codesue in #255
- Add testing workflow and update contributing guide by @codesue in #259
- rename the branch 'master' to 'main' by @sklin93 in #260
- fixed the version of tensorflow-datasets for the testing by @vulkomilev in #262
- Basic linter config by @hanneshapke in #261
- release 2.0 rc0 by @hanneshapke in #265
New Contributors
- @calvinleungyk made their first contribution in #225
- @sanatmpa1 made their first contribution in #221
- @codesue made their first contribution in #238
- @alanschiemenz made their first contribution in #219
- @hanneshapke made their first contribution in #240
- @casassg made their first contribution in #223
- @sklin93 made their first contribution in #260
- @vulkomilev made their first contribution in #262
Full Changelog: 1751a8e...v2.0.0-rc0
v1.3.0
Major Features and Improvements
ModelCardArtifact
, a TFX/MLMD artifact which references the assets generated by MCT. This can be created withmodel_card_toolkit.tfx.create_and_save_artifact()
.tfx.executor.Executor
, which can be used as the core MCT logic for a TFX custom component.tfx.component.ModelCardGenerator
, a component that can be used to generate Model Cards directly in a TFX pipeline.
Bug fixes and other changes
ModelCard.merge_from_json()
, allowingModelCard
s to be populated with JSON without overwriting all pre-existing fields.- Minor styling change to table CSS in default HTML template
- Minor update to CSS linting in default HTML template
Breaking changes and Deprecations
source
classes now usestfx.types.Artifact
instead ofstandard_artifacts
.
v1.2.0
Release 1.2.0
Major Features and Improvements
ModelCard
updates- Fields
- Add
model_details.path
.- This is populated with the new
ModelSource
object, which stores a reference to a TFX PushedModel.
- This is populated with the new
- Add
model_parameters.input_format_map
andmodel_parameters.output_format_map
.- These are key-value pairs, and are used to render inputs and outputs in tabular form. They can be used as an alternative to the singular
model_parameters.input_format
andmodel_parameters.output_format
fields.
- These are key-value pairs, and are used to render inputs and outputs in tabular form. They can be used as an alternative to the singular
- Add
- Functions
- Add
from_json()
.
- Add
- Fields
model_card_toolkit.source
- This is a new submodule, and is responsible for
ModelCardToolkit
's' inputs (see TFX standard artifacts). It provides the following classes:MlmdSource
: Args to extract data from TFX artifacts in MLMD. Contains themlmd_store
andmodel_uri
args. Previously, these were args toModelCardToolkit
.Source
: Args to extract data from TFX artifacts outside MLMD (by passing in a path to the artifact, or by passing in the artifact directly). Containstfma
,tfdv
, andmodel
args.
- This is a new submodule, and is responsible for
Bug fixes and other changes
ModelCardToolkit
model_card.quantitative_analysis.performance_metrics
is now populated when atfma.EvalResult
is found in MLMD store.export_format()
andupdate_model_card()
now acceptmodel_card_pb2.ModelCard
's, in addition tomodel_card.ModelCard
's.
tfx_util
- Add
annotate_eval_result_metrics()
, which appendsPerformanceMetrics
to aModelCard
based on atfma.EvalResult
. - Add
read_stats_protos()
, which returns dataset stats protos for all splits in the provided directory. - Add
filter_metrics()
to facilitate filtering out unwanted TFMA metrics in model cards. - Add
filter_features()
andtfx._util.read_stats_protos_and_filter_features()
to facilitate filtering out unwanted TFDV features in model cards.
- Add
PerformanceMetrics
- Add
confidence_interval
field.
- Add
Breaking changes and Deprecations
- Replace
ModelCardToolkit(output_dir, mlmd_store, model_uri)
withModelCardToolkit(output_dir, mlmd_source, source)
. See "Major Features and Improvements" above for details. - Complete deprecation of
ModelCardToolkit.update_model_card_json()
. Users should migrate toModelCardToolkit.update_model_card()
, which uses a proto representation. Alternatively, users can useModelCard.to_json()
andModelCard.from_json()
to interact with JSON representations.
v1.1.0
v1.0.0
Release 1.0.0
Major Features and Improvements
- Introduce
model_card.proto
. See https://developers.google.com/protocol-buffers for more info. - All classes in
model_card_toolkit.model_card
submodule now haveto_proto()
,merge_from_proto()
,copy_from_proto()
, andclear()
functions. ModelCardToolkit.export_format()
now acceptsmodel_card
arg.json_util.update()
, which updates a v0.0.1 JSON object to a v0.0.2 JSON object.
Bug fixes and other changes
- Update default template layout so charts can wrap to multiple rows
- Installing from source now requires Bazel>=2.0.0.
- Update model card templates to use new schema.
model_card_toolkit.utils.validation.validate_json_schema()
can now validate both schema v0.0.1 and v0.0.2.- Add
_jinja_loader
attribute tomodel_card_toolkit
to allow custom Jinja loaders.
Breaking changes
- JSON schema v0.0.2 replaces JSON schema v0.0.1.
ModelCardToolkit.update_model_card_json()
deprecated and replaced withModelCardToolkit.update_model_card()
. Writes todata/model_card.proto
instead ofdata/model_card.json
.graphics.annotate_dataset_feature_statistics_plots
accepts a list of stats files instead of two individual train and eval stats params.
v0.1.3
Release 0.1.3
Major Features and Improvements
Bug fixes and other changes
- Update model_card.py docstrings. Now hosted on Responsible AI.
Breaking changes
Deprecations
v0.1.2
Release 0.1.2
Major Features and Improvements
- In default_template.md.jinja and default_template.html.jinja, generate metrics table from
quantitative_analysis.performance_metrics
.
Bug fixes and other changes
- Reference URLs in default HTML and Markdown template are now hyperlinks
- Fix bug where Considerations div is displayed in HTML model cards, even if Considerations div is empty.
- Update required fields in schema.
- Removed considerations as required field.
- Add lower_bound and upper_bound as required fields to confidence_interval.
- Fixed the part dependencies error for new pip dependency resolver.
- Update how UI templates are copied to be compatible with different platforms (colab, wetlab).
- Add model_card_toolkit.validation.validate_json_schema(), a function to validate a Python dictionary against the Model Card JSON schema.
- Fix the bug that some slices may have extra metrics that other slices does not have. e.g. ERROR metric.