Bekerja dengan Cloud Storage

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

Ringkasan

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

Prediksi online

Prediksi batch

  • Menyimpan file input prediksi batch Anda.
  • Menyimpan output prediksi batch Anda.
  • Menyimpan model, jika Anda menggunakan prediksi batch tanpa men-deploy model di AI Platform Prediction terlebih dahulu.

Pertimbangan region

Saat membuat bucket Cloud Storage untuk digunakan dengan AI Platform Prediction, 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 AI Platform Prediction yang tersedia.

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 Prediction, Anda harus secara eksplisit memberikan akses ke akun layanan AI Platform Prediction.

  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 Prediksi AI Platform. Lihat region yang tersedia untuk layanan AI Platform Prediction.

    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 prediksi

Jika Anda men-deploy rutinitas prediksi kustom (beta) atau pipeline scikit-learn dengan kode kustom (beta), versi model Anda dapat membaca dari bucket Cloud Storage mana pun dalam project yang sama selama penanganan prediksi.

Gunakan modul Python yang dapat membaca dari Cloud Storage dalam kode prediksi kustom 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 Prediction menangani autentikasi.

Anda juga dapat menentukan akun layanan saat men-deploy rutinitas prediksi kustom untuk menyesuaikan resource Cloud Storage yang dapat diakses oleh deployment Anda.

Menggunakan bucket Cloud Storage dari project berbeda

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

Jika Anda menyiapkan bucket Cloud Storage di project yang sama dengan AI Platform Prediction, akun layanan Prediction 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 menggunakan beberapa bucket dengan AI Platform Prediction, Anda harus memberikan akses ke akun layanan AI Platform Prediction 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 AI Platform Prediction 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 AI Platform Prediction 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 Prediction, 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