Bekerja dengan Cloud Storage

AI Platform Training membaca data dari lokasi Cloud Storage tempat Anda telah memberikan akses ke project AI Platform Training Anda. Halaman ini memberikan panduan singkat untuk menggunakan Cloud Storage dengan Pelatihan AI Platform.

Ringkasan

Penggunaan Cloud Storage diperlukan atau direkomendasikan untuk aspek layanan Pelatihan AI Platform berikut:

  • Melakukan staging aplikasi pelatihan dan dependensi kustom Anda.
  • Menyimpan data input pelatihan Anda, seperti data tabel atau gambar.
  • Menyimpan data output pelatihan Anda.

Pertimbangan region

Saat membuat bucket Cloud Storage untuk digunakan dengan Pelatihan AI Platform, Anda harus:

  • Tetapkan ke region komputasi tertentu, bukan ke nilai multi-region.
  • Gunakan region yang sama tempat Anda menjalankan tugas pelatihan.

Lihat selengkapnya tentang region yang tersedia untuk Pelatihan AI Platform.

Menyiapkan bucket Cloud Storage

Bagian ini menunjukkan cara membuat bucket baru. Anda dapat menggunakan bucket yang sudah ada, tetapi harus berada di region yang sama dengan tempat Anda berencana menjalankan tugas AI Platform. Selain itu, jika bukan bagian dari project yang Anda gunakan untuk menjalankan AI Platform Training, Anda harus secara eksplisit memberikan akses ke akun layanan AI Platform Training.

  1. Tentukan nama untuk bucket baru Anda. Nama harus unik di semua bucket di Cloud Storage.

    BUCKET_NAME="YOUR_BUCKET_NAME"

    Misalnya, gunakan nama project Anda dengan tambahan -aiplatform:

    PROJECT_ID=$(gcloud config list project --format "value(core.project)")
    BUCKET_NAME=${PROJECT_ID}-aiplatform
  2. Periksa nama bucket yang Anda buat.

    echo $BUCKET_NAME
  3. Pilih region untuk bucket Anda dan tetapkan variabel lingkungan REGION.

    Gunakan region yang sama tempat Anda berencana menjalankan tugas Pelatihan AI Platform. Lihat region yang tersedia untuk layanan Pelatihan AI Platform.

    Misalnya, kode berikut membuat REGION dan menetapkannya ke us-central1:

    REGION=us-central1
  4. Buat bucket baru:

    gsutil mb -l $REGION gs://$BUCKET_NAME

Pengaturan model dalam bucket

Atur struktur folder dalam bucket untuk mengakomodasi banyak iterasi dari model Anda.

  • Tempatkan setiap model tersimpan ke direktori tersendiri yang terpisah dalam bucket Anda.
  • Pertimbangkan untuk menggunakan stempel waktu guna memberi nama direktori di bucket Anda.

Misalnya, Anda dapat menempatkan model pertama Anda dalam struktur yang mirip dengan gs://your-bucket/your-model-DATE1/your-saved-model-file. Untuk memberi nama direktori bagi setiap iterasi model Anda berikutnya, gunakan stempel waktu yang telah diperbarui (gs://your-bucket/your-model-DATE2/your-saved-model-file dan seterusnya).

Mengakses Cloud Storage selama pelatihan

Gunakan modul Python yang dapat membaca dari Cloud Storage dalam kode pelatihan Anda, seperti Klien Python untuk Google Cloud Storage, modul tf.io.gfile.GFile TensorFlow, atau pandas 0.24.0 atau yang lebih baru. AI Platform Training menangani autentikasi.

Menggunakan bucket Cloud Storage dari project berbeda

Bagian ini menjelaskan cara mengonfigurasi bucket Cloud Storage dari luar project Anda sehingga AI Platform Training dapat mengaksesnya.

Jika Anda menyiapkan bucket Cloud Storage di project yang sama dengan AI Platform Training, akun layanan Pelatihan AI Platform Anda sudah memiliki izin yang diperlukan untuk mengakses bucket Cloud Storage.

Petunjuk ini disediakan untuk kasus berikut:

  • Anda tidak dapat menggunakan bucket dari project Anda, seperti saat set data besar dibagikan ke beberapa project.
  • Jika Anda menggunakan beberapa bucket dengan AI Platform Training, Anda harus memberikan akses ke akun layanan Pelatihan AI Platform secara terpisah untuk setiap bucket.

Langkah 1: Dapatkan informasi yang diperlukan dari project cloud Anda

Konsol

  1. Buka halaman IAM di konsol Google Cloud.

    Buka Halaman IAM

  2. Halaman IAM menampilkan daftar semua akun utama yang memiliki akses ke project Anda, beserta peran yang terkait. Project Pelatihan AI Platform Anda memiliki beberapa akun layanan. Temukan akun layanan dalam daftar yang memiliki peran Agen Layanan Cloud ML dan salin ID akun layanan tersebut, yang terlihat mirip dengan ini:

    "service-111111111111@cloud-ml.google.com.iam.gserviceaccount.com".

    Anda perlu menempelkan ID akun layanan ini ke halaman lain di Konsol Google Cloud selama langkah berikutnya.

Command Line

Langkah-langkah di bagian ini akan mendapatkan informasi tentang project Google Cloud Anda agar dapat digunakan dalam mengubah kontrol akses untuk akun layanan Pelatihan AI Platform project Anda. Anda perlu menyimpan nilai untuk digunakan nanti dalam variabel lingkungan.

  1. Dapatkan ID project Anda menggunakan Google Cloud CLI dengan project Anda dipilih:

    PROJECT_ID=$(gcloud config list project --format "value(core.project)")
    
  2. Dapatkan token akses untuk project Anda menggunakan gcloud:

    AUTH_TOKEN=$(gcloud auth print-access-token)
    
  3. Dapatkan informasi akun layanan dengan meminta konfigurasi project dari layanan REST:

    SVC_ACCOUNT=$(curl -X GET -H "Content-Type: application/json" \
        -H "Authorization: Bearer $AUTH_TOKEN" \
        https://ml.googleapis.com/v1/projects/${PROJECT_ID}:getConfig \
        | python3 -c "import json; import sys; response = json.load(sys.stdin); \
        print(response['serviceAccount'])")
    

Langkah 2: Konfigurasikan akses ke bucket Cloud Storage

Konsol

  1. Buka halaman Storage di Konsol Google Cloud.

    Buka Halaman Penyimpanan

  2. Pilih bucket Cloud Storage yang Anda gunakan untuk men-deploy model dengan mencentang kotak di sebelah kiri nama bucket.

  3. Klik tombol Tampilkan Panel Info di sudut kanan atas untuk menampilkan tab Izin.

  4. Tempelkan ID akun layanan ke kolom Tambahkan Akun Utama. Di sebelah kanan kolom tersebut, pilih peran yang diinginkan, seperti Storage Legacy Bucket Reader.

    Jika tidak yakin peran mana yang harus dipilih, Anda dapat memilih beberapa peran agar ditampilkan di bawah kolom Tambahkan Principals, masing-masing dengan deskripsi singkat izinnya.

  5. Untuk menetapkan peran yang diinginkan ke akun layanan, klik tombol Tambahkan di sebelah kanan kolom Tambahkan Utama.

Command Line

Setelah memiliki informasi akun layanan dan project, Anda perlu memperbarui izin akses untuk bucket Cloud Storage. Langkah-langkah ini menggunakan nama variabel yang sama dengan yang digunakan di bagian sebelumnya.

  1. Tetapkan nama bucket Anda di variabel lingkungan bernama BUCKET_NAME:

    BUCKET_NAME="your_bucket_name"
    
  2. Beri akun layanan akses baca ke bucket Cloud Storage Anda:

    gsutil -m defacl ch -u $SVC_ACCOUNT:R gs://$BUCKET_NAME
    
  3. Jika bucket Anda sudah berisi objek yang perlu diakses, Anda harus memberikan akses baca ke objek tersebut secara eksplisit:

    gsutil -m acl ch -u $SVC_ACCOUNT:R -r gs://$BUCKET_NAME
    
  4. Berikan akses tulis:

    gsutil -m acl ch -u $SVC_ACCOUNT:W gs://$BUCKET_NAME
    

Untuk memilih peran yang akan diberikan ke akun layanan AI Platform Training, lihat Peran IAM Cloud Storage. Untuk mengetahui informasi yang lebih umum tentang memperbarui peran IAM di Cloud Storage, lihat cara memberikan akses ke akun layanan untuk resource.

Langkah selanjutnya