Tentang GKE Inference Gateway


Halaman ini menjelaskan konsep dan fitur utama Inference Gateway Google Kubernetes Engine (GKE), ekstensi ke Gateway GKE untuk penayangan aplikasi AI generatif yang dioptimalkan.

Halaman ini mengasumsikan bahwa Anda mengetahui hal-hal berikut:

Halaman ini ditujukan untuk persona berikut:

  • Engineer machine learning (ML), Admin dan operator platform, serta Spesialis Data dan AI yang tertarik untuk menggunakan kemampuan orkestrasi kontainer Kubernetes untuk melayani beban kerja AI/ML.
  • Arsitek cloud dan spesialis Jaringan yang berinteraksi dengan jaringan Kubernetes.

Ringkasan

Gateway Inferensi GKE adalah ekstensi untuk Gateway GKE yang menyediakan perutean dan load balancing yang dioptimalkan untuk melayani workload Kecerdasan Buatan (AI) generatif. Layanan ini menyederhanakan deployment, pengelolaan, dan kemampuan pengamatan workload inferensi AI.

Fitur dan manfaat

Gateway Inferensi GKE menyediakan kemampuan utama berikut untuk menyajikan model AI generatif secara efisien untuk aplikasi AI generatif di GKE:

  • Load balancing yang dioptimalkan untuk inferensi: mendistribusikan permintaan untuk mengoptimalkan performa penyaluran model AI. Layanan ini menggunakan metrik dari server model, seperti KVCache Utilization dan queue length of pending requests, untuk menggunakan akselerator (seperti GPU dan TPU) secara lebih efisien untuk beban kerja AI generatif.
  • Penayangan model yang di-fine-tune LoRA dinamis: mendukung penayangan model yang di-fine-tune LoRA dinamis pada akselerator umum. Cara ini mengurangi jumlah GPU dan TPU yang diperlukan untuk menayangkan model dengan memultipleks beberapa model yang di-fine-tune LoRA pada model dasar dan akselerator umum.
  • Penskalaan otomatis yang dioptimalkan untuk inferensi: Autoscaler Pod Horizontal (HPA) GKE menggunakan metrik server model untuk melakukan penskalaan otomatis, yang membantu memastikan penggunaan resource komputasi yang efisien dan performa inferensi yang dioptimalkan.
  • Perutean yang mendukung model: merutekan permintaan inferensi berdasarkan nama model yang ditentukan dalam spesifikasi OpenAI API dalam cluster GKE Anda. Anda dapat menentukan kebijakan perutean Gateway, seperti pembagian traffic dan duplikasi permintaan, untuk mengelola berbagai versi model dan menyederhanakan peluncuran model. Misalnya, Anda dapat merutekan permintaan untuk nama model tertentu ke objek InferencePool yang berbeda, yang masing-masing menayangkan versi model yang berbeda.
  • Penyajian khusus model Criticality: memungkinkan Anda menentukan Criticality penyajian model AI. Memprioritaskan permintaan yang sensitif terhadap latensi daripada tugas inferensi batch yang toleran terhadap latensi. Misalnya, Anda dapat memprioritaskan permintaan dari aplikasi yang sensitif terhadap latensi dan membatalkan tugas yang kurang sensitif terhadap waktu saat resource terbatas.
  • Keamanan AI terintegrasi: terintegrasi dengan Trusted Cloud Model Armor, layanan yang menerapkan pemeriksaan keamanan AI pada perintah dan respons di gateway. Model Armor menyediakan log permintaan, respons, dan pemrosesan untuk analisis dan pengoptimalan retrospektif. Antarmuka terbuka GKE Inference Gateway memungkinkan penyedia dan developer pihak ketiga mengintegrasikan layanan kustom ke dalam proses permintaan inferensi.
  • Observabilitas inferensi: menyediakan metrik observabilitas untuk permintaan inferensi, seperti kecepatan permintaan, latensi, error, dan saturasi. Pantau performa dan perilaku layanan inferensi Anda.

Memahami konsep utama

GKE Inference Gateway meningkatkan kualitas GKE Gateway yang ada yang menggunakan objek GatewayClass. GKE Inference Gateway memperkenalkan Definisi Resource Kustom (CRD) Gateway API baru berikut, yang selaras dengan ekstensi Gateway API Kubernetes OSS untuk Inferensi:

  • Objek InferencePool: merepresentasikan grup Pod (penampung) yang berbagi konfigurasi komputasi, jenis akselerator, model bahasa dasar, dan server model yang sama. Hal ini secara logis mengelompokkan dan mengelola resource penayangan model AI Anda. Satu objek InferencePool dapat mencakup beberapa Pod di berbagai node GKE dan memberikan skalabilitas serta ketersediaan tinggi.
  • Objek InferenceModel: menentukan nama model penayangan dari InferencePool sesuai dengan spesifikasi OpenAI API. Objek InferenceModel juga menentukan properti penayangan model, seperti Criticality model AI. Gateway Inferensi GKE memberikan preferensi pada workload yang diklasifikasikan sebagai Critical. Dengan begitu, Anda dapat memultipleksing workload AI yang sensitif terhadap latensi dan yang toleran terhadap latensi di cluster GKE. Anda juga dapat mengonfigurasi objek InferenceModel untuk menayangkan model yang di-fine-tune LoRA.
  • Objek TargetModel: menentukan nama model target dan objek InferencePool yang menayangkan model. Hal ini memungkinkan Anda menentukan kebijakan pemilihan rute Gateway, seperti pemisahan traffic dan pencerminan permintaan, serta menyederhanakan peluncuran versi model.

Diagram berikut mengilustrasikan GKE Inference Gateway dan integrasinya dengan keamanan AI, kemampuan observasi, dan penayangan model dalam cluster GKE.

Hubungan antara objek `InferencePool` dan `InferenceModel` GKE Inference Gateway
Gambar: Model resource GKE Inference Gateway

Diagram berikut mengilustrasikan model resource yang berfokus pada dua persona yang berfokus pada inferensi baru dan resource yang mereka kelola.

Model resource untuk persona yang berfokus pada inferensi dan resource-nya
Gambar: Model resource GKE Inference Gateway

Cara kerja GKE Inference Gateway

GKE Inference Gateway menggunakan ekstensi Gateway API dan logika pemilihan rute khusus model untuk menangani permintaan klien ke model AI. Langkah-langkah berikut menjelaskan alur permintaan.

Cara kerja alur permintaan

GKE Inference Gateway merutekan permintaan klien dari permintaan awal ke instance model. Bagian ini menjelaskan cara GKE Inference Gateway menangani permintaan. Alur permintaan ini umum untuk semua klien.

  1. Klien mengirimkan permintaan, yang diformat seperti yang dijelaskan dalam spesifikasi OpenAI API, ke model yang berjalan di GKE.
  2. GKE Inference Gateway memproses permintaan menggunakan ekstensi inferensi berikut:
    1. Ekstensi perutean berbasis isi: mengekstrak ID model dari isi permintaan klien dan mengirimkannya ke GKE Inference Gateway. GKE Inference Gateway kemudian menggunakan ID ini untuk merutekan permintaan berdasarkan aturan yang ditentukan dalam objek HTTPRoute Gateway API. Perutean isi permintaan mirip dengan perutean berdasarkan jalur URL. Perbedaannya adalah perutean isi permintaan menggunakan data dari isi permintaan.
    2. Ekstensi keamanan: menggunakan Model Armor atau solusi pihak ketiga yang didukung untuk menerapkan kebijakan keamanan khusus model yang mencakup pemfilteran konten, deteksi ancaman, pembersihan, dan logging. Ekstensi keamanan menerapkan kebijakan ini ke jalur pemrosesan permintaan dan respons. Hal ini memungkinkan ekstensi keamanan untuk membersihkan dan mencatat permintaan dan respons.
    3. Ekstensi pemilih endpoint: memantau metrik utama dari server model dalam InferencePool. Metrik ini melacak penggunaan cache nilai kunci (KV-cache), panjang antrean permintaan yang tertunda, dan adaptor LoRA aktif di setiap server model. Kemudian, permintaan akan dirutekan ke replika model yang optimal berdasarkan metrik ini untuk meminimalkan latensi dan memaksimalkan throughput untuk inferensi AI.
  3. GKE Inference Gateway merutekan permintaan ke replika model yang ditampilkan oleh ekstensi pemilih endpoint.

Diagram berikut mengilustrasikan alur permintaan dari klien ke instance model melalui GKE Inference Gateway.

Alur permintaan dari klien ke instance model melalui GKE Inference Gateway
Gambar: Alur permintaan GKE Inference Gateway

Cara kerja distribusi traffic

GKE Inference Gateway secara dinamis mendistribusikan permintaan inferensi ke server model dalam objek InferencePool. Hal ini membantu mengoptimalkan pemanfaatan resource dan mempertahankan performa dalam berbagai kondisi beban. GKE Inference Gateway menggunakan dua mekanisme berikut untuk mengelola distribusi traffic:

  • Pemilihan endpoint: memilih server model yang paling sesuai secara dinamis untuk menangani permintaan inferensi. Load balancer memantau beban dan ketersediaan server, lalu membuat keputusan perutean.

  • Pengantrean dan pelepasan: mengelola alur permintaan dan mencegah kelebihan beban traffic. GKE Inference Gateway menyimpan permintaan masuk dalam antrean, membuat prioritas permintaan berdasarkan kriteria yang ditentukan, dan membatalkan permintaan saat sistem kelebihan beban.

Gateway Inferensi GKE mendukung tingkat Criticality berikut:

  • Critical: workload ini diprioritaskan. Sistem memastikan permintaan ini diproses meskipun dalam batasan resource.
  • Standard: workload ini ditayangkan saat resource tersedia. Jika sumber daya terbatas, permintaan ini akan dibatalkan.
  • Sheddable: workload ini disajikan secara oportunistik. Jika resource langka, permintaan ini akan dibatalkan untuk melindungi workload Critical.

Saat sistem mengalami tekanan resource, permintaan Standard dan Sheddable akan langsung dibatalkan dengan kode error 429 untuk mengamankan beban kerja Critical.

Inferensi streaming

GKE Inference Gateway mendukung inferensi streaming untuk aplikasi seperti chatbot dan terjemahan live yang memerlukan pembaruan berkelanjutan atau mendekati real-time. Inferensi streaming memberikan respons dalam potongan atau segmen inkremental, bukan sebagai satu output yang lengkap. Jika terjadi error selama respons streaming, streaming akan berakhir, dan klien akan menerima pesan error. GKE Inference Gateway tidak mencoba lagi respons streaming.

Mempelajari contoh aplikasi

Bagian ini memberikan contoh untuk menangani berbagai skenario aplikasi AI generatif dengan menggunakan GKE Inference Gateway.

Contoh 1: Menyajikan beberapa model AI generatif di cluster GKE

Sebuah perusahaan ingin men-deploy beberapa model bahasa besar (LLM) untuk melayani berbagai workload. Misalnya, mereka mungkin ingin men-deploy model Gemma3 untuk antarmuka chatbot dan model Deepseek untuk aplikasi rekomendasi. Perusahaan perlu memastikan performa penayangan yang optimal untuk LLM ini.

Dengan GKE Inference Gateway, Anda dapat men-deploy LLM ini di cluster GKE dengan konfigurasi akselerator pilihan Anda di InferencePool. Kemudian, Anda dapat merutekan permintaan berdasarkan nama model (seperti chatbot dan recommender) dan properti Criticality.

Diagram berikut menggambarkan cara GKE Inference Gateway merutekan permintaan ke model yang berbeda berdasarkan nama model dan Criticality.

Merutekan permintaan ke model yang berbeda berdasarkan nama model dan Tingkat Kekritisan
Gambar: Menayangkan beberapa model AI generatif di cluster GKE menggunakan GKE Inference Gateway

Contoh 2: Menyajikan adaptor LoRA pada akselerator bersama

Perusahaan ingin menayangkan LLM untuk analisis dokumen dan berfokus pada audiens dalam beberapa bahasa, seperti Inggris dan Spanyol. Mereka telah menyempurnakan model untuk setiap bahasa, tetapi perlu menggunakan kapasitas GPU dan TPU secara efisien. Anda dapat menggunakan GKE Inference Gateway untuk men-deploy adapter yang di-fine-tune LoRA dinamis untuk setiap bahasa (misalnya, english-bot dan spanish-bot) pada model dasar umum (misalnya, llm-base) dan akselerator. Dengan demikian, Anda dapat mengurangi jumlah akselerator yang diperlukan dengan mengemas beberapa model secara padat pada akselerator umum.

Diagram berikut mengilustrasikan cara GKE Inference Gateway menayangkan beberapa adaptor LoRA pada akselerator bersama.

Menayangkan beberapa adaptor LoRA di akselerator bersama
Gambar: Menayangkan adaptor LoRA pada akselerator bersama

Langkah berikutnya