Ringkasan
Platform Agen Gemini Enterprise mendukung deployment GPU multi-host untuk menyajikan model yang melebihi kapasitas memori satu node GPU, seperti DeepSeek-V3, DeepSeek-R1, dan Meta LLama 3.1 405B (versi non-terkuantisasi).
Panduan ini menjelaskan cara menyajikan model DeepSeek-V3 menggunakan unit pemrosesan grafis (GPU) multi-host di Gemini Enterprise Agent Platform dengan vLLM. Penyiapan untuk model lainnya serupa. Untuk mengetahui informasi selengkapnya, lihat Penayangan vLLM untuk model bahasa multimodal dan teks.
Sebelum memulai, pastikan Anda memahami hal-hal berikut:
- Ketersediaan versi GPU menurut wilayah
- Harga GPU menurut region
- Harga Cloud Storage
- Harga Gemini Enterprise Agent Platform
Gunakan Kalkulator Harga untuk membuat perkiraan biaya berdasarkan penggunaan yang Anda proyeksikan.
Container
Untuk mendukung deployment multi-host, panduan ini menggunakan image container vLLM bawaan dengan integrasi Ray dari Model Garden. Ray memungkinkan pemrosesan terdistribusi yang diperlukan untuk menjalankan model di beberapa node GPU.
Jika diinginkan, Anda dapat membuat image multi-node vLLM Anda sendiri. Perhatikan bahwa image container kustom ini harus kompatibel dengan Gemini Enterprise Agent Platform.
Sebelum memulai
Sebelum memulai deployment model, selesaikan prasyarat yang tercantum di bagian ini.
Menyiapkan project Google Cloud
- Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Agent Platform API.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Agent Platform API.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Di konsol Google Cloud , aktifkan Cloud Shell.
Di bagian bawah konsol Google Cloud , sesi Cloud Shell akan dimulai dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi pada sesi.
Meminta kuota GPU
Untuk men-deploy DeepSeek-V3, Anda memerlukan dua VM a3-highgpu-8g dengan masing-masing delapan GPU H100, sehingga totalnya 16 GPU H100. Kemungkinan Anda perlu meminta penambahan kuota GPU H100, karena nilai defaultnya kurang dari 16.
Untuk melihat kuota GPU H100, buka halaman Google Cloud Quotas & System Limits di konsol.
Mengupload model
Untuk mengupload model Anda sebagai resource
Modelke Gemini Enterprise Agent Platform, jalankan perintahgcloud ai models uploadsebagai berikut:gcloud ai models upload \ --region=LOCATION \ --project=PROJECT_ID \ --display-name=MODEL_DISPLAY_NAME \ --container-image-uri=us-docker.pkg.dev/vertex-ai/vertex-vision-model-garden-dockers/pytorch-vllm-serve:20250312_0916_RC01 \ --container-args='^;^/vllm-workspace/ray_launcher.sh;python;-m;vllm.entrypoints.api_server;--host=0.0.0.0;--port=7080;--model=deepseek-ai/DeepSeek-V3;--tensor-parallel-size=8;--pipeline-parallel-size=2;--gpu-memory-utilization=0.82;--max-model-len=163840;--max-num-seqs=64;--enable-chunked-prefill;--kv-cache-dtype=auto;--trust-remote-code;--disable-log-requests' \ --container-deployment-timeout-seconds=7200 \ --container-ports=7080 \ --container-env-vars=MODEL_ID=deepseek-ai/DeepSeek-V3Lakukan penggantian berikut:
LOCATION: region tempat Anda menggunakan Gemini Enterprise Agent PlatformPROJECT_ID: ID Google Cloud project AndaMODEL_DISPLAY_NAME: nama tampilan yang Anda inginkan untuk model Anda
Membuat endpoint inferensi online khusus
Untuk mendukung permintaan penyelesaian chat, penampung Model Garden memerlukan endpoint khusus. Endpoint khusus dalam pratinjau dan tidak mendukung Google Cloud CLI, jadi Anda harus menggunakan REST API untuk membuat endpoint.
Untuk membuat endpoint khusus, jalankan perintah berikut:
PROJECT_ID=PROJECT_ID REGION=LOCATION ENDPOINT="${REGION}-aiplatform.googleapis.com" curl \ -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://${ENDPOINT}/v1/projects/${PROJECT_ID}/locations/${REGION}/endpoints \ -d '{ "displayName": "ENDPOINT_DISPLAY_NAME", "dedicatedEndpointEnabled": true }'Lakukan penggantian berikut:
ENDPOINT_DISPLAY_NAME: nama tampilan untuk endpoint Anda
Men-deploy model
Dapatkan ID endpoint untuk endpoint inferensi online dengan menjalankan perintah
gcloud ai endpoints list:ENDPOINT_ID=$(gcloud ai endpoints list \ --project=PROJECT_ID \ --region=LOCATION \ --filter=display_name~'ENDPOINT_DISPLAY_NAME' \ --format="value(name)")Dapatkan ID model untuk model Anda dengan menjalankan perintah
gcloud ai models list:MODEL_ID=$(gcloud ai models list \ --project=PROJECT_ID \ --region=LOCATION \ --filter=display_name~'MODEL_DISPLAY_NAME' \ --format="value(name)")Deploy model ke endpoint dengan menjalankan perintah
gcloud ai deploy-model:gcloud alpha ai endpoints deploy-model $ENDPOINT_ID \ --project=PROJECT_ID \ --region=LOCATION \ --model=$MODEL_ID \ --display-name="DEPLOYED_MODEL_NAME" \ --machine-type=a3-highgpu-8g \ --traffic-split=0=100 \ --accelerator=type=nvidia-h100-80gb,count=8 \ --multihost-gpu-node-count=2Ganti DEPLOYED_MODEL_NAME dengan nama untuk model yang di-deploy. Nama ini bisa sama dengan nama tampilan model (MODEL_DISPLAY_NAME).
Men-deploy model besar seperti DeepSeek-V3 dapat memerlukan waktu lebih lama daripada waktu tunggu deployment default. Jika perintah
deploy-modelkehabisan waktu, proses deployment akan terus berjalan di latar belakang.Perintah
deploy-modelmenampilkan ID operasi yang dapat digunakan untuk memeriksa kapan operasi selesai. Anda dapat melakukan polling untuk status operasi hingga responsnya menyertakan"done": true. Gunakan perintah berikut untuk melakukan polling status:gcloud ai operations describe \ --region=LOCATION \ OPERATION_IDGanti OPERATION_ID dengan ID operasi yang ditampilkan oleh perintah sebelumnya.
Mendapatkan inferensi online dari model yang di-deploy
Bagian ini menjelaskan cara mengirim permintaan inferensi online ke endpoint publik khusus tempat model DeepSeek-V3 di-deploy.
Dapatkan nomor project dengan menjalankan perintah
gcloud projects describe:PROJECT_NUMBER=$(gcloud projects describe PROJECT_ID --format="value(projectNumber)")Kirim permintaan prediksi mentah:
curl \ -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://${ENDPOINT_ID}.${REGION}-${PROJECT_NUMBER}.prediction.vertexai.goog/v1/projects/${PROJECT_NUMBER}/locations/${REGION}/endpoints/${ENDPOINT_ID}:rawPredict \ -d '{ "prompt": "Write a short story about a robot.", "stream": false, "max_tokens": 50, "temperature": 0.7 }'Mengirim permintaan penyelesaian chat:
curl \ -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://${ENDPOINT_ID}.${REGION}-${PROJECT_NUMBER}.prediction.vertexai.goog/v1/projects/${PROJECT_NUMBER}/locations/${REGION}/endpoints/${ENDPOINT_ID}/chat/completions \ -d '{"stream":false, "messages":[{"role": "user", "content": "Summer travel plan to Paris"}], "max_tokens": 40,"temperature":0.4,"top_k":10,"top_p":0.95, "n":1}'Untuk mengaktifkan streaming, ubah nilai
"stream"darifalsemenjaditrue.
Pembersihan
Agar tidak menimbulkan biaya Gemini Enterprise Agent Platform lebih lanjut, hapus Google Cloud resource yang Anda buat selama tutorial ini:
Untuk membatalkan deployment model dari endpoint dan menghapus endpoint, jalankan perintah berikut:
ENDPOINT_ID=$(gcloud ai endpoints list \ --region=LOCATION \ --filter=display_name=ENDPOINT_DISPLAY_NAME \ --format="value(name)") DEPLOYED_MODEL_ID=$(gcloud ai endpoints describe $ENDPOINT_ID \ --region=LOCATION \ --format="value(deployedModels.id)") gcloud ai endpoints undeploy-model $ENDPOINT_ID \ --region=LOCATION \ --deployed-model-id=$DEPLOYED_MODEL_ID gcloud ai endpoints delete $ENDPOINT_ID \ --region=LOCATION \ --quietUntuk menghapus model, jalankan perintah berikut:
MODEL_ID=$(gcloud ai models list \ --region=LOCATION \ --filter=display_name=DEPLOYED_MODEL_NAME \ --format="value(name)") gcloud ai models delete $MODEL_ID \ --region=LOCATION \ --quiet
Langkah berikutnya
- Untuk informasi referensi komprehensif tentang deployment GPU multi-host di Platform Agen Gemini Enterprise dengan vLLM, lihat Penayangan vLLM untuk model bahasa tekstual dan multimodal.
- Pelajari cara membuat image multi-node vLLM Anda sendiri. Perhatikan bahwa image container kustom Anda harus kompatibel dengan Gemini Enterprise Agent Platform.