Dalam panduan ini, Anda akan men-deploy dan menyajikan LLM menggunakan node GPU host tunggal di GKE dengan framework penayangan vLLM. Panduan ini memberikan petunjuk dan konfigurasi untuk men-deploy model terbuka berikut:
Panduan ini ditujukan untuk engineer Machine Learning (ML) serta spesialis Data dan AI yang tertarik untuk mempelajari kemampuan orkestrasi container Kubernetes dalam menyajikan model terbuka untuk inferensi. Untuk mempelajari lebih lanjut peran umum dan contoh tugas yang dirujuk dalam konten Google Cloud , lihat Peran dan tugas pengguna GKE umum.
Untuk analisis mendetail tentang performa dan biaya penayangan model untuk model terbuka ini, Anda juga dapat menggunakan alat Panduan Memulai Inferensi GKE. Untuk mempelajari lebih lanjut, lihat Panduan memulai Inferensi GKE dan notebook Colab yang menyertainya.
Mendapatkan akses ke model
Untuk mengakses model melalui Hugging Face, Anda memerlukan token Hugging Face.
Ikuti langkah-langkah berikut untuk membuat token baru jika Anda belum memilikinya:
- Klik Profil Anda > Setelan > Token Akses.
- Pilih New Token.
- Tentukan Nama pilihan Anda dan Peran minimal Baca.
- Pilih Generate a token.
- Salin token yang dihasilkan ke papan klip Anda.
Menyediakan lingkungan inferensi GKE
Di bagian ini, Anda akan men-deploy infrastruktur yang diperlukan untuk menayangkan model.
Meluncurkan Cloud Shell
Panduan ini menggunakan Cloud Shell untuk menjalankan perintah. Cloud Shell telah diinstal sebelumnya dengan alat yang diperlukan, termasuk gcloud
, kubectl
, dan git
.
Di konsol Google Cloud , mulai instance Cloud Shell:
Tindakan ini akan meluncurkan sesi di panel bawah konsol Google Cloud .
Men-deploy arsitektur dasar
Untuk menyediakan cluster GKE dan resource yang diperlukan untuk mengakses model dari Hugging Face, ikuti langkah-langkah berikut:
Di Cloud Shell, clone repositori berikut:
git clone https://github.com/GoogleCloudPlatform/accelerated-platforms --branch hf-model-tutorial && \ cd accelerated-platforms && \ export ACP_REPO_DIR="$(pwd)"
Tetapkan variabel lingkungan Anda:
export TF_VAR_platform_default_project_id=PROJECT_ID export HF_TOKEN_READ=HF_TOKEN
Ganti nilai berikut:
PROJECT_ID
: Google Cloud project ID Anda.HF_TOKEN
: token Hugging Face yang Anda buat sebelumnya.
Panduan ini memerlukan Terraform versi 1.8.0 atau yang lebih baru. Cloud Shell telah menginstal Terraform v1.5.7 secara default.
Untuk mengupdate versi Terraform di Cloud Shell, Anda dapat menjalankan skrip berikut. Skrip ini menginstal alat
terraform-switcher
dan membuat perubahan pada lingkungan shell Anda."${ACP_REPO_DIR}/tools/bin/install_terraform.sh" source ~/.bashrc
Jalankan skrip deployment berikut. Skrip deployment mengaktifkan API yang diperlukan dan menyediakan infrastruktur yang diperlukan untuk panduan ini. Google Cloud Hal ini mencakup jaringan VPC baru, cluster GKE dengan node pribadi, dan resource pendukung lainnya. Skrip dapat memerlukan waktu beberapa menit untuk menyelesaikan prosesnya.
Anda dapat menyajikan model menggunakan GPU di cluster GKE Autopilot atau Standard. Cluster Autopilot memberikan pengalaman Kubernetes yang terkelola sepenuhnya. Untuk mengetahui informasi selengkapnya tentang memilih mode operasi GKE yang paling sesuai untuk workload Anda, lihat Tentang mode operasi GKE.
Autopilot
"${ACP_REPO_DIR}/platforms/gke/base/tutorials/hf-gpu-model/deploy-ap.sh"
Standar
"${ACP_REPO_DIR}/platforms/gke/base/tutorials/hf-gpu-model/deploy-standard.sh"
Setelah skrip ini selesai, Anda akan memiliki cluster GKE yang siap untuk beban kerja inferensi.
Jalankan perintah berikut untuk menetapkan variabel lingkungan dari konfigurasi bersama:
source "${ACP_REPO_DIR}/platforms/gke/base/use-cases/inference-ref-arch/terraform/_shared_config/scripts/set_environment_variables.sh"
Skrip deployment membuat secret di Secret Manager untuk menyimpan token Hugging Face Anda. Anda harus menambahkan token secara manual ke secret ini sebelum men-deploy cluster. Di Cloud Shell, jalankan perintah ini untuk menambahkan token ke Secret Manager.
echo ${HF_TOKEN_READ} | gcloud secrets versions add ${huggingface_hub_access_token_read_secret_manager_secret_name} \ --data-file=- \ --project=${huggingface_secret_manager_project_id}
Men-deploy model terbuka
Sekarang Anda siap mendownload dan men-deploy model.
Tetapkan variabel lingkungan untuk model yang ingin Anda deploy:
Gemma 3 27B-it
export ACCELERATOR_TYPE="h100" export HF_MODEL_ID="google/gemma-3-27b-it"
Llama 4 Scout 17B-16E-Instruct
export ACCELERATOR_TYPE="h100" export HF_MODEL_ID="meta-llama/llama-4-scout-17b-16e-instruct"
Qwen3 32B
export ACCELERATOR_TYPE="h100" export HF_MODEL_ID="qwen/qwen3-32b"
gpt-oss 20B
export ACCELERATOR_TYPE="h100" export HF_MODEL_ID="openai/gpt-oss-20b"
Untuk konfigurasi tambahan, termasuk varian model dan jenis GPU lainnya, lihat manifes yang tersedia di repositori GitHub
accelerated-platforms
.Dapatkan variabel lingkungan dari deployment Anda. Variabel lingkungan ini berisi detail konfigurasi yang diperlukan dari infrastruktur yang Anda sediakan.
source "${ACP_REPO_DIR}/platforms/gke/base/use-cases/inference-ref-arch/terraform/_shared_config/scripts/set_environment_variables.sh"
Jalankan skrip berikut untuk mengonfigurasi Job Kubernetes yang mendownload model ke Cloud Storage:
"${ACP_REPO_DIR}/platforms/gke/base/use-cases/inference-ref-arch/kubernetes-manifests/model-download/configure_huggingface.sh"
Deploy Tugas download model:
kubectl apply --kustomize "${ACP_REPO_DIR}/platforms/gke/base/use-cases/inference-ref-arch/kubernetes-manifests/model-download/huggingface"
Tunggu hingga download selesai. Pantau status Tugas dan saat
COMPLETIONS
adalah1/1
, tekanCtrl+C
untuk keluar.watch --color --interval 5 --no-title "kubectl --namespace=${huggingface_hub_downloader_kubernetes_namespace_name} get job/${HF_MODEL_ID_HASH}-hf-model-to-gcs
Deploy workload inferensi ke cluster GKE Anda.
"${ACP_REPO_DIR}/platforms/gke/base/use-cases/inference-ref-arch/kubernetes-manifests/online-inference-gpu/configure_deployment.sh" kubectl apply --kustomize "${ACP_REPO_DIR}/platforms/gke/base/use-cases/inference-ref-arch/kubernetes-manifests/online-inference-gpu/vllm/${ACCELERATOR_TYPE}-${HF_MODEL_NAME}"
Menguji deployment Anda
Tunggu hingga Pod server inferensi siap. Saat kolom
READY
adalah1/1
, tekanCtrl+C
untuk keluar.watch --color --interval 5 --no-title "kubectl --namespace=${ira_online_gpu_kubernetes_namespace_name} get deployment/vllm-${ACCELERATOR_TYPE}-${HF_MODEL_NAME}"
Jalankan skrip berikut untuk menyiapkan penerusan port dan mengirim permintaan contoh ke model. Contoh ini menggunakan format payload untuk model Gemma 3 27b-it.
kubectl --namespace=${ira_online_gpu_kubernetes_namespace_name} port-forward service/vllm-${ACCELERATOR_TYPE}-${HF_MODEL_NAME} 8000:8000 >/dev/null & PF_PID=$! curl http://127.0.0.1:8000/v1/chat/completions \ --data '{ "model": "/gcs/'${HF_MODEL_ID}'", "messages": [ { "role": "user", "content": "What is GKE?" } ] }' \ --header "Content-Type: application/json" \ --request POST \ --show-error \ --silent | jq kill -9 ${PF_PID}
Anda akan melihat respons JSON dari model yang menjawab pertanyaan.
Pembersihan
Untuk menghindari timbulnya tagihan, hapus semua resource yang Anda buat.
Hapus workload inferensi:
kubectl delete --ignore-not-found --kustomize "${ACP_REPO_DIR}/platforms/gke/base/use-cases/inference-ref-arch/kubernetes-manifests/online-inference-gpu/vllm/${ACCELERATOR_TYPE}-${HF_MODEL_NAME}"
Hapus cluster GKE dasar:
Autopilot
"${ACP_REPO_DIR}/platforms/gke/base/tutorials/hf-gpu-model/teardown-ap.sh"
Standar
"${ACP_REPO_DIR}/platforms/gke/base/tutorials/hf-gpu-model/teardown-standard.sh"
Langkah berikutnya
- Pelajari lebih lanjut inferensi model AI/ML di GKE.
- Analisis performa dan biaya inferensi model dengan alat Panduan Memulai Inferensi GKE.
- Pelajari pola dan kasus penggunaan lainnya di GitHub yang dibangun berdasarkan arsitektur ini.