১. সংক্ষিপ্ত বিবরণ
এই ল্যাবে, আপনি Vertex AI Training-এর উপর একটি হাইপারপ্যারামিটার টিউনিং জব চালানোর জন্য Vertex AI ব্যবহার করবেন।
এই ল্যাবটি ‘প্রোটোটাইপ টু প্রোডাকশন ’ ভিডিও সিরিজের একটি অংশ। এটি করার আগে আগের ল্যাবটি অবশ্যই সম্পন্ন করবেন। আরও জানতে আপনি এর সাথে থাকা ভিডিও সিরিজটি দেখতে পারেন:
.
আপনি যা শিখবেন
আপনি শিখবেন কীভাবে:
- স্বয়ংক্রিয় হাইপারপ্যারামিটার টিউনিংয়ের জন্য প্রশিক্ষণ অ্যাপ্লিকেশন কোড পরিবর্তন করুন
- Vertex AI Python SDK ব্যবহার করে একটি হাইপারপ্যারামিটার টিউনিং জব কনফিগার ও চালু করুন।
গুগল ক্লাউডে এই ল্যাবটি চালানোর মোট খরচ প্রায় ১ ডলার ।
২. ভার্টেক্স এআই-এর পরিচিতি
এই ল্যাবটি গুগল ক্লাউডে উপলব্ধ সর্বাধুনিক এআই প্রোডাক্টটি ব্যবহার করে। ভার্টেক্স এআই গুগল ক্লাউডের এমএল অফারিংগুলোকে একটি নির্বিঘ্ন ডেভেলপমেন্ট অভিজ্ঞতায় একীভূত করে। পূর্বে, অটোএমএল (AutoML) দিয়ে প্রশিক্ষিত মডেল এবং কাস্টম মডেলগুলো আলাদা সার্ভিসের মাধ্যমে অ্যাক্সেস করা যেত। নতুন অফারিংটি অন্যান্য নতুন প্রোডাক্টের সাথে উভয়কে একটি একক এপিআই-তে একত্রিত করেছে। আপনি আপনার বিদ্যমান প্রোজেক্টগুলোও ভার্টেক্স এআই-তে মাইগ্রেট করতে পারেন।
ভার্টেক্স এআই-এর এন্ড-টু-এন্ড এমএল ওয়ার্কফ্লো সমর্থন করার জন্য বিভিন্ন পণ্য রয়েছে। এই ল্যাবটি নিচে উল্লেখিত পণ্যগুলোর উপর আলোকপাত করবে: ট্রেনিং এবং ওয়ার্কবেঞ্চ।

৩. আপনার পরিবেশ প্রস্তুত করুন
আপনার পরিবেশ সেট আপ করতে Vertex AI ল্যাবের সাহায্যে কাস্টম মডেল প্রশিক্ষণের ধাপগুলো সম্পূর্ণ করুন।
৪. প্রশিক্ষণ অ্যাপ্লিকেশন কোডকে কন্টেইনারাইজ করুন
আপনার ট্রেনিং অ্যাপ্লিকেশন কোড একটি ডকার কন্টেইনারে রেখে এবং সেই কন্টেইনারটিকে গুগল আর্টিফ্যাক্ট রেজিস্ট্রি- তে পুশ করার মাধ্যমে আপনি ভার্টেক্স এআই-এর কাছে এই ট্রেনিং জবটি জমা দেবেন। এই পদ্ধতি ব্যবহার করে, আপনি যেকোনো ফ্রেমওয়ার্ক দিয়ে তৈরি একটি মডেলকে ট্রেইন ও টিউন করতে পারবেন।
শুরু করার জন্য, পূর্ববর্তী ল্যাবগুলোতে আপনার তৈরি করা ওয়ার্কবেঞ্চ নোটবুকের লঞ্চার মেনু থেকে একটি টার্মিনাল উইন্ডো খুলুন।

ধাপ ১: প্রশিক্ষণ কোড লিখুন
flowers-hptune নামে একটি নতুন ডিরেক্টরি তৈরি করুন এবং cd কমান্ড ব্যবহার করে তার ভেতরে প্রবেশ করুন:
mkdir flowers-hptune
cd flowers-hptune
ট্রেনিং কোডের জন্য একটি ডিরেক্টরি এবং একটি পাইথন ফাইল তৈরি করতে নিম্নলিখিত কমান্ডটি চালান, যেখানে আপনি নিচের কোডটি যোগ করবেন।
mkdir trainer
touch trainer/task.py
আপনার flowers-hptune/ ডিরেক্টরিতে এখন নিম্নলিখিত বিষয়গুলো থাকা উচিত:
+ trainer/
+ task.py
এরপর, আপনার তৈরি করা task.py ফাইলটি খুলুন এবং নিচের কোডটি কপি করুন।
আপনাকে BUCKET_ROOT এ থাকা {your-gcs-bucket} এর জায়গায় সেই ক্লাউড স্টোরেজ বাকেটটি বসাতে হবে, যেখানে আপনি ল্যাব ১- এ ফুলের ডেটাসেটটি সংরক্ষণ করেছিলেন।
import tensorflow as tf
import numpy as np
import os
import hypertune
import argparse
## Replace {your-gcs-bucket} !!
BUCKET_ROOT='/gcs/{your-gcs-bucket}'
# Define variables
NUM_CLASSES = 5
EPOCHS=10
BATCH_SIZE = 32
IMG_HEIGHT = 180
IMG_WIDTH = 180
DATA_DIR = f'{BUCKET_ROOT}/flower_photos'
def get_args():
'''Parses args. Must include all hyperparameters you want to tune.'''
parser = argparse.ArgumentParser()
parser.add_argument(
'--learning_rate',
required=True,
type=float,
help='learning rate')
parser.add_argument(
'--momentum',
required=True,
type=float,
help='SGD momentum value')
parser.add_argument(
'--num_units',
required=True,
type=int,
help='number of units in last hidden layer')
args = parser.parse_args()
return args
def create_datasets(data_dir, batch_size):
'''Creates train and validation datasets.'''
train_dataset = tf.keras.utils.image_dataset_from_directory(
data_dir,
validation_split=0.2,
subset="training",
seed=123,
image_size=(IMG_HEIGHT, IMG_WIDTH),
batch_size=batch_size)
validation_dataset = tf.keras.utils.image_dataset_from_directory(
data_dir,
validation_split=0.2,
subset="validation",
seed=123,
image_size=(IMG_HEIGHT, IMG_WIDTH),
batch_size=batch_size)
train_dataset = train_dataset.cache().shuffle(1000).prefetch(buffer_size=tf.data.AUTOTUNE)
validation_dataset = validation_dataset.cache().prefetch(buffer_size=tf.data.AUTOTUNE)
return train_dataset, validation_dataset
def create_model(num_units, learning_rate, momentum):
'''Creates model.'''
model = tf.keras.Sequential([
tf.keras.layers.Resizing(IMG_HEIGHT, IMG_WIDTH),
tf.keras.layers.Rescaling(1./255, input_shape=(IMG_HEIGHT, IMG_WIDTH, 3)),
tf.keras.layers.Conv2D(16, 3, padding='same', activation='relu'),
tf.keras.layers.MaxPooling2D(),
tf.keras.layers.Conv2D(32, 3, padding='same', activation='relu'),
tf.keras.layers.MaxPooling2D(),
tf.keras.layers.Conv2D(64, 3, padding='same', activation='relu'),
tf.keras.layers.MaxPooling2D(),
tf.keras.layers.Flatten(),
tf.keras.layers.Dense(num_units, activation='relu'),
tf.keras.layers.Dense(NUM_CLASSES, activation='softmax')
])
model.compile(optimizer=tf.keras.optimizers.SGD(learning_rate=learning_rate, momentum=momentum),
loss=tf.keras.losses.SparseCategoricalCrossentropy(),
metrics=['accuracy'])
return model
def main():
args = get_args()
train_dataset, validation_dataset = create_datasets(DATA_DIR, BATCH_SIZE)
model = create_model(args.num_units, args.learning_rate, args.momentum)
history = model.fit(train_dataset, validation_data=validation_dataset, epochs=EPOCHS)
# DEFINE METRIC
hp_metric = history.history['val_accuracy'][-1]
hpt = hypertune.HyperTune()
hpt.report_hyperparameter_tuning_metric(
hyperparameter_metric_tag='accuracy',
metric_value=hp_metric,
global_step=EPOCHS)
if __name__ == "__main__":
main()
কন্টেইনারটি বিল্ড করার আগে, চলুন কোডটি আরও ভালোভাবে দেখে নেওয়া যাক। এখানে কয়েকটি কম্পোনেন্ট রয়েছে যা হাইপারপ্যারামিটার টিউনিং সার্ভিস ব্যবহারের জন্য নির্দিষ্ট।
- স্ক্রিপ্টটি
hypertuneলাইব্রেরি ইম্পোর্ট করে। -
get_args()ফাংশনটি আপনার টিউন করতে চাওয়া প্রতিটি হাইপারপ্যারামিটারের জন্য একটি কমান্ড-লাইন আর্গুমেন্ট নির্ধারণ করে। এই উদাহরণে, যে হাইপারপ্যারামিটারগুলো টিউন করা হবে সেগুলো হলো লার্নিং রেট, অপটিমাইজারের মোমেন্টাম ভ্যালু এবং মডেলের শেষ হিডেন লেয়ারের ইউনিটের সংখ্যা, তবে আপনি চাইলে অন্যগুলো নিয়েও পরীক্ষা করতে পারেন। এরপর, ওই আর্গুমেন্টগুলোতে পাস করা মানটি কোডে সংশ্লিষ্ট হাইপারপ্যারামিটার সেট করার জন্য ব্যবহৃত হয়। -
main()ফাংশনের শেষে, আপনি যে মেট্রিকটি অপ্টিমাইজ করতে চান তা নির্ধারণ করার জন্যhypertuneলাইব্রেরি ব্যবহার করা হয়। TensorFlow-তে, keras-এরmodel.fitমেথড একটিHistoryঅবজেক্ট রিটার্ন করে।History.historyঅ্যাট্রিবিউটটি হলো ধারাবাহিক ইপকগুলোতে ট্রেনিং লস ভ্যালু এবং মেট্রিক ভ্যালুর একটি রেকর্ড। আপনি যদিmodel.fitএ ভ্যালিডেশন ডেটা পাস করেন, তাহলেHistory.historyঅ্যাট্রিবিউটে ভ্যালিডেশন লস এবং মেট্রিক ভ্যালুও অন্তর্ভুক্ত থাকবে। উদাহরণস্বরূপ, যদি আপনি ভ্যালিডেশন ডেটা দিয়ে তিনটি ইপকের জন্য একটি মডেলকে ট্রেইন করেন এবং মেট্রিক হিসেবেaccuracyপ্রদান করেন, তাহলেHistory.historyঅ্যাট্রিবিউটটি নিম্নলিখিত ডিকশনারির মতো দেখাবে।
{
"accuracy": [
0.7795261740684509,
0.9471358060836792,
0.9870933294296265
],
"loss": [
0.6340447664260864,
0.16712145507335663,
0.04546636343002319
],
"val_accuracy": [
0.3795261740684509,
0.4471358060836792,
0.4870933294296265
],
"val_loss": [
2.044623374938965,
4.100203514099121,
3.0728273391723633
]
আপনি যদি চান যে হাইপারপ্যারামিটার টিউনিং সার্ভিসটি মডেলের ভ্যালিডেশন অ্যাকুরেসি সর্বাধিক করে এমন মানগুলো খুঁজে বের করুক, তাহলে মেট্রিকটিকে val_accuracy তালিকার শেষ এন্ট্রি (অথবা NUM_EPOCS - 1 ) হিসেবে সংজ্ঞায়িত করুন। এরপর, এই মেট্রিকটি HyperTune এর একটি ইনস্ট্যান্সে পাস করুন। আপনি hyperparameter_metric_tag এর জন্য আপনার পছন্দমতো যেকোনো স্ট্রিং বেছে নিতে পারেন, কিন্তু পরে যখন আপনি হাইপারপ্যারামিটার টিউনিং কাজটি শুরু করবেন, তখন আপনাকে আবার সেই স্ট্রিংটি ব্যবহার করতে হবে।
ধাপ ২: একটি ডকারফাইল তৈরি করুন
আপনার কোডকে কন্টেইনারাইজ করতে, আপনাকে একটি ডকারফাইল তৈরি করতে হবে। ডকারফাইলটিতে ইমেজটি চালানোর জন্য প্রয়োজনীয় সমস্ত কমান্ড অন্তর্ভুক্ত করতে হবে। এটি সমস্ত প্রয়োজনীয় লাইব্রেরি ইনস্টল করবে এবং ট্রেনিং কোডের জন্য এন্ট্রি পয়েন্ট সেট আপ করবে।
আপনার টার্মিনাল থেকে, flowers-hptune ডিরেক্টরির রুটে একটি খালি Dockerfile তৈরি করুন:
touch Dockerfile
আপনার flowers-hptune/ ডিরেক্টরিতে এখন নিম্নলিখিত বিষয়গুলো থাকা উচিত:
+ Dockerfile
+ trainer/
+ task.py
Dockerfile-টি খুলুন এবং নিচের অংশটি এর মধ্যে কপি করুন। আপনি লক্ষ্য করবেন যে এটি প্রথম ল্যাবে ব্যবহৃত Dockerfile-টির প্রায় হুবহু অনুরূপ, শুধু এখন আমরা cloudml-hypertune লাইব্রেরিটি ইনস্টল করছি।
FROM gcr.io/deeplearning-platform-release/tf2-gpu.2-8
WORKDIR /
# Installs hypertune library
RUN pip install cloudml-hypertune
# Copies the trainer code to the docker image.
COPY trainer /trainer
# Sets up the entry point to invoke the trainer.
ENTRYPOINT ["python", "-m", "trainer.task"]
ধাপ ৩: কন্টেইনারটি তৈরি করুন
আপনার প্রোজেক্টের জন্য একটি এনভ ভ্যারিয়েবল নির্ধারণ করতে, আপনার টার্মিনাল থেকে নিম্নলিখিত কমান্ডটি চালান এবং অবশ্যই your-cloud-project এর জায়গায় আপনার প্রোজেক্টের আইডি বসাবেন:
PROJECT_ID='your-cloud-project'
আর্টিফ্যাক্ট রেজিস্ট্রি-তে একটি রিপো নির্ধারণ করুন। আমরা প্রথম ল্যাবে তৈরি করা রিপোটি ব্যবহার করব।
REPO_NAME='flower-app'
গুগল আর্টিফ্যাক্ট রেজিস্ট্রি-তে আপনার কন্টেইনার ইমেজের URI দিয়ে একটি ভেরিয়েবল নির্ধারণ করুন:
IMAGE_URI=us-central1-docker.pkg.dev/$PROJECT_ID/$REPO_NAME/flower_image_hptune:latest
ডকার কনফিগার করুন
gcloud auth configure-docker \
us-central1-docker.pkg.dev
এরপর, আপনার flower-hptune ডিরেক্টরির রুট থেকে নিম্নলিখিত কমান্ডটি চালিয়ে কন্টেইনারটি বিল্ড করুন:
docker build ./ -t $IMAGE_URI
সবশেষে, এটিকে আর্টিফ্যাক্ট রেজিস্ট্রি-তে পুশ করুন:
docker push $IMAGE_URI
কন্টেইনারটি আর্টিফ্যাক্ট রেজিস্ট্রি-তে পুশ করা হয়ে গেলে, আপনি এখন ট্রেনিং জবটি শুরু করার জন্য প্রস্তুত।
৫. SDK ব্যবহার করে হাইপারপ্যারামিটার টিউনিং কাজটি চালান।
এই অংশে, আপনি ভার্টেক্স পাইথন এপিআই (Vertex Python API) ব্যবহার করে হাইপারপ্যারামিটার টিউনিং জবটি কীভাবে কনফিগার এবং সাবমিট করতে হয়, তা শিখবেন।
লঞ্চার থেকে একটি TensorFlow 2 নোটবুক তৈরি করুন।

Vertex AI SDK ইম্পোর্ট করুন।
from google.cloud import aiplatform
from google.cloud.aiplatform import hyperparameter_tuning as hpt
হাইপারপ্যারামিটার টিউনিং জবটি চালু করতে, আপনাকে প্রথমে worker_pool_specs নির্ধারণ করতে হবে, যা মেশিনের ধরন এবং ডকার ইমেজ নির্দিষ্ট করে। নিম্নলিখিত স্পেকটি দুটি NVIDIA Tesla V100 GPU সহ একটি মেশিনকে সংজ্ঞায়িত করে।
আপনাকে image_uri তে থাকা {PROJECT_ID} এর জায়গায় আপনার প্রজেক্ট আইডি বসাতে হবে।
# The spec of the worker pools including machine type and Docker image
# Be sure to replace PROJECT_ID in the `image_uri` with your project.
worker_pool_specs = [{
"machine_spec": {
"machine_type": "n1-standard-4",
"accelerator_type": "NVIDIA_TESLA_V100",
"accelerator_count": 1
},
"replica_count": 1,
"container_spec": {
"image_uri": "us-central1-docker.pkg.dev/{PROJECT_ID}/flower-app/flower_image_hptune:latest"
}
}]
এরপরে, ` parameter_spec নির্ধারণ করুন, যা একটি ডিকশনারি এবং এতে আপনি যে প্যারামিটারগুলো অপ্টিমাইজ করতে চান তা নির্দিষ্ট করা থাকে। ডিকশনারির কী (key) হলো প্রতিটি হাইপারপ্যারামিটারের জন্য কমান্ড লাইন আর্গুমেন্টে আপনার দেওয়া স্ট্রিং, এবং ডিকশনারির ভ্যালু (value) হলো প্যারামিটারের নির্দিষ্টকরণ।
প্রতিটি হাইপারপ্যারামিটারের জন্য, আপনাকে এর টাইপ এবং সেইসাথে টিউনিং সার্ভিস যে মানগুলো চেষ্টা করবে তার সীমা নির্ধারণ করতে হবে। হাইপারপ্যারামিটারগুলো ডাবল, ইন্টিজার, ক্যাটেগরিকাল বা ডিসক্রিট টাইপের হতে পারে। আপনি যদি ডাবল বা ইন্টিজার টাইপ নির্বাচন করেন, তাহলে আপনাকে একটি সর্বনিম্ন এবং সর্বোচ্চ মান প্রদান করতে হবে। আর আপনি যদি ক্যাটেগরিকাল বা ডিসক্রিট নির্বাচন করেন, তাহলে আপনাকে মানগুলো প্রদান করতে হবে। ডাবল এবং ইন্টিজার টাইপের জন্য, আপনাকে স্কেলিং মানও প্রদান করতে হবে। সেরা স্কেল কীভাবে বেছে নিতে হয় সে সম্পর্কে আপনি এই ভিডিওতে আরও জানতে পারবেন।
# Dictionary representing parameters to optimize.
# The dictionary key is the parameter_id, which is passed into your training
# job as a command line argument,
# And the dictionary value is the parameter specification of the metric.
parameter_spec = {
"learning_rate": hpt.DoubleParameterSpec(min=0.001, max=1, scale="log"),
"momentum": hpt.DoubleParameterSpec(min=0, max=1, scale="linear"),
"num_units": hpt.DiscreteParameterSpec(values=[64, 128, 512], scale=None)
}
সংজ্ঞায়িত করার জন্য চূড়ান্ত স্পেকটি হলো metric_spec , যা অপটিমাইজ করার জন্য মেট্রিককে প্রতিনিধিত্বকারী একটি ডিকশনারি। ডিকশনারিটির কী (key) হলো hyperparameter_metric_tag যা আপনি আপনার ট্রেনিং অ্যাপ্লিকেশন কোডে সেট করেছেন, এবং ভ্যালুটি হলো অপটিমাইজেশনের লক্ষ্য।
# Dictionary representing metric to optimize.
# The dictionary key is the metric_id, which is reported by your training job,
# And the dictionary value is the optimization goal of the metric.
metric_spec={'accuracy':'maximize'}
একবার স্পেকগুলো সংজ্ঞায়িত হয়ে গেলে, আপনি একটি কাস্টম জব (CustomJob) তৈরি করবেন, যেটি হলো সেই সাধারণ স্পেক যা প্রতিটি হাইপারপ্যারামিটার টিউনিং ট্রায়ালে আপনার জবটি চালানোর জন্য ব্যবহৃত হবে।
আপনাকে {YOUR_BUCKET} এর জায়গায় আপনার আগে তৈরি করা বাকেটটি বসাতে হবে।
# Replace YOUR_BUCKET
my_custom_job = aiplatform.CustomJob(display_name='flowers-hptune-job',
worker_pool_specs=worker_pool_specs,
staging_bucket='gs://{YOUR_BUCKET}')
এরপর, HyperparameterTuningJob টি তৈরি করে চালান।
hp_job = aiplatform.HyperparameterTuningJob(
display_name='flowers-hptune-job',
custom_job=my_custom_job,
metric_spec=metric_spec,
parameter_spec=parameter_spec,
max_trial_count=15,
parallel_trial_count=3)
hp_job.run()
এখানে কয়েকটি উল্লেখযোগ্য যুক্তি রয়েছে:
- max_trial_count : সার্ভিসটি কতগুলো ট্রায়াল চালাবে তার একটি ঊর্ধ্বসীমা আপনাকে নির্ধারণ করতে হবে। সাধারণত, বেশি ট্রায়াল ভালো ফলাফল দেয়, কিন্তু একটি নির্দিষ্ট পর্যায় আসবে, যার পরে অতিরিক্ত ট্রায়ালগুলো আপনার অপটিমাইজ করার চেষ্টা করা মেট্রিকটির উপর সামান্য বা কোনো প্রভাবই ফেলবে না। সবচেয়ে ভালো উপায় হলো, ট্রায়ালের সংখ্যা না বাড়িয়ে অল্প দিয়ে শুরু করা এবং আপনার নির্বাচিত হাইপারপ্যারামিটারগুলো কতটা প্রভাবশালী তা বুঝে নেওয়া।
- parallel_trial_count : আপনি যদি প্যারালাল ট্রায়াল ব্যবহার করেন, তাহলে সার্ভিসটি একাধিক ট্রেনিং প্রসেসিং ক্লাস্টার সরবরাহ করে। প্যারালাল ট্রায়ালের সংখ্যা বাড়ালে হাইপারপ্যারামিটার টিউনিং জবটি চলতে যে সময় লাগে তা কমে যায়; তবে, এটি সামগ্রিকভাবে জবটির কার্যকারিতা কমিয়ে দিতে পারে। এর কারণ হলো, ডিফল্ট টিউনিং স্ট্র্যাটেজি পরবর্তী ট্রায়ালগুলোতে মান নির্ধারণের জন্য পূর্ববর্তী ট্রায়ালগুলোর ফলাফল ব্যবহার করে।
- সার্চ অ্যালগরিদম : আপনি সার্চ অ্যালগরিদমটি গ্রিড, র্যান্ডম বা ডিফল্ট (কোনোটিই নয়) হিসেবে সেট করতে পারেন। ডিফল্ট অপশনটি সম্ভাব্য হাইপারপ্যারামিটার মানগুলোর পরিসরে অনুসন্ধানের জন্য বেসিয়ান অপটিমাইজেশন প্রয়োগ করে এবং এটিই প্রস্তাবিত অ্যালগরিদম। আপনি এই অ্যালগরিদম সম্পর্কে এখানে আরও জানতে পারবেন।
কনসোলে আপনি আপনার কাজের অগ্রগতি দেখতে পারবেন।

এবং এটি শেষ হলে, আপনি প্রতিটি পরীক্ষার ফলাফল এবং কোন মানগুচ্ছ সবচেয়ে ভালো কাজ করেছে তা দেখতে পারবেন।

🎉 অভিনন্দন! 🎉
আপনি শিখেছেন কীভাবে ভার্টেক্স এআই ব্যবহার করে:
- একটি স্বয়ংক্রিয় হাইপারপ্যারামিটার টিউনিং কাজ চালান
Vertex-এর বিভিন্ন অংশ সম্পর্কে আরও জানতে ডকুমেন্টেশন দেখুন।
৬. পরিষ্কার-পরিচ্ছন্নতা
যেহেতু আমরা নোটবুকটিকে ৬০ মিনিট নিষ্ক্রিয় থাকার পর টাইম আউট হওয়ার জন্য কনফিগার করেছি, তাই ইনস্ট্যান্সটি শাট ডাউন করার বিষয়ে আমাদের চিন্তা করার দরকার নেই। আপনি যদি ইনস্ট্যান্সটি ম্যানুয়ালি শাট ডাউন করতে চান, তাহলে কনসোলের Vertex AI Workbench সেকশনে থাকা Stop বাটনে ক্লিক করুন। আর যদি নোটবুকটি পুরোপুরি মুছে ফেলতে চান, তাহলে Delete বাটনে ক্লিক করুন।

স্টোরেজ বাকেটটি ডিলিট করতে, আপনার ক্লাউড কনসোলের নেভিগেশন মেনু ব্যবহার করে স্টোরেজ-এ যান, আপনার বাকেটটি সিলেক্ট করুন এবং ডিলিট-এ ক্লিক করুন:
