Penayangan inferensi sangat penting dalam men-deploy model AI generatif ke aplikasi dunia nyata. GKE menyediakan platform yang tangguh dan skalabel untuk mengelola workload dalam container, sehingga menjadi pilihan yang menarik untuk menayangkan model Anda dalam pengembangan atau produksi. Dengan GKE, Anda dapat menggunakan kemampuan Kubernetes untuk orkestrasi, penskalaan, dan ketersediaan tinggi guna men-deploy dan mengelola layanan inferensi secara efisien.
Menyadari permintaan spesifik inferensi AI/ML, Google Cloud telah memperkenalkan kemampuan AI Generatif GKE—rangkaian fitur yang dirancang khusus untuk meningkatkan dan mengoptimalkan penayangan inferensi di GKE. Untuk mengetahui informasi selengkapnya tentang fitur tertentu, lihat Kemampuan AI Generatif GKE.
Mulai menggunakan inferensi model AI/ML di GKE
Anda dapat mulai menjelajahi inferensi model AI/ML di GKE dalam hitungan menit. Anda dapat menggunakan paket gratis GKE, yang memungkinkan Anda mulai menggunakan Kubernetes tanpa dikenai biaya untuk pengelolaan cluster.
- Coba langkah-langkah Deploy Model untuk men-deploy model dalam container dan server model.
- Baca Ringkasan praktik terbaik inferensi di GKE, yang memiliki panduan dan resource untuk merencanakan dan menjalankan workload inferensi di GKE.
Terminologi
Halaman ini menggunakan terminologi berikut yang terkait dengan inferensi di GKE:
- Inferensi: proses menjalankan model AI generatif, seperti model bahasa besar atau model difusi, dalam cluster GKE untuk menghasilkan teks, embedding, atau output lainnya dari data input. Inferensi model di GKE memanfaatkan akselerator untuk menangani komputasi kompleks secara efisien untuk pemrosesan real-time atau batch.
- Model: model AI generatif yang telah mempelajari pola dari data dan digunakan untuk inferensi. Model bervariasi dalam ukuran dan arsitektur, mulai dari model khusus domain yang lebih kecil hingga jaringan neural parameter multi-miliar yang dioptimalkan untuk berbagai tugas bahasa.
- Server model: layanan dalam container yang bertanggung jawab untuk menerima permintaan inferensi dan menampilkan inferensi. Layanan ini mungkin merupakan aplikasi Python, atau solusi yang lebih tangguh seperti vLLM, JetStream, TensorFlow Serving, atau Triton Inference Server. Server model menangani pemuatan model ke dalam memori, dan menjalankan komputasi pada akselerator untuk menampilkan inferensi secara efisien.
- Akselerator: hardware khusus, seperti Unit Pemrosesan Grafis (GPU) dari NVIDIA dan Unit Pemrosesan Tensor (TPU) dari Google, yang dapat dilampirkan ke node GKE untuk mempercepat komputasi, terutama untuk tugas pelatihan dan inferensi.
- Kuantisasi: teknik yang digunakan untuk mengurangi ukuran model AI/ML dan meningkatkan kecepatan inferensi dengan mengonversi bobot dan aktivasi model dari jenis data presisi yang lebih tinggi ke jenis data presisi yang lebih rendah.
Manfaat GKE untuk inferensi
Penayangan inferensi di GKE memberikan beberapa manfaat:
- Performa-harga yang efisien: dapatkan nilai dan kecepatan untuk kebutuhan penayangan inferensi Anda. GKE memungkinkan Anda memilih dari berbagai akselerator yang bertenaga (GPU dan TPU), sehingga Anda hanya membayar performa yang benar-benar dibutuhkan.
- Deployment yang lebih cepat: percepat waktu pemasaran Anda dengan praktik terbaik, kualifikasi, dan praktik terbaik yang disesuaikan yang disediakan oleh kemampuan AI Generatif GKE.
- Performa yang skalabel: skala performa dengan pemantauan bawaan menggunakan GKE Inference Gateway, Horizontal Pod Autoscaling (HPA), dan metrik kustom. Anda dapat menjalankan berbagai model terlatih atau kustom, dari 8 miliar parameter hingga 671 miliar parameter.
- Portabilitas penuh: dapatkan manfaat dari portabilitas penuh dengan standar terbuka. Google berkontribusi pada Kubernetes API utama, termasuk Gateway dan LeaderWorkerSet, dan semua API dapat di-porting dengan distribusi Kubernetes.
- Dukungan ekosistem: bangun ekosistem GKE yang tangguh yang mendukung alat seperti Kueue untuk antrean dan pengelolaan resource lanjutan, dan Ray untuk komputasi terdistribusi, guna memfasilitasi pelatihan dan inferensi model yang skalabel dan efisien.
Cara kerja inferensi di GKE
Bagian ini menjelaskan, pada tingkat tinggi, langkah-langkah untuk menggunakan GKE untuk penayangan inferensi:
Buat container model: Untuk membuat container aplikasi adalah membuat image container, yang merupakan paket yang dapat dieksekusi yang mencakup semua hal yang diperlukan untuk menjalankan aplikasi: kode, runtime, alat sistem, library sistem, dan setelan. Aplikasi sederhana dapat dibuat dalam container sebagai satu unit, sedangkan aplikasi yang lebih kompleks dapat dipecah menjadi beberapa komponen dalam container. Deploy model dengan membuat container server model (seperti vLLM), dan memuat bobot model dari Cloud Storage atau repositori seperti Hugging Face. Saat Anda menggunakan Panduan Memulai Inferensi GKE, image dalam container akan otomatis dikelola dalam manifes untuk Anda.
Buat cluster GKE: buat cluster GKE untuk menghosting deployment Anda. Pilih Autopilot untuk pengalaman terkelola atau Standar untuk penyesuaian. Konfigurasi ukuran cluster, jenis node, dan akselerator. Untuk konfigurasi yang dioptimalkan, gunakan Panduan Memulai Inferensi.
Deploy model Anda sebagai Deployment Kubernetes: buat Deployment Kubernetes untuk mengelola layanan inferensi Anda. Deployment adalah objek Kubernetes API yang memungkinkan Anda menjalankan beberapa replika Pod yang didistribusikan di antara node dalam cluster. Tentukan image Docker, replika, dan setelan. Kubernetes mengambil image dan menjalankan container Anda di node cluster GKE. Konfigurasi Pod dengan server model dan model Anda, termasuk LoRA jika diperlukan.
Ekspos layanan inferensi Anda: buat layanan inferensi Anda dapat diakses dengan membuat Kubernetes Service untuk menyediakan endpoint jaringan bagi Deployment Anda. Gunakan Inference Gateway untuk load balancing dan perutean cerdas yang secara khusus disesuaikan untuk workload inferensi AI generatif, atau lihat perbandingan strategi load balancing untuk memilih opsi terbaik bagi kebutuhan Anda.
Tangani permintaan inferensi: kirim data dari klien aplikasi Anda ke endpoint Layanan Anda, dalam format yang diharapkan (JSON, gRPC). Jika Anda menggunakan load balancer, load balancer akan mendistribusikan permintaan ke replika model. Server model memproses permintaan, menjalankan model, dan menampilkan inferensi.
Skalakan dan pantau deployment inferensi Anda: skalakan inferensi dengan HPA untuk otomatis menyesuaikan replika berdasarkan CPU atau latensi. Horizontal Pod Autoscaler (HPA) adalah pengontrol Kubernetes yang secara otomatis menambah atau mengurangi jumlah Pod dalam workload (seperti Deployment) berdasarkan metrik yang diamati seperti pemakaian CPU atau metrik kustom. Gunakan Panduan Memulai Inferensi untuk mendapatkan rekomendasi penskalaan yang dibuat secara otomatis. Untuk melacak performa, gunakan Cloud Monitoring dan Cloud Logging dengan observabilitas bawaan, termasuk dasbor untuk server model populer seperti vLLM.
Untuk contoh mendetail yang menggunakan model, server model, dan akselerator tertentu, lihat Contoh inferensi.
Kemampuan AI Generatif GKE
Anda dapat menggunakan kemampuan ini bersama-sama atau satu per satu untuk mengatasi tantangan utama dalam menayangkan model AI generatif dan meningkatkan pemanfaatan resource dalam lingkungan GKE Anda, tanpa biaya tambahan.
| Nama | Deskripsi | Manfaat |
|---|---|---|
| Panduan Memulai Inferensi GKE |
Analisis performa dan efisiensi biaya workload inferensi Anda. Tentukan kebutuhan bisnis Anda dan dapatkan praktik terbaik yang disesuaikan untuk kombinasi akselerator, konfigurasi penskalaan dan penyimpanan, serta server model yang paling sesuai dengan kebutuhan Anda. Anda dapat mengakses layanan ini dengan gcloud CLI dan Google Cloud konsol. Untuk mengetahui informasi selengkapnya, lihat Menganalisis performa dan biaya penayangan model dengan Panduan Memulai Inferensi GKE. |
|
| GKE Inference Gateway | Dapatkan perutean berdasarkan metrik, seperti pemakaian cache KV, untuk latensi yang lebih baik. Untuk mengetahui informasi selengkapnya, lihat Tentang GKE Inference Gateway |
|
| Akselerator pemuatan bobot model | Akses data di Cloud Storage dengan cepat menggunakan Cloud Storage FUSE dengan caching dan download paralel. Untuk mengetahui informasi selengkapnya tentang penggunaan Cloud Storage FUSE untuk workload AI/ML, lihat arsitektur referensi. Google Cloud Managed Lustre adalah sistem file paralel berperforma tinggi dan terkelola sepenuhnya yang dioptimalkan untuk AI yang dapat dilampirkan ke 10.000 Pod atau lebih. Untuk mengetahui informasi selengkapnya tentang penggunaan Managed Lustre untuk workload AI/ML, lihat arsitektur referensi. Google Cloud Hyperdisk ML adalah disk yang terhubung ke jaringan yang dapat dilampirkan ke hingga 2.500 Pod. |
|
Metrik performa inferensi
Untuk mengoptimalkan workload inferensi, penting untuk memahami cara mengukur performanya. Tabel berikut menjelaskan metrik utama untuk membandingkan performa inferensi di GKE.
| Indikator tolok ukur | Metrik (unit) | Deskripsi |
|---|---|---|
| Latensi | Waktu ke Token Pertama (TTFT) (mdtk) | Waktu yang diperlukan untuk membuat token pertama untuk permintaan. |
| Waktu Per Token Output yang Dinormalisasi (NTPOT) (mdtk) | Latensi permintaan yang dinormalisasi berdasarkan jumlah token output, diukur sebagai request_latency / total_output_tokens. |
|
| Waktu Per Token Output (TPOT) (mdtk) | Waktu yang diperlukan untuk membuat satu token output, diukur sebagai (request_latency - time_to_first_token) / (total_output_tokens - 1). |
|
| Latensi antar-token (ITL) (mdtk) | Mengukur latensi antara dua generasi token output. Tidak seperti TPOT, yang mengukur latensi di seluruh permintaan, ITL mengukur waktu untuk membuat setiap token output. Pengukuran individual ini kemudian diagregasi untuk menghasilkan nilai rata-rata, median, dan persentil seperti p90. | |
| Latensi permintaan (mdtk) | Waktu end-to-end untuk menyelesaikan permintaan. | |
| Throughput | Permintaan per detik | Jumlah total permintaan yang Anda layani per detik. Perhatikan bahwa metrik ini mungkin bukan cara yang andal untuk mengukur throughput LLM karena dapat sangat bervariasi untuk panjang konteks yang berbeda. |
| Token output per detik | Metrik umum yang diukur sebagai total_output_tokens_generated_by_server / elapsed_time_in_seconds. |
|
| Token input per detik | Diukur sebagai total_input_tokens_generated_by_server / elapsed_time_in_seconds. |
|
| Token per detik | Diukur sebagai total_tokens_generated_by_server / elapsed_time_in_seconds. Metrik ini menghitung token input dan output, sehingga membantu Anda membandingkan workload dengan waktu pra-pengisian yang tinggi dibandingkan waktu dekode yang tinggi. |
Merencanakan inferensi
Deployment inferensi yang berhasil memerlukan perencanaan yang cermat di beberapa area utama, termasuk efisiensi biaya, performa, dan ketersediaan resource. Untuk rekomendasi mendetail tentang cara membangun platform inferensi yang skalabel, berperforma tinggi, dan hemat biaya, lihat Ringkasan praktik terbaik inferensi di GKE.
Mencoba contoh inferensi
Temukan contoh deployment GKE untuk model AI generatif, akselerator, dan server model. Jika Anda baru memulai, sebaiknya pelajari tutorial Menayangkan model terbuka Gemma menggunakan GPU di GKE dengan vLLM.
Atau, cari tutorial berdasarkan kata kunci:
Langkah berikutnya
- Kunjungi portal orkestrasi AI/ML di GKE untuk menjelajahi panduan, tutorial, dan kasus penggunaan resmi kami untuk menjalankan workload AI/ML di GKE.
- Jelajahi contoh eksperimental untuk memanfaatkan GKE guna mempercepat inisiatif AI/ML Anda di GKE AI Labs.