diff --git a/model-engine/model_engine_server/domain/use_cases/llm_model_endpoint_use_cases.py b/model-engine/model_engine_server/domain/use_cases/llm_model_endpoint_use_cases.py index e201baee..bf15c10e 100644 --- a/model-engine/model_engine_server/domain/use_cases/llm_model_endpoint_use_cases.py +++ b/model-engine/model_engine_server/domain/use_cases/llm_model_endpoint_use_cases.py @@ -730,9 +730,11 @@ def load_model_weights_sub_commands_gcs( " && /opt/google-cloud-sdk/bin/gcloud config set disable_usage_reporting true 2>/dev/null" ) - file_selection_str = '--include="*.model" --include="*.model.v*" --include="*.json" --include="*.safetensors" --include="*.txt" --exclude="optimizer*"' - if trust_remote_code: - file_selection_str += ' --include="*.py"' + # gcloud storage rsync only supports --exclude (Python regex), not --include. + excludes = ['--exclude="optimizer.*"'] + if not trust_remote_code: + excludes.append('--exclude=".*\\.py$"') + file_selection_str = " ".join(excludes) subcommands.append( f"/opt/google-cloud-sdk/bin/gcloud storage rsync -r" diff --git a/model-engine/tests/unit/domain/test_llm_use_cases.py b/model-engine/tests/unit/domain/test_llm_use_cases.py index 26dc4ceb..e254aac1 100644 --- a/model-engine/tests/unit/domain/test_llm_use_cases.py +++ b/model-engine/tests/unit/domain/test_llm_use_cases.py @@ -666,8 +666,7 @@ def test_load_model_weights_sub_commands( " | tar -xz -C /opt" " && /opt/google-cloud-sdk/bin/gcloud config set disable_usage_reporting true 2>/dev/null", "/opt/google-cloud-sdk/bin/gcloud storage rsync -r" - ' --include="*.model" --include="*.model.v*" --include="*.json"' - ' --include="*.safetensors" --include="*.txt" --exclude="optimizer*"' + ' --exclude="optimizer.*" --exclude=".*\\.py$"' " gs://fake-bucket/fake-checkpoint test_folder", ] assert expected_result == subcommands @@ -686,9 +685,8 @@ def test_load_model_weights_sub_commands( " | tar -xz -C /opt" " && /opt/google-cloud-sdk/bin/gcloud config set disable_usage_reporting true 2>/dev/null", "/opt/google-cloud-sdk/bin/gcloud storage rsync -r" - ' --include="*.model" --include="*.model.v*" --include="*.json"' - ' --include="*.safetensors" --include="*.txt" --exclude="optimizer*"' - ' --include="*.py" gs://fake-bucket/fake-checkpoint test_folder', + ' --exclude="optimizer.*"' + " gs://fake-bucket/fake-checkpoint test_folder", ] assert expected_result == subcommands