Men-deploy aplikasi AI agentic di GKE dengan Agent Development Kit (ADK) dan LLM yang dihosting sendiri

Tutorial ini menunjukkan cara men-deploy dan mengelola aplikasi AI/ML agentik dalam container menggunakan Google Kubernetes Engine (GKE). Dengan menggabungkan Google Agent Development Kit (ADK) dengan model bahasa besar (LLM) yang dihosting sendiri seperti Llama 3.1 yang ditayangkan oleh vLLM, Anda dapat mengoperasionalkan agen AI secara efisien dan dalam skala besar sambil mempertahankan kontrol penuh atas stack model. Tutorial ini memandu Anda melalui proses end-to-end untuk membawa agen berbasis Python dari pengembangan ke deployment produksi di cluster GKE Autopilot dengan akselerasi GPU.

Tutorial ini ditujukan untuk Engineer machine learning (ML), Developer, dan Arsitek cloud yang tertarik untuk menggunakan kemampuan orkestrasi container Kubernetes untuk menyajikan aplikasi AI/ML agentik. Untuk mempelajari lebih lanjut peran umum dan contoh tugas yang kami referensikan dalam Google Cloud konten, lihat Peran dan tugas pengguna GKE Enterprise umum.

Sebelum memulai, pastikan Anda memahami hal-hal berikut:

Latar belakang

Bagian ini menjelaskan teknologi utama yang digunakan dalam tutorial ini.

Agent Development Kit (ADK)

Agent Development Kit (ADK) adalah framework fleksibel dan modular untuk mengembangkan dan men-deploy agen AI. Meskipun dioptimalkan untuk Gemini dan ekosistem Google, ADK tidak mengharuskan Anda menggunakan model atau deployment tertentu, dan dibuat agar kompatibel dengan framework lain. ADK dirancang agar pengembangan agen terasa lebih seperti pengembangan software, sehingga memudahkan developer membuat, men-deploy, dan mengorkestrasi arsitektur agentic yang berkisar dari tugas dasar hingga alur kerja yang kompleks.

Untuk mengetahui informasi selengkapnya, lihat dokumentasi ADK.

Layanan Kubernetes terkelola GKE

Google Cloud menawarkan berbagai layanan, termasuk GKE, yang sangat cocok untuk men-deploy dan mengelola workload AI/ML. GKE adalah layanan Kubernetes terkelola yang menyederhanakan deployment, penskalaan, dan pengelolaan aplikasi dalam container. GKE menyediakan infrastruktur yang diperlukan, termasuk resource yang skalabel, komputasi terdistribusi, dan jaringan yang efisien, untuk menangani permintaan komputasi LLM.

Untuk mengetahui informasi selengkapnya tentang konsep utama Kubernetes, lihat Mulai mempelajari Kubernetes. Untuk mengetahui informasi selengkapnya tentang GKE dan cara GKE membantu Anda melakukan penskalaan, mengotomatiskan, dan mengelola Kubernetes, lihat Ringkasan GKE.

vLLM

vLLM adalah framework inferensi LLM open source yang sangat dioptimalkan yang dapat meningkatkan throughput inferensi di GPU, dengan fitur seperti berikut:

  • Implementasi transformer yang dioptimalkan dengan PagedAttention.
  • Batch berkelanjutan untuk meningkatkan throughput penayangan secara keseluruhan.
  • Paralelisme tensor dan inferensi terdistribusi pada beberapa GPU.

Untuk mengetahui informasi selengkapnya, lihat dokumentasi vLLM.

Tujuan

Tutorial ini menunjukkan kepada Anda cara melakukan hal berikut:

  1. Siapkan Google Cloud lingkungan Anda.
  2. Sediakan cluster GKE yang mendukung GPU.
  3. Deploy model Llama 3.1 menggunakan server inferensi vLLM.
  4. Buat image container untuk agen berbasis ADK Anda.
  5. Deploy agen ke cluster GKE dan hubungkan ke LLM yang dihosting sendiri.
  6. Uji agen yang di-deploy.

Arsitektur

Tutorial ini menyajikan arsitektur yang skalabel untuk men-deploy aplikasi AI agentic di GKE. Aplikasi agen ADK berjalan di node pool CPU standar dan LLM yang dihosting sendiri (Llama 3.1 di vLLM) berjalan di node pool yang mendukung GPU, keduanya dalam cluster GKE yang sama. Arsitektur ini memisahkan logika aplikasi agen dari workload inferensi LLM, yang memungkinkan setiap komponen diskalakan dan dikelola secara independen.

Diagram ini menggambarkan arsitektur yang skalabel untuk men-deploy aplikasi AI agentik di GKE, yang memisahkan logika aplikasi agen dari beban kerja inferensi model bahasa besar (LLM) untuk penskalaan dan pengelolaan yang independen. Arsitektur ini terdiri dari dua komponen inti: aplikasi agen ADK yang berjalan di node pool CPU standar dan LLM yang dihosting sendiri (Llama 3.1 di vLLM) yang berjalan di node pool yang mendukung GPU, keduanya berada dalam cluster GKE yang sama.
Gambar 1: Arsitektur yang dapat diskalakan untuk men-deploy AI agentic di GKE.

Arsitektur ini memiliki dua komponen inti, masing-masing di Deployment GKE-nya sendiri:

  • Aplikasi agen ADK: logika bisnis dan alat yang dibuat khusus untuk agen Anda (seperti get_weather) berada dalam image container. Gambar berjalan di kumpulan node CPU standar dan berkomunikasi dengan LLM menggunakan layanan Kubernetes internal.

  • LLM yang dihosting sendiri (Llama 3.1 di vLLM): model Llama 3.1 berjalan di server vLLM khusus pada kumpulan node yang mendukung GPU. Deployment ini menggunakan image container publik (vllm/vllm-openai:v0.8.5) yang dikonfigurasi untuk mendownload dan menayangkan model yang ditentukan dari Hugging Face saat container dimulai. Agen berkomunikasi dengan server ini melalui REST API yang diekspos oleh layanan Kubernetes vllm-llama3-service.

Agen ADK dan deployment vLLM berjalan di cluster GKE yang sama. Kolokasi ini dalam satu cluster menyederhanakan jaringan, pengelolaan, dan deployment sekaligus tetap memungkinkan penetapan hardware khusus untuk komponen aplikasi.

Biaya

Tutorial ini menggunakan komponen Google Cloud yang dapat ditagih berikut: Google Cloud

Tinjau harga untuk setiap layanan guna memahami potensi biaya.

Sebelum memulai

  • Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  • 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 (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  • Verify that billing is enabled for your Google Cloud project.

  • Enable the required APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  • 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 (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  • Verify that billing is enabled for your Google Cloud project.

  • Enable the required APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  • Make sure that you have the following role or roles on the project: roles/container.admin, roles/iam.serviceAccountAdmin, roles/artifactregistry.admin, roles/cloudbuild.builds.editor, roles/resourcemanager.projectIamAdmin

    Check for the roles

    1. In the Google Cloud console, go to the IAM page.

      Go to IAM
    2. Select the project.
    3. In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.

    4. For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.

    Grant the roles

    1. In the Google Cloud console, go to the IAM page.

      Buka IAM
    2. Pilih project.
    3. Klik Grant access.
    4. Di kolom New principals, masukkan ID pengguna Anda. Biasanya berupa alamat email untuk Akun Google.

    5. Di daftar Select a role, pilih peran.
    6. Untuk memberikan peran tambahan, klik Tambahkan peran lain, lalu tambahkan setiap peran tambahan.
    7. Klik Simpan.
    8. Dapatkan token akses baca dari Hugging Face untuk mendownload model Llama. Anda juga perlu meminta akses ke model Llama 3.1.
    9. Menyiapkan lingkungan

      Tutorial ini menggunakan Cloud Shell untuk mengelola resource yang dihosting di Google Cloud. Cloud Shell telah diinstal dengan software yang Anda perlukan untuk tutorial ini, termasuk kubectl, terraform, dan Google Cloud CLI.

      Untuk menyiapkan lingkungan Anda dengan Cloud Shell, ikuti langkah-langkah berikut:

      1. Di Google Cloud konsol, luncurkan sesi Cloud Shell dan klik Ikon aktivasi Cloud Shell Aktifkan Cloud Shell. Tindakan ini meluncurkan sesi di panel konsol Google Cloud .
      2. Tetapkan variabel lingkungan default:

        gcloud config set project PROJECT_ID
        export GOOGLE_CLOUD_REGION=REGION
        export PROJECT_ID=PROJECT_ID
        

        Ganti nilai berikut:

        • PROJECT_ID: Google Cloud project ID Anda.
        • REGION: Google Cloud region (misalnya, us-east4) untuk menyediakan cluster GKE, Artifact Registry, dan resource regional lainnya. Pastikan untuk menentukan region yang mendukung GPU L4 dan instance jenis mesin G2. Untuk memeriksa ketersediaan region, lihat Region dan zona GPU dalam dokumentasi Compute Engine.

      Meng-clone project contoh

      1. Dari terminal Cloud Shell, clone repositori kode contoh tutorial:

        git clone https://github.com/GoogleCloudPlatform/kubernetes-engine-samples.git
        
      2. Buka direktori tutorial:

        cd kubernetes-engine-samples/ai-ml/adk-vllm
        

      Membuat dan mengonfigurasi resource Google Cloud

      Untuk men-deploy agen, Anda harus melakukan provisioning resource Google Cloud yang diperlukan terlebih dahulu. Anda dapat membuat cluster GKE dan repositori Artifact Registry menggunakan gcloud CLI atau Terraform.

      gcloud

      Bagian ini menyediakan perintah gcloud CLI untuk menyiapkan cluster GKE dan Artifact Registry.

      1. Buat cluster GKE: Anda dapat men-deploy aplikasi agentik yang di-containerisasi di cluster GKE Autopilot atau Standard. Gunakan cluster Autopilot untuk pengalaman Kubernetes yang terkelola sepenuhnya. Untuk memilih mode operasi GKE yang paling sesuai dengan workload Anda, lihat Tentang mode operasi GKE.

        Autopilot

        Jalankan perintah berikut di Cloud Shell:

        gcloud container clusters create-auto CLUSTER_NAME \
            --location=$GOOGLE_CLOUD_REGION
        

        Ganti CLUSTER_NAME dengan nama cluster GKE Anda.

        Dengan Autopilot, GKE secara otomatis menyediakan node berdasarkan permintaan resource workload Anda. GPU yang diperlukan untuk LLM diminta dalam manifes deploy-llm.yaml dengan menggunakan nodeSelector.

        Untuk menambahkan permintaan nodeSelector ke GPU nvidia-l4, ikuti langkah-langkah berikut:

        1. Buka kubernetes-engine-samples/ai-ml/adk-vllm/deploy-llm/deploy-llm.yaml di editor.
        2. Tambahkan nodeSelector berikut di bagian spec.template.spec:

          nodeSelector:
          cloud.google.com/gke-accelerator: nvidia-l4
          

        Standar

        1. Di Cloud Shell, buat cluster Standard dengan menjalankan perintah berikut:

          gcloud container clusters create CLUSTER_NAME \
              --location=$GOOGLE_CLOUD_REGION
          

          Ganti CLUSTER_NAME dengan nama cluster GKE Anda.

        2. Buat node pool yang mendukung GPU untuk cluster Anda dengan menjalankan perintah berikut:

          gcloud container node-pools create gpu-node-pool \
              --cluster=CLUSTER_NAME \
              --location=$GOOGLE_CLOUD_REGION \
              --machine-type=g2-standard-8 \
              --accelerator=type=nvidia-l4,count=1 \
              --enable-gvnic
          

          File deploy-llm.yaml menentukan GPU nvidia-l4, yang tersedia di seri mesin G2. Untuk mengetahui informasi selengkapnya tentang jenis mesin ini, lihat Jenis mesin GPU dalam dokumentasi Compute Engine.

      2. Buat repositori Artifact Registry: Buat repositori Artifact Registry untuk menyimpan dan mengelola image container Docker agen Anda secara aman.

        gcloud artifacts repositories create REPO_NAME \
            --repository-format=docker \
            --location=$GOOGLE_CLOUD_REGION
        

        Ganti REPO_NAME dengan nama repositori Artifact Registry yang ingin Anda gunakan (misalnya, adk-repo).

      3. Dapatkan URL repositori: Untuk memverifikasi jalur lengkap ke repositori Anda, jalankan perintah ini. Anda akan menggunakan format ini untuk memberi tag pada image Docker saat membangun image agen.

        gcloud artifacts repositories describe REPO_NAME \
            --location $GOOGLE_CLOUD_REGION
        

      Terraform

      Bagian ini menjelaskan cara menggunakan konfigurasi Terraform yang disertakan dalam repositori contoh untuk menyediakan resource Google Cloud Anda secara otomatis.

      1. Buka direktori Terraform: Direktori \terraform berisi semua file konfigurasi yang diperlukan untuk membuat cluster GKE dan resource lain yang diperlukan.

        cd terraform
        
      2. Buat file variabel Terraform: Salin contoh file variabel (example_vars.tfvars) yang disediakan untuk membuat file vars.tfvars Anda sendiri.

        cp example_vars.tfvars vars.tfvars
        

        Buka file vars.tfvars di editor dan ganti nilai placeholder dengan konfigurasi spesifik Anda. Minimal, Anda harus mengganti PROJECT_ID dengan ID project Google Cloud Anda dan CLUSTER_NAME dengan nama cluster GKE Anda.

      3. Lakukan inisialisasi Terraform: Untuk mendownload plugin penyedia yang diperlukan untuk Google Cloud, jalankan perintah ini.

        terraform init
        
      4. Tinjau rencana eksekusi: Perintah ini menunjukkan perubahan infrastruktur yang akan dilakukan Terraform.

        terraform plan -var-file=vars.tfvars
        
      5. Terapkan konfigurasi: Untuk membuat resource di project Google Cloud , jalankan rencana Terraform. Konfirmasi dengan yes saat diminta.

        terraform apply -var-file=vars.tfvars
        

      Setelah Anda menjalankan perintah ini, Terraform akan menyediakan cluster GKE dan repositori Artifact Registry, serta mengonfigurasi peran dan akun layanan IAM yang diperlukan, termasuk Federasi Workload Identity untuk GKE.

      Untuk mempelajari lebih lanjut cara menggunakan Terraform, lihat Menyediakan resource GKE dengan Terraform.

      Konfigurasi kubectl untuk berkomunikasi dengan cluster Anda

      Untuk mengonfigurasi kubectl agar dapat berkomunikasi dengan cluster Anda, jalankan perintah berikut:

      gcloud container clusters get-credentials CLUSTER_NAME \
          --location=${GOOGLE_CLOUD_REGION}
      

      Ganti CLUSTER_NAME dengan nama cluster GKE Anda.

      Membangun image agen

      Setelah Anda membuat infrastruktur menggunakan gcloud CLI atau Terraform, ikuti langkah-langkah berikut untuk membangun aplikasi agen Anda.

      1. Berikan peran IAM yang diperlukan untuk Cloud Build: Layanan Cloud Build memerlukan izin untuk mengirim image container agen ke Artifact Registry. Berikan peran roles/artifactregistry.writer ke akun layanan default Compute Engine, yang digunakan oleh Cloud Build.

        1. Buat email untuk akun layanan default Compute Engine:

          export PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format="value(projectNumber)")
          export COMPUTE_SA_EMAIL=${PROJECT_NUMBER}-compute@developer.gserviceaccount.com
          
        2. Berikan peran roles/artifactregistry.writer ke akun layanan:

          gcloud projects add-iam-policy-binding $PROJECT_ID \
              --member=serviceAccount:${COMPUTE_SA_EMAIL} \
              --role=roles/artifactregistry.writer
          
      2. Bangun dan kirim image container agen: Dari direktori root project (adk/llama/vllm), bangun image Docker Anda dan kirim ke Artifact Registry dengan menjalankan perintah berikut.

        export IMAGE_URL="${GOOGLE_CLOUD_REGION}-docker.pkg.dev/${PROJECT_ID}/REPO_NAME/adk-agent:latest"
        gcloud builds submit --tag $IMAGE_URL
        
      3. Verifikasi bahwa image telah dikirim: Setelah proses build berhasil diselesaikan, verifikasi bahwa image container agen Anda telah dikirim ke Artifact Registry dengan mencantumkan image di repositori Anda.

        gcloud artifacts docker images list ${GOOGLE_CLOUD_REGION}-docker.pkg.dev/${PROJECT_ID}/REPO_NAME
        

        Anda akan melihat output yang mencantumkan gambar yang baru saja Anda kirim dan diberi tag sebagai latest.

      Men-deploy model

      Setelah menyiapkan cluster GKE dan membuat image agen, langkah berikutnya adalah men-deploy model Llama 3.1 yang dihosting sendiri ke cluster Anda. Untuk melakukannya, deploy server inferensi vLLM yang telah dikonfigurasi sebelumnya yang menarik model dari Hugging Face dan menyajikannya secara internal dalam cluster.

      1. Buat secret Kubernetes untuk kredensial Hugging Face: Untuk mengizinkan cluster GKE mendownload model Llama 3.1 yang dibatasi, Anda harus memberikan token Hugging Face sebagai secret Kubernetes. Manifes deploy-llm.yaml dikonfigurasi untuk menggunakan rahasia ini untuk autentikasi.

        kubectl create secret generic hf-secret \
            --from-literal=hf-token-secret=HUGGING_FACE_TOKEN
        

        Ganti HUGGING_FACE_TOKEN dengan token Anda.

      2. Lihat manifes: Dari direktori root project (adk/llama/vllm), buka direktori /deploy-llm yang berisi manifes Deployment model.

        cd deploy-llm
        
      3. Terapkan manifes: Jalankan perintah berikut untuk menerapkan manifes deploy-llm.yaml ke cluster Anda.

        kubectl apply -f deploy-llm.yaml
        

        Perintah ini akan membuat tiga resource Kubernetes:

        • Deployment yang menjalankan server vLLM, yang dikonfigurasi untuk menggunakan model meta-llama/Llama-3.1-8B-Instruct.
        • Layanan bernama vllm-llama3-service yang mengekspos server vLLM di alamat IP cluster internal, sehingga memungkinkan agen ADK berkomunikasi dengannya.
        • ConfigMap yang berisi template chat Jinja yang diperlukan oleh model Llama 3.1.
      4. Verifikasi Deployment model: Server vLLM menarik file model dari Hugging Face. Proses ini dapat memerlukan waktu beberapa menit. Anda dapat memantau status Pod untuk memastikan kesiapannya.

        1. Tunggu hingga Deployment tersedia.

          kubectl wait --for=condition=available --timeout=600s deployment/vllm-llama3-deployment
          
        2. Lihat log dari Pod yang sedang berjalan untuk mengonfirmasi bahwa server berhasil dimulai.

          export LLM_POD=$(kubectl get pods -l app=vllm-llama3 -o jsonpath='{.items[0].metadata.name}')
          kubectl logs -f $LLM_POD
          

          Deployment siap saat Anda melihat output log yang mirip dengan berikut ini, yang menunjukkan bahwa server LLM telah dimulai dan rute API tersedia:

          INFO 07-16 14:15:16 api_server.py:129] Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)
          
        3. Kirim permintaan langsung ke server model untuk mengonfirmasi bahwa LLM sudah siap. Untuk melakukannya, buka terminal Cloud Shell baru dan jalankan perintah berikut untuk meneruskan vllm-llama3-service ke komputer lokal Anda:

          kubectl port-forward service/vllm-llama3-service 8000:8000
          
        4. Di terminal lain, kirim permintaan sampel ke endpoint API model menggunakan curl. Contoh:

          curl -X POST http://localhost:8000/v1/completions \
            -H "Content-Type: application/json" \
            -d '{
              "model": "meta-llama/Llama-3.1-8B-Instruct",
              "prompt": "Hello!",
              "max_tokens": 10
            }'
          

          Jika perintah menampilkan respons JSON yang berhasil, LLM Anda sudah siap. Anda kini dapat menghentikan proses penerusan port dengan kembali ke jendela terminalnya dan menekan Ctrl+C, lalu melanjutkan untuk men-deploy agen.

      Men-deploy aplikasi agen

      Langkah berikutnya adalah men-deploy aplikasi agen berbasis ADK.

      1. Buka direktori /deploy-agent: Dari direktori root project Anda (adk/llama/vllm), buka direktori /deploy-agent yang berisi kode sumber dan manifes deployment agen.

        cd ../deploy-agent
        
      2. Perbarui manifes deployment agen:

        1. File manifes deploy-agent.yaml sampel berisi placeholder untuk project ID Anda di URL image container. Anda harus mengganti placeholder dengan project ID Google Cloud Anda.

          image: us-central1-docker.pkg.dev/PROJECT_ID/adk-repo/adk-agent:latest
          

          Untuk melakukan penggantian ini di tempat, Anda dapat menjalankan perintah berikut:

          sed -i "s/<PROJECT_ID>/$PROJECT_ID/g" deploy-agent.yaml
          
        2. Pastikan jalur readinessProbe disetel ke /, bukan /dev-ui. Untuk melakukan penggantian ini di tempat, Anda dapat menjalankan perintah berikut:

          sed -i "s|path: /dev-ui/|path: /|g" deploy-agent.yaml
          
      3. Terapkan manifes: Jalankan perintah berikut untuk menerapkan manifes deploy-agent.yaml ke cluster Anda.

        kubectl apply -f deploy-agent.yaml
        

        Perintah ini akan membuat dua resource Kubernetes:

        • Deployment bernama adk-agent yang menjalankan image container agen buatan kustom Anda.
        • Layanan bernama adk-agent jenis NodePort yang mengekspos aplikasi agen sehingga dapat diakses untuk pengujian.
      4. Verifikasi deployment agen: Periksa status Pod untuk memastikan Pod berjalan dengan benar.

        1. Tunggu hingga Deployment tersedia:

          kubectl wait --for=condition=available --timeout=300s deployment/adk-agent
          
        2. Lihat log dari Pod agen yang sedang berjalan:

          export AGENT_POD=$(kubectl get pods -l app=adk-agent -o jsonpath='{.items[0].metadata.name}')
          kubectl logs -f $AGENT_POD
          

      Deployment berhasil jika Anda melihat output log yang mirip dengan berikut, yang menunjukkan bahwa server Uvicorn sedang berjalan dan siap menerima permintaan:

      INFO:     Uvicorn running on http://0.0.0.0:8001 (Press CTRL+C to quit)
      

      Menguji agen yang di-deploy

      Setelah berhasil men-deploy server vLLM dan aplikasi agen, Anda dapat menguji fungsi end-to-end dengan berinteraksi dengan UI web agen.

      1. Teruskan layanan agen ke komputer lokal Anda: Layanan adk-agent berjenis NodePort, tetapi cara paling langsung untuk mengaksesnya dari lingkungan Cloud Shell Anda adalah dengan menggunakan perintah kubectl port-forward. Buat tunnel yang aman ke Pod agen dengan menjalankan perintah ini.

        kubectl port-forward $AGENT_POD 8001:8001
        
      2. Akses UI web agen: Di Cloud Shell, klik tombol Web Preview, lalu pilih Preview on port 8001. Tab browser baru akan terbuka dan menampilkan antarmuka chat agen.

      3. Berinteraksi dengan agen: Ajukan pertanyaan kepada agen yang akan memanggil alat get_weather-nya. Contoh:

        What's the weather like in Tokyo?
        

        Agen akan terlebih dahulu memanggil LLM untuk memahami maksud dan mengidentifikasi kebutuhan untuk menggunakan alat get_weather. Kemudian, alat ini akan menjalankan "Tokyo" sebagai parameter. Terakhir, output alat akan digunakan untuk membuat respons. Anda akan melihat respons seperti berikut:

          The weather in Tokyo is 25°C and sunny.
        
      4. (Opsional) Verifikasi panggilan alat dalam log: Anda dapat mengamati interaksi agen dengan LLM dan eksekusi alat dengan melihat log Pod yang relevan.

        1. Log Pod agen: Di terminal baru, lihat log Pod adk-agent. Anda akan melihat panggilan alat dan hasilnya.

          kubectl logs -f $AGENT_POD
          

          Output menunjukkan alat yang dipanggil dan hasil yang diproses.

        2. Log Pod LLM: Lihat log Pod vllm-llama3-deployment untuk melihat permintaan masuk dari agen.

          kubectl logs -f $LLM_POD
          

          Log menampilkan perintah lengkap yang dikirim oleh agen ke LLM, termasuk pesan sistem, kueri Anda, dan definisi alat get_weather.

      Setelah selesai menguji, Anda dapat menghentikan proses port-forward dengan kembali ke jendela terminalnya dan menekan Ctrl+C.

      Pembersihan

      Agar tidak perlu membayar biaya pada akun Google Cloud Anda untuk resource yang digunakan dalam tutorial ini, hapus project yang berisi resource tersebut, atau simpan project dan hapus setiap resource.

      Menghapus resource yang di-deploy

      Agar tidak menimbulkan biaya pada akun Google Cloud Anda untuk resource yang Anda buat dalam tutorial ini, jalankan perintah berikut:

      gcloud

      Jika Anda menggunakan gcloud CLI untuk membuat resource, jalankan perintah berikut untuk menghapus cluster GKE dan repositori Artifact Registry, serta mengembalikan izin akun layanan ke kondisi semula.

      gcloud container clusters delete CLUSTER_NAME \
          --location=$GOOGLE_CLOUD_REGION
      
      gcloud artifacts repositories delete REPO_NAME \
          --location=$GOOGLE_CLOUD_REGION
      
      gcloud projects remove-iam-policy-binding $PROJECT_ID \
          --member=serviceAccount:${COMPUTE_SA_EMAIL} \
          --role=roles/artifactregistry.writer
      

      Terraform

      Jika Anda menggunakan Terraform untuk menyediakan infrastruktur, Anda dapat menghancurkan semua resource dengan menjalankan satu perintah dari dalam direktori /terraform.

      1. Dari direktori root project Anda (adk/llama/vllm), buka direktori /terraform:

        cd terraform
        
      2. Jalankan perintah ini untuk menghapus semua resource yang ditentukan dalam file konfigurasi Terraform Anda:

        terraform destroy
        

      Langkah berikutnya

      • Pelajari cara mengonfigurasi Horizontal Pod Autoscaler (HPA) untuk menyesuaikan resource agen Anda secara otomatis sesuai permintaan.
      • Pelajari cara mengonfigurasi Identity-Aware Proxy (IAP) untuk aplikasi web yang berjalan di Google Cloud, yang menyediakan otorisasi terpusat untuk akses ke UI agen Anda.
      • Pelajari cara menggunakan Cloud Logging dan Cloud Monitoring untuk mendapatkan insight tentang performa dan kondisi agen Anda dalam cluster GKE.
      • Jelajahi contoh eksperimental di GKE AI Labs yang dapat membantu Anda menggunakan GKE untuk mempercepat inisiatif AI agentic Anda.