@@ -2110,51 +2110,55 @@ def deploy(
21102110 max_wait_time = kwargs .pop ("max_wait_time" , DEFAULT_WAIT_TIME )
21112111 poll_interval = kwargs .pop ("poll_interval" , DEFAULT_POLL_INTERVAL )
21122112
2113+ # GenericModel itself has a ModelDeployment instance. When calling deploy(),
2114+ # if there are parameters passed in they will override this ModelDeployment instance,
2115+ # otherwise the properties of the ModelDeployment instance will be applied for deployment.
21132116 existing_infrastructure = self .model_deployment .infrastructure
21142117 existing_runtime = self .model_deployment .runtime
2115- properties = {
2116- " compartment_id" : existing_infrastructure .compartment_id
2118+ property_dict = ModelProperties (
2119+ compartment_id = existing_infrastructure .compartment_id
21172120 or self .properties .compartment_id
21182121 or _COMPARTMENT_OCID ,
2119- " project_id" : existing_infrastructure .project_id
2122+ project_id = existing_infrastructure .project_id
21202123 or self .properties .project_id
21212124 or PROJECT_OCID ,
2122- " deployment_instance_shape" : existing_infrastructure .shape_name
2125+ deployment_instance_shape = existing_infrastructure .shape_name
21232126 or self .properties .deployment_instance_shape
21242127 or MODEL_DEPLOYMENT_INSTANCE_SHAPE ,
2125- " deployment_instance_count" : existing_infrastructure .replica
2128+ deployment_instance_count = existing_infrastructure .replica
21262129 or self .properties .deployment_instance_count
21272130 or MODEL_DEPLOYMENT_INSTANCE_COUNT ,
2128- " deployment_bandwidth_mbps" : existing_infrastructure .bandwidth_mbps
2131+ deployment_bandwidth_mbps = existing_infrastructure .bandwidth_mbps
21292132 or self .properties .deployment_bandwidth_mbps
21302133 or MODEL_DEPLOYMENT_BANDWIDTH_MBPS ,
2131- " deployment_ocpus" : existing_infrastructure .shape_config_details .get (
2134+ deployment_ocpus = existing_infrastructure .shape_config_details .get (
21322135 "ocpus" , None
21332136 )
21342137 or self .properties .deployment_ocpus
21352138 or MODEL_DEPLOYMENT_INSTANCE_OCPUS ,
2136- " deployment_memory_in_gbs" : existing_infrastructure .shape_config_details .get (
2139+ deployment_memory_in_gbs = existing_infrastructure .shape_config_details .get (
21372140 "memory_in_gbs" , None
21382141 )
21392142 or self .properties .deployment_memory_in_gbs
21402143 or MODEL_DEPLOYMENT_INSTANCE_MEMORY_IN_GBS ,
2141- " deployment_log_group_id" : existing_infrastructure .log_group_id
2144+ deployment_log_group_id = existing_infrastructure .log_group_id
21422145 or self .properties .deployment_log_group_id ,
2143- " deployment_access_log_id" : existing_infrastructure .access_log .get (
2146+ deployment_access_log_id = existing_infrastructure .access_log .get (
21442147 "log_id" , None
21452148 )
21462149 or self .properties .deployment_access_log_id ,
2147- " deployment_predict_log_id" : existing_infrastructure .predict_log .get (
2150+ deployment_predict_log_id = existing_infrastructure .predict_log .get (
21482151 "log_id" , None
21492152 )
21502153 or self .properties .deployment_predict_log_id ,
2151- " deployment_image" : existing_runtime .image
2154+ deployment_image = existing_runtime .image
21522155 or self .properties .deployment_image ,
2153- " deployment_instance_subnet_id" : existing_infrastructure .subnet_id
2156+ deployment_instance_subnet_id = existing_infrastructure .subnet_id
21542157 or self .properties .deployment_instance_subnet_id
2155- }
2156- properties .update (override_properties )
2157- self .properties .with_dict (properties )
2158+ ).to_dict ()
2159+
2160+ property_dict .update (override_properties )
2161+ self .properties .with_dict (property_dict )
21582162
21592163 if not self .model_id :
21602164 raise ValueError (
0 commit comments