changes for 4301

This commit is contained in:
gurusai-voleti
2025-12-11 07:35:58 +00:00
parent 694ac6880e
commit f60dd906f5
3 changed files with 22 additions and 14 deletions
@@ -175,10 +175,11 @@
"if BUCKET_URI is None or BUCKET_URI.strip() == \"\" or BUCKET_URI == \"gs://\":\n",
" BUCKET_URI = f\"gs://{PROJECT_ID}-tmp-{now}-{str(uuid.uuid4())[:4]}\"\n",
" BUCKET_NAME = \"/\".join(BUCKET_URI.split(\"/\")[:3])\n",
" ! gcloud storage buckets create --location={REGION} {BUCKET_URI}\n", "else:\n",
" ! gcloud storage buckets create --location={REGION} {BUCKET_URI}\n",
"else:\n",
" assert BUCKET_URI.startswith(\"gs://\"), \"BUCKET_URI must start with `gs://`.\"\n",
# Note: The format of the full listing output is different. gcloud storage uses a title case for keys and will not display a field if its value is "None".
" shell_output = ! gcloud storage ls --full --buckets {BUCKET_NAME} | grep \"Location constraint:\" | sed \"s/Location constraint://\"\n", " bucket_region = shell_output[0].strip().lower()\n",
" shell_output = ! gcloud storage ls --full --buckets {BUCKET_NAME} | grep \"Location Constraint:\" | sed \"s/Location Constraint://\"\n",
" bucket_region = shell_output[0].strip().lower()\n",
" if bucket_region != REGION:\n",
" raise ValueError(\n",
" \"Bucket region %s is different from notebook region %s\"\n",
@@ -202,7 +203,8 @@
"\n",
"\n",
"# Provision permissions to the SERVICE_ACCOUNT with the GCS bucket\n",
"! gcloud storage buckets add-iam-policy-binding $BUCKET_NAME --member=serviceAccount:{SERVICE_ACCOUNT} --role=roles/storage.admin\n", "\n",
"! gcloud storage buckets add-iam-policy-binding $BUCKET_NAME --member=serviceAccount:{SERVICE_ACCOUNT} --role=roles/storage.admin\n",
"\n",
"! gcloud config set project $PROJECT_ID\n",
"! gcloud projects add-iam-policy-binding --no-user-output-enabled {PROJECT_ID} --member=serviceAccount:{SERVICE_ACCOUNT} --role=\"roles/storage.admin\"\n",
"! gcloud projects add-iam-policy-binding --no-user-output-enabled {PROJECT_ID} --member=serviceAccount:{SERVICE_ACCOUNT} --role=\"roles/aiplatform.user\"\n",
@@ -239,7 +241,8 @@
" label_map_yaml_filename = os.path.basename(label_map_yaml_filepath)\n",
" local_metrics_path = os.path.join(temp_dir.name, label_map_yaml_filename)\n",
"\n",
" ! gcloud storage cp $label_map_yaml_filepath $local_metrics_path\n", " with open(local_metrics_path, \"r\") as input_file:\n",
" ! gcloud storage cp $label_map_yaml_filepath $local_metrics_path\n",
" with open(local_metrics_path, \"r\") as input_file:\n",
" label_map = yaml.safe_load(input_file.read())[\"label_map\"]\n",
" temp_dir.cleanup()\n",
" return label_map\n",
@@ -621,7 +624,8 @@
"\n",
"delete_bucket = False # @param {type:\"boolean\"}\n",
"if delete_bucket:\n",
" ! gcloud storage rm --recursive $BUCKET_NAME" ]
" ! gcloud storage rm --recursive $BUCKET_NAME"
]
},
{
"cell_type": "markdown",
@@ -157,9 +157,11 @@
"if BUCKET_URI is None or BUCKET_URI.strip() == \"\" or BUCKET_URI == \"gs://\":\n",
" BUCKET_URI = f\"gs://{PROJECT_ID}-tmp-{now}-{str(uuid.uuid4())[:4]}\"\n",
" BUCKET_NAME = \"/\".join(BUCKET_URI.split(\"/\")[:3])\n",
" ! gcloud storage buckets create --location={REGION} {BUCKET_URI}\n", "else:\n",
" ! gcloud storage buckets create --location={REGION} {BUCKET_URI}\n",
"else:\n",
" assert BUCKET_URI.startswith(\"gs://\"), \"BUCKET_URI must start with `gs://`.\"\n",
" shell_output = ! gcloud storage ls --full --buckets {BUCKET_NAME} | grep \"Location constraint:\" | sed \"s/Location constraint://\"\n", " bucket_region = shell_output[0].strip().lower()\n",
" shell_output = ! gcloud storage ls --full --buckets {BUCKET_NAME} | grep \"Location Constraint:\" | sed \"s/Location Constraint://\"\n",
" bucket_region = shell_output[0].strip().lower()\n",
" if bucket_region != REGION:\n",
" raise ValueError(\n",
" \"Bucket region %s is different from notebook region %s\"\n",
@@ -183,8 +185,8 @@
"\n",
"\n",
"# Provision permissions to the SERVICE_ACCOUNT with the GCS bucket\n",
"! # Note: Migrating scripts using gsutil iam ch is more complex than get or set. You need to replace the single iam ch command with a series of gcloud storage bucket add-iam-policy-binding and/or gcloud storage bucket remove-iam-policy-binding commands, or replicate the read-modify-write loop.\n",
"! gcloud storage buckets add-iam-policy-binding $BUCKET_NAME --member=serviceAccount:{SERVICE_ACCOUNT} --role=roles/storage.admin\n", "\n",
"! gcloud storage buckets add-iam-policy-binding $BUCKET_NAME --member=serviceAccount:{SERVICE_ACCOUNT} --role=roles/storage.admin\n",
"\n",
"! gcloud config set project $PROJECT_ID\n",
"! gcloud projects add-iam-policy-binding --no-user-output-enabled {PROJECT_ID} --member=serviceAccount:{SERVICE_ACCOUNT} --role=\"roles/storage.admin\"\n",
"! gcloud projects add-iam-policy-binding --no-user-output-enabled {PROJECT_ID} --member=serviceAccount:{SERVICE_ACCOUNT} --role=\"roles/aiplatform.user\"\n",
@@ -496,7 +498,8 @@
" try:\n",
" eval_result_filename = os.path.basename(evaluation_result_path)\n",
" subprocess.check_output(\n",
" [\"gcloud\", \"storage\", \"cp\", evaluation_result_path, eval_result_filename],\n", " stderr=subprocess.STDOUT,\n",
" [\"gcloud\", \"storage\", \"cp\", evaluation_result_path, eval_result_filename],\n",
" stderr=subprocess.STDOUT,\n",
" )\n",
" with open(eval_result_filename, \"r\") as input_file:\n",
" evalutation_result = json.loads(input_file.read())\n",
@@ -528,7 +531,8 @@
"\n",
"# @markdown After fine-tuning and evaluating the model, you can save it as Tensorflow Lite model, try it out in the [Object Detector](https://mediapipe-studio.webapps.google.com/demo/object_detector) demo in MediaPipe Studio or integrate it with your application by following the [Object detection task guide](https://developers.google.com/mediapipe/solutions/vision/object_detector). The exported model also includes metadata and the label map.\n",
"\n",
"! gcloud storage cp $EXPORTED_MODEL_OUTPUT_FILE \"object_detection_model.tflite\"" ]
"! gcloud storage cp $EXPORTED_MODEL_OUTPUT_FILE \"object_detection_model.tflite\""
]
},
{
"cell_type": "markdown",
@@ -567,7 +571,8 @@
"\n",
"delete_bucket = False # @param {type:\"boolean\"}\n",
"if delete_bucket:\n",
" ! gcloud storage rm --recursive $BUCKET_NAME" ]
" ! gcloud storage rm --recursive $BUCKET_NAME"
]
}
],
"metadata": {
@@ -720,7 +720,6 @@
"outputs": [],
"source": [
"! gcloud storage buckets add-iam-policy-binding $BUCKET_URI --member=serviceAccount:{SERVICE_ACCOUNT} --role=roles/storage.objectCreator\n", "\n",
# Note: Migrating scripts using gsutil iam ch is more complex than get or set. You need to replace the single iam ch command with a series of gcloud storage bucket add-iam-policy-binding and/or gcloud storage bucket remove-iam-policy-binding commands, or replicate the read-modify-write loop.
"! gcloud storage buckets add-iam-policy-binding $BUCKET_URI --member=serviceAccount:{SERVICE_ACCOUNT} --role=roles/storage.objectViewer" ]
},
{