|View source on GitHub|
ModelCardToolkit provides utilities to generate a ModelCard.
model_card_toolkit.ModelCardToolkit( output_dir: Optional[Text] = None, mlmd_store: Optional[mlmd.MetadataStore] = None, model_uri: Optional[Text] = None )
ModelCardToolkit is a tool for ML practitioners to create Model Cards, documentation for model information such as owners, use cases, training and evaluation data, performance, etc. A Model Card document can be displayed in output formats including HTML, Markdown, etc.
The ModelCardToolkit includes an API designed for a human-in-the-loop process to elaborate the ModelCard. If model training is integrated with ML Metadata (e.g., TFX pipelines), the ModelCardToolkit can further populate ModelCard fields by extract metadata and lineage from the model's MLMD instance.
The ModelCardToolkit organizes the ModelCard assets (e.g., structured data, plots, and UI templates) in a user-specified directory, and updates them incrementally via its API.
import model_card_toolkit # Initialize the Model Card Toolkit with a path to store generate assets model_card_output_path = ... mct = model_card_toolkit.ModelCardToolkit(model_card_output_path) # Initialize the ModelCard, which can be freely populated model_card = mct.scaffold_assets() model_card.model_details.name = 'My Model' # Write the model card data to a JSON file mct.update_model_card_json(model_card) # Return the model card document as an HTML page html = mct.export_format()
||The MCT assets path where the json file and templates are written to. If not given, a temp directory is used.|
A ml-metadata MetadataStore to retrieve metadata and lineage
information about the model stored at
||The path to the trained model to generate model cards.|
export_format( template_path: Text = None, output_file=_DEFAULT_MODEL_CARD_FILE_NAME ) -> Text
Generates a model card based on the MCT assets.
||The file path of the UI template. If not provided, the default UI template will be used.|
||The file name of the generated model card. If not provided, the default 'model_card.html' will be used. If the file already exists, then it will be overwritten.|
|The model card UI.|
save_mlmd() -> None
Saves the model card of the model artifact with
model_uri to MLMD.
Generates the model cards tookit assets.
Model cards assets include the model card json file and customizable model card UI templates.
An assets directory is created if one does not already exist.
If the MCT is initialized with a
mlmd_store, it further auto-populates
the model cards properties as well as generating related plots such as model
performance and data distributions.
|A ModelCard representing the given model.|
||if it failed to copy the UI template files.|
model_card_toolkit.ModelCard) -> None
Validates the model card and updates the JSON file in MCT assets.
If model_card.schema_version is not provided, it will assign the latest
schema version to the
model_card, and validate it.
||The updated model card that users want to write back.|
||when the given model_card is invalid w.r.t. the schema.|