Source code for ads.model.runtime.model_provenance_details
#!/usr/bin/env python# -*- coding: utf-8 -*--# Copyright (c) 2022 Oracle and/or its affiliates.# Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl/fromdataclassesimportdataclass,fieldfromtypingimportDictfromads.common.serializerimportDataClassSerializablefromads.model.runtime.env_infoimportTrainingEnvInfofromads.model.runtime.utilsimportMODEL_PROVENANCE_SCHEMA_PATH,SchemaValidator
[docs]@dataclass(repr=False)classTrainingCode(DataClassSerializable):"""TrainingCode class."""artifact_directory:str=""@classmethoddef_validate_dict(cls,obj_dict:Dict)->bool:assertobj_dictand("ARTIFACT_DIRECTORY"inobj_dict),"`training_code` must have `ARTIFACT_DIRECTORY` field."returnTrue
[docs]@dataclass(repr=False)classModelProvenanceDetails(DataClassSerializable):"""ModelProvenanceDetails class."""project_ocid:str=""tenancy_ocid:str=""training_code:TrainingCode=field(default_factory=TrainingCode)training_compartment_ocid:str=""training_conda_env:TrainingEnvInfo=field(default_factory=TrainingEnvInfo)training_region:str=""training_resource_ocid:str=""user_ocid:str=""vm_image_internal_id:str=""@classmethoddef_validate_dict(cls,obj_dict:Dict)->bool:"""validate the yaml file. Parameters ---------- obj_dict: (Dict) yaml file content to validate. Returns ------- bool Validation result. """validator=SchemaValidator(schema_file_path=MODEL_PROVENANCE_SCHEMA_PATH)returnvalidator.validate(obj_dict)