- Data pelatihan di-streaming ke tugas pelatihan Anda, bukan didownload ke replika, yang dapat mempercepat pemuatan data dan tugas penyiapan saat tugas mulai berjalan.
- Tugas pelatihan dapat menangani input dan output dalam skala besar tanpa melakukan panggilan API, menangani respons, atau mengintegrasikan dengan library sisi klien.
- Cloud Storage FUSE menyediakan throughput tinggi untuk pembacaan berurutan file besar dan dalam skenario pelatihan terdistribusi.
Kasus penggunaan
Sebaiknya gunakan Cloud Storage untuk menyimpan data pelatihan dalam situasi berikut:
- Data pelatihan Anda adalah data tidak terstruktur, seperti gambar, teks, dan video.
- Data pelatihan Anda adalah data terstruktur dalam format seperti TFRecord.
- Data pelatihan Anda berisi file besar, seperti video mentah.
- Anda menggunakan pelatihan terdistribusi.
Cara kerjanya
Tugas pelatihan kustom dapat mengakses bucket Cloud Storage Anda sebagai subdirektori dari direktori /gcs
root. Misalnya, jika data pelatihan Anda berada di gs://example-bucket/data.csv
, Anda dapat membaca dan menulis ke bucket dari aplikasi pelatihan Python Anda sebagai berikut:
Membacakan ke bucket
with open('/gcs/example-bucket/data.csv', 'r') as f:
lines = f.readlines()
Menuliskan ke bucket
with open('/gcs/example-bucket/epoch3.log', 'a') as f:
f.write('success!\n')
Izin akses bucket
Secara default, tugas pelatihan kustom dapat mengakses bucket Cloud Storage apa pun dalam project Google Cloud yang sama menggunakan Agen Layanan Kode Kustom Vertex AI. Untuk mengontrol akses ke bucket, Anda dapat menetapkan akun layanan kustom ke tugas. Dalam hal ini, akses ke bucket Cloud Storage diberikan berdasarkan izin yang terkait dengan peran Cloud Storage dari akun layanan khusus.
Misalnya, jika Anda ingin memberikan akses baca dan tulis tugas pelatihan kustom ke Bucket-A tetapi hanya memberikan akses baca ke Bucket-B, Anda dapat menetapkan akun layanan khusus yang memiliki peran berikut ke tugas tersebut:
roles/storage.objectAdmin
untuk Bucket-Aroles/storage.objectViewer
untuk Bucket-B
Jika tugas pelatihan mencoba menulis ke Bucket-B, error "izin ditolak" akan ditampilkan.
Untuk mengetahui informasi lebih lanjut tentang peran Cloud Storage, lihat Peran IAM untuk Cloud Storage.
Praktik terbaik
- Hindari mengganti nama direktori. Operasi penggantian nama tidak bersifat atomik di Cloud Storage FUSE. Jika operasi terganggu, beberapa file akan tetap berada di direktori lama.
- Hindari tindakan yang tidak perlu seperti menutup (
close()
) atau mengosongkan file (flush()
). Menutup atau mengosongkan file akan mengirim file ke Cloud Storage, yang akan menimbulkan biaya.
Panduan pengoptimalan performa
Untuk mendapatkan throughput baca yang optimal saat menggunakan Cloud Storage sebagai sistem file, sebaiknya terapkan pedoman berikut:
- Untuk mengurangi latensi yang ditimbulkan dengan mencari dan membuka objek di bucket, simpan data dalam file yang lebih besar dan lebih sedikit.
- Gunakan pelatihan terdistribusi untuk memaksimalkan penggunaan bandwidth.
- Simpan file yang sering diakses ke dalam cache untuk meningkatkan performa baca. Untuk mengetahui detailnya, lihat Ringkasan penyimpanan dalam cache di Cloud Storage FUSE.
- Gunakan penyimpanan lokal untuk checkpointing dan log, bukan Cloud Storage.
Batasan
Untuk mempelajari batasan Cloud Storage FUSE, termasuk perbedaan antara sistem file Cloud Storage FUSE dan POSIX, lihat Batasan dan perbedaan dari sistem file POSIX.
Menggunakan Cloud Storage FUSE
Untuk menggunakan Cloud Storage FUSE untuk pelatihan kustom, lakukan hal berikut:
- Buat bucket Cloud Storage. Perhatikan bahwa bucket region ganda dan multi-region tidak didukung untuk pelatihan kustom.
Upload data pelatihan Anda ke bucket. Untuk mengetahui detailnya, lihat Upload.
Untuk mempelajari opsi lain untuk mentransfer data ke Cloud Storage, lihat Opsi transfer data.
Langkah selanjutnya
- Lihat dokumentasi Cloud Storage FUSE.
- Mempelajari harga Cloud Storage FUSE.
- Menyiapkan aplikasi pelatihan Anda untuk digunakan di Vertex AI.