The ModelCardGenerator TFX pipeline component generates model cards.
For the detailed model card format, see the Model Card API.
For more general information about TFX, please see the TFX User Guide.
Configuring the ModelCardGenerator Component
The ModelCardGenerator takes dataset statistics, model evaluation, and a pushed model to automatically populate parts of a model card.
Model card fields
can also be explicitly populated with a JSON string (this can be generated using
the json
module, see Example
below). If a field is populated both by TFX and JSON, the JSON value will
overwrite the TFX value.
The ModelCardGenerator writes model card documents to the model_card/
directory of its artifact output. It uses a default HTML model card template,
which is used to generate model_card.html
. Custom
templates
can also be used; each template input must be accompanied by a file name output
in the template_io
arg.
Example
from model_card_toolkit import ModelCardGenerator
import json
...
model_card_fields = {
'model_details': {
'name': 'my_model',
'owners': 'Google',
'version': 'v0.1'
},
'considerations': {
'limitations': 'This is a demo model.'
}
}
mc_gen = ModelCardGenerator(
statistics=statistics_gen.outputs['statistics'],
evaluation=evaluator.outputs['evaluation'],
pushed_model=pusher.outputs['pushed_model'],
json=json.dumps(model_card_fields),
template_io=[
('html/default_template.html.jinja', 'model_card.html'),
('md/default_template.md.jinja', 'model_card.md')
]
)
More details are available in the ModelCardGenerator API reference.
See our end-to-end demo for a full working example.