@@ -44,16 +44,23 @@ def get_tuning_supported_models() -> list[str]:
4444 return models
4545
4646
47- def delete_existing_model (model_id : str ) -> None :
47+ def check_model_existence (model_id : str , delete_if_exists : bool = False ) -> None : # noqa: FBT001, FBT002
4848 """
49- Delete a tuned model if it exists.
49+ Check if a tuned model exists.
5050
5151 Args:
5252 model_id (str): ID of the model to delete
53+ delete_if_exists (bool): Delete model (WARNING, leave False if unsure)
5354 """
5455 full_model_id = f"tunedModels/{ model_id } "
5556 for tuned_model in genai .list_tuned_models ():
5657 if tuned_model .name == full_model_id :
58+ if not delete_if_exists :
59+ msg = (
60+ f"Model { full_model_id } already exists,"
61+ "try using it with `uv run start-compare`"
62+ )
63+ raise ValueError (msg )
5764 logger .info ("deleting existing model" , tuned_model_id = model_id )
5865 genai .delete_tuned_model (full_model_id )
5966 break
@@ -130,8 +137,8 @@ def start() -> None:
130137 Exception: If model training fails
131138 """
132139 new_model_id = settings .tuned_model_name
133- # Delete existing model if present
134- delete_existing_model (new_model_id )
140+ # Check if model already exists
141+ check_model_existence (new_model_id )
135142
136143 # Load and validate training data
137144 training_dataset = load_training_data (settings .tuning_dataset_path )
0 commit comments