Petunjuk dan persyaratan penyiapan lab
Lindungi akun dan progres Anda. Selalu gunakan jendela browser pribadi dan kredensial lab untuk menjalankan lab ini.

Menghubungkan ke Agen Jarak Jauh dengan ADK dan SDK Agent2Agent (A2A)

Lab 1 jam universal_currency_alt 7 Kredit show_chart Advanced
info Lab ini mungkin menggabungkan alat AI untuk mendukung pembelajaran Anda.
Konten ini belum dioptimalkan untuk perangkat seluler.
Untuk pengalaman terbaik, kunjungi kami dengan komputer desktop menggunakan link yang dikirim melalui email.

GENAI120

Lab Mandiri Google Cloud

Protokol Agent2Agent (A2A) mengatasi tantangan penting dalam lanskap AI, yaitu memungkinkan agen AI Generatif, yang dibangun di beragam framework oleh berbagai perusahaan yang berjalan di server terpisah, untuk berkomunikasi dan berkolaborasi secara efektif—sebagai agen, bukan hanya sebagai alat. A2A bertujuan untuk menyediakan bahasa yang sama untuk agen, sehingga mendorong ekosistem AI yang lebih saling terhubung, bermanfaat, dan inovatif.

A2A dibangun berdasarkan beberapa konsep inti yang membuatnya efektif dan fleksibel:

  • Komunikasi Terstandardisasi: JSON-RPC 2.0 melalui HTTP(S).
  • Penemuan Agen: Kartu Agen memerinci informasi kapabilitas dan koneksi agen, sehingga agen dapat saling menemukan dan mempelajari kapabilitas masing-masing
  • Pertukaran Data Lengkap: Menangani teks, file, dan data JSON terstruktur.
  • Interaksi Fleksibel: Mendukung permintaan/respons sinkron, streaming (SSE), dan notifikasi push asinkron.
  • Siap Digunakan Perusahaan: Dirancang dengan mempertimbangkan keamanan, autentikasi, dan kemampuan observasi.

Tujuan

Di lab ini, Anda akan:

  • Men-deploy agen ADK sebagai Server A2A.
  • Menyiapkan Kartu Agen JSON untuk mendeskripsikan kapabilitas agen A2A.
  • Memungkinkan agen ADK lain membaca Kartu Agen dari agen A2A yang di-deploy dan menggunakannya sebagai sub-agen.

Penyiapan dan persyaratan

Sebelum mengklik tombol Start Lab (Mulai Lab)

Baca petunjuk ini. Lab memiliki timer dan Anda tidak dapat menjedanya. Timer, yang dimulai saat Anda mengklik Start Lab (Mulai Lab), menampilkan lamanya resource Cloud akan tersedia untuk Anda.

Lab praktis Qwiklabs ini memungkinkan Anda melakukan aktivitas lab sendiri di lingkungan cloud nyata, bukan di lingkungan demo atau simulasi. Yaitu dengan cara memberi Anda kredensial sementara yang baru yang digunakan untuk login dan mengakses Google Cloud Platform selama durasi lab.

Yang diperlukan

Untuk menyelesaikan lab ini, Anda memerlukan:

  • Akses ke browser internet standar (disarankan browser Chrome).
  • Waktu untuk menyelesaikan lab.

Catatan: Jika Anda sudah memiliki project atau akun GCP pribadi, jangan gunakan project atau akun tersebut untuk lab ini.

Cara memulai lab dan login ke Google Cloud Console

  1. Klik tombol Start Lab. Jika Anda perlu membayar lab, dialog akan terbuka untuk memilih metode pembayaran. Di sebelah kiri ada panel Lab Details yang berisi hal-hal berikut:

    • Tombol Open Google Cloud console
    • Waktu tersisa
    • Kredensial sementara yang harus Anda gunakan untuk lab ini
    • Informasi lain, jika diperlukan, untuk menyelesaikan lab ini
  2. Klik Open Google Cloud console (atau klik kanan dan pilih Open Link in Incognito Window jika Anda menjalankan browser Chrome).

    Lab akan menjalankan resource, lalu membuka tab lain yang menampilkan halaman Sign in.

    Tips: Atur tab di jendela terpisah secara berdampingan.

    Catatan: Jika Anda melihat dialog Choose an account, klik Use Another Account.
  3. Jika perlu, salin Username di bawah dan tempel ke dialog Sign in.

    {{{user_0.username | "Username"}}}

    Anda juga dapat menemukan Username di panel Lab Details.

  4. Klik Next.

  5. Salin Password di bawah dan tempel ke dialog Welcome.

    {{{user_0.password | "Password"}}}

    Anda juga dapat menemukan Password di panel Lab Details.

  6. Klik Next.

    Penting: Anda harus menggunakan kredensial yang diberikan lab. Jangan menggunakan kredensial akun Google Cloud Anda. Catatan: Menggunakan akun Google Cloud sendiri untuk lab ini dapat dikenai biaya tambahan.
  7. Klik halaman berikutnya:

    • Setujui persyaratan dan ketentuan.
    • Jangan tambahkan opsi pemulihan atau autentikasi 2 langkah (karena ini akun sementara).
    • Jangan mendaftar uji coba gratis.

Setelah beberapa saat, Konsol Google Cloud akan terbuka di tab ini.

Catatan: Untuk mengakses produk dan layanan Google Cloud, klik Navigation menu atau ketik nama layanan atau produk di kolom Search. Ikon Navigation menu dan kolom Search

Tugas 1. Menginstal ADK dan menyiapkan lingkungan Anda

Di lingkungan lab ini, Vertex AI API dan Cloud Run API sudah diaktifkan untuk Anda. Jika mengikuti langkah-langkah ini di project Anda sendiri, Anda dapat mengaktifkan keduanya dengan membuka Vertex AI dan mengikuti dialog untuk melakukannya.

Menyiapkan tab Cloud Shell Editor

  1. Di jendela Konsol Google Cloud yang aktif, buka Cloud Shell dengan menekan tombol G, lalu tombol S di keyboard Anda. Atau, Anda dapat mengklik tombol Activate Cloud Shell (Mengaktifkan Cloud Shell) di kanan atas Konsol Cloud.

  2. Klik Continue.

  3. Jika diminta untuk memberikan otorisasi pada Cloud Shell, klik Authorize.

  4. Di pojok kanan atas panel Cloud Shell Terminal, klik tombol Open in new window Tombol Open in new window.

  5. Di Cloud Shell Terminal, masukkan teks berikut untuk membuka Cloud Shell Editor ke direktori utama Anda:

    cloudshell workspace ~
  6. Tutup panel Gemini atau tutorial tambahan yang muncul di sisi kanan layar untuk meluangkan ruang jendela bagi editor kode Anda.

  7. Di sepanjang lab, Anda dapat memanfaatkan jendela ini sebagai IDE dengan Cloud Shell Editor dan Cloud Shell Terminal.

Mendownload dan menginstal ADK serta contoh kode untuk lab ini

  1. Instal ADK dengan menjalankan perintah berikut di Cloud Shell Terminal. Catatan: Anda akan menentukan versi untuk memastikan bahwa versi ADK yang Anda instal sesuai dengan versi yang digunakan di lab ini:

    # Menginstal ADK dan A2A Python SDK cd ~ export PATH=$PATH:"/home/${USER}/.local/bin" python3 -m pip install google-adk==1.8.0 a2a-sdk==0.2.16 pip install --upgrade google-genai # Mengoreksi kesalahan ketik pada versi ini sed -i 's/{a2a_option}"/{a2a_option} "/' ~/.local/lib/python3.12/site-packages/google/adk/cli/cli_deploy.py
  2. Tempel perintah berikut ke dalam Cloud Shell Terminal untuk menyalin kode lab dari bucket Cloud Storage dan mengekstraknya:

    gcloud storage cp gs://{{{project_0.project_id| YOUR_GCP_PROJECT_ID}}}-bucket/adk_and_a2a.zip ./adk_and_a2a.zip unzip adk_and_a2a.zip

    Klik Periksa progres saya untuk memverifikasi tujuan. Menginstal ADK dan menyiapkan lingkungan Anda.

Tugas 2. Mengeksplorasi agen ADK yang akan Anda sediakan dari jarak jauh

Untuk tujuan lab ini, anggaplah Anda bekerja di perusahaan pemeliharaan stadion: Cymbal Stadiums. Sebagai bagian dari project terbaru, Anda mengembangkan agen pembuatan gambar yang dapat membuat ilustrasi sesuai dengan pedoman merek Anda. Sekarang, beberapa tim berbeda di organisasi Anda juga ingin menggunakannya.

Jika menyalin kode untuk digunakan sebagai sub-agen oleh banyak agen, Anda akan sangat kesulitan untuk menjaga dan meningkatkan kualitas semua salinan tersebut.

Sebagai gantinya, Anda dapat men-deploy agen sekali sebagai agen yang digabungkan dengan server A2A, dan agen tim lain dapat mengintegrasikannya dengan membuat kueri dari jarak jauh.

  1. Di panel file explorer Cloud Shell Editor, buka direktori adk_and_a2a/illustration_agent. Direktori ini berisi agen ADK yang akan Anda sediakan dari jarak jauh. Klik direktori untuk membukanya.

  2. Buka file agent.py di direktori ini dan scroll ke bagian berlabel # Tools.

  3. Perhatikan fungsi generate_image(), yang akan digunakan sebagai alat oleh agen ini. Fungsi ini menerima perintah dan menjalankan proses dua langkah. Pertama, fungsi ini menggunakan Google Gen AI SDK untuk memanggil generate_content(), yang menampilkan data gambar mentah langsung dalam respons. Kedua, fungsi ini menggunakan library Cloud Storage untuk mengupload byte gambar tersebut ke bucket GCS. Terakhir, alat tersebut akan menampilkan URL publik untuk file gambar yang baru dibuat.

  4. Perhatikan bahwa instruction yang diberikan ke root_agent menghasilkan petunjuk spesifik bagi agen untuk menggunakan perintah pembuatan gambar yang mematuhi pedoman merek perusahaan. Misalnya, petunjuk ini menentukan:

    • gaya ilustrasi tertentu: (Corporate Memphis)
    • palet warna (ungu dan hijau di atas gradien matahari terbenam)
    • contoh gambar pemeliharaan dan stadion/aktivitas olahraga karena digunakan untuk perusahaan pemeliharaan stadion
  5. Untuk melihat cara kerjanya, Anda harus menulis file .env terlebih dahulu untuk menyetel variabel lingkungan yang diperlukan oleh agen ADK. Jalankan perintah berikut di Cloud Shell Terminal untuk menulis file ini di direktori ini.

    cd ~/adk_and_a2a cat << EOF > illustration_agent/.env GOOGLE_GENAI_USE_VERTEXAI=TRUE GOOGLE_CLOUD_PROJECT={{{project_0.project_id| YOUR_GCP_PROJECT_ID}}} GOOGLE_CLOUD_LOCATION=global MODEL={{{project_0.startup_script.gemini_flash_model_id | gemini_flash_model_id}}} IMAGE_MODEL={{{project_0.startup_script.gemini_flash_image_model_id | gemini_flash_image_model_id}}} EOF
  6. Jalankan perintah berikut untuk menyalin file .env tersebut ke direktori agen lain yang akan Anda gunakan di lab ini:

    cp illustration_agent/.env slide_content_agent/.env
  7. Sekarang dari Cloud Shell Terminal, luncurkan UI dev ADK dengan:

    adk web

    Output

    INFO: Started server process [2434] INFO: Waiting for application startup. +-------------------------------------------------------+ | ADK Web Server started | | | | For local testing, access at http://localhost:8000. | +-------------------------------------------------------+ INFO: Application startup complete. INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
  8. Untuk melihat antarmuka web di tab baru, klik link http://127.0.0.1:8000 di bagian bawah output Terminal.

  9. Tab browser baru akan terbuka dengan UI Dev ADK.

  10. Dari dropdown Select an agent di sebelah kiri, pilih illustration_agent dari dropdown.

  11. Buat kueri ke agen dengan beberapa teks yang dapat digunakan dalam presentasi slide rekrutmen:

    By supporting each other, we get big things done!
  12. Setelah sekitar 10 detik, agen akan merespons dengan perintah yang dibuatnya dan URL untuk melihat pratinjau gambar. Klik URL gambar untuk melihat pratinjau gambar, lalu klik Back di browser Anda untuk kembali ke UI Dev.

    Contoh Output

    Contoh respons dari model

    Contoh Gambar

    Gambar yang dihasilkan

  13. Perhatikan bahwa perintah yang Anda berikan ke agen tidak menyebutkan aktivitas olahraga, stadion, atau pekerjaan pemeliharaan, tetapi agen ini mengambil teks dan pedoman merek Anda, lalu menggabungkannya menjadi satu perintah untuk model pembuatan gambar.

    Setelah selesai mempelajari agen dasar, tutup tab browser.

  14. Klik panel Cloud Shell Terminal, lalu tekan CTRL + C untuk menghentikan server.

    Klik Periksa progres saya untuk memverifikasi tujuan. Mengeksplorasi agen ADK.

Tugas 3. Men-deploy agen sebagai Server A2A

Sekarang Anda akan melakukan langkah-langkah untuk men-deploy agen ini sebagai agen A2A jarak jauh.

  1. Agen A2A mengidentifikasi dirinya sendiri dan kapabilitasnya dengan menampilkan Kartu Agen. Jalankan perintah berikut untuk membuat file agent.json.

    touch illustration_agent/agent.json
  2. Buka file agent.json dalam direktori adk_and_a2a/illustration_agent dan tempelkan konten berikut:

    { "name": "illustration_agent", "description": "An agent designed to generate branded illustrations for Cymbal Stadiums.", "defaultInputModes": ["text/plain"], "defaultOutputModes": ["application/json"], "skills": [ { "id": "illustrate_text", "name": "Illustrate Text", "description": "Generate an illustration to illustrate the meaning of provided text.", "tags": ["illustration", "image generation"] } ], "url": "https://illustration-agent-{{{project_0.startup_script.project_number|Project Number}}}.{{{project_0.default_region| GCP_LOCATION}}}.run.app/a2a/illustration_agent", "capabilities": {}, "version": "1.0.0" }
  3. Simpan file dengan mengklik tombol Save.

  4. Tinjau JSON di file agent.json. Perhatikan bahwa konten tersebut memberi agen name dan description serta mengidentifikasi beberapa skills. Konten tersebut juga menunjukkan url untuk memanggil agen.

    URL agen dibuat menjadi URL layanan Cloud Run setelah Anda men-deploy-nya dengan mengikuti petunjuk di lab ini.

    Meskipun namanya mirip dengan skills, parameter capabilities di sini dicadangkan untuk menunjukkan kemampuan seperti streaming.

  5. Jalankan perintah berikut untuk membuat file requirements.txt di direktori illustration_agent.

    touch illustration_agent/requirements.txt
  6. Pilih file, lalu tempel teks berikut ke dalam file.

    google-adk==1.8.0 a2a-sdk==0.2.16
  7. Simpan file dengan mengklik tombol Save.

  8. Dalam perintah berikut, Anda akan menggunakan adk deploy cloud_run dengan flag --a2a untuk men-deploy agen Anda ke Cloud Run sebagai server A2A. Anda dapat mempelajari lebih lanjut cara men-deploy agen ke Cloud Run dengan menelusuri lab "Men-deploy agen ADK ke Cloud Run". Dalam perintah ini:

    • --project dan --region menentukan project serta region tempat layanan Cloud Run Anda akan di-deploy
    • --service_name menentukan nama untuk layanan Cloud Run
    • Flag --a2a menunjukkan bahwa agen Anda harus dihosting sebagai agen A2A. Artinya, ada dua hal:
      • agen Anda akan digabungkan oleh class yang menghubungkan ADK dan agen A2A: A2aAgentExecutor. Class ini menerjemahkan bahasa tugas dan pesan A2A Protocol ke bahasa peristiwa Runner ADK.
      • Kartu Agen juga akan dihosting di CLOUD_RUN_URL/a2a/AGENT_NAME/.well-known/agent.json. Catatan: Meskipun versi kartu ini dapat digunakan dalam waktu dekat, penulisan ulang dinamis URL agen saat ini tidak berfungsi dengan Cloud Run, jadi kita tidak akan menggunakannya dalam versi lab ini.

    Deploy agen ke Cloud Run sebagai server A2A dengan perintah berikut:

    adk deploy cloud_run \ --project {{{project_0.project_id| YOUR_GCP_PROJECT_ID}}} \ --region {{{project_0.default_region| GCP_LOCATION}}} \ --service_name illustration-agent \ --a2a \ illustration_agent
  9. Anda akan diminta untuk mengizinkan respons yang tidak diautentikasi untuk container ini. Untuk pengujian lab, masukkan Y ke dalam Cloud Shell Terminal (untuk "ya"), lalu tekan Return.

    Catatan: Deployment akan memerlukan waktu sekitar 5—10 menit. Jika Anda mengalami error PERMISSION_DENIED, coba jalankan kembali perintah di atas.

    Output yang diharapkan:

    Anda akan melihat langkah-langkah terkait proses membangun Dockerfile dan men-deploy container, lalu men-deploy layanan, yang diikuti dengan:

    Service [illustration-agent] revision [illustration-agent-00001-xpp] has been deployed and is serving 100 percent of traffic. Service URL: https://illustration-agent-{{{project_0.startup_script.project_number|Project Number}}}.{{{project_0.default_region| GCP_LOCATION}}}.run.app

    Klik Periksa progres saya untuk memverifikasi tujuan. Men-deploy Agen sebagai Server A2A.

Tugas 4. Memungkinkan agen ADK lain agar dapat memanggil agen ini dari jarak jauh

Di tugas ini, Anda akan memberi agen ADK kedua kemampuan untuk mengidentifikasi kapabilitas agen ilustrasi Anda dan memanggilnya dari jarak jauh. Agen kedua ini akan menjadi agen yang bertugas membuat konten untuk slide. Agen ini akan menulis judul dan beberapa kalimat teks isi, lalu mentransfernya ke agen ilustrasi untuk membuat gambar yang mengilustrasikan teks tersebut.

  1. Di Cloud Shell Terminal, jalankan perintah berikut untuk menyalin file JSON Kartu Agen ke direktori adk_and_a2a Anda dan mengubah namanya untuk menunjukkan bahwa file tersebut mewakili illustration_agent.

    cp illustration_agent/agent.json illustration-agent-card.json
  2. Di panel file explorer Cloud Shell Editor, buka adk_and_a2a/slide_content_agent, lalu buka file agent.py.

    Tinjau instruction agen ini untuk melihat apakah agen akan mempertimbangkan saran pengguna untuk membuat slide serta menulis teks judul & isi, lalu mentransfernya ke agen A2A Anda untuk mengilustrasikan slide.

  3. Tempel kode berikut di bawah header # Agents untuk menambahkan agen jarak jauh menggunakan class RemoteA2aAgent dari ADK:

    illustration_agent = RemoteA2aAgent( name="illustration_agent", description="Agent that generates illustrations.", agent_card=( "illustration-agent-card.json" ), )
  4. Tambahkan illustration_agent sebagai sub-agen root_agent dengan menambahkan parameter berikut ke root_agent:

    sub_agents=[illustration_agent]
  5. Simpan file dengan mengklik tombol Save.

  6. Luncurkan UI dari Cloud Shell Terminal dengan:

    cd ~/adk_and_a2a adk web
  7. Sekali lagi, klik link http://127.0.0.1:8000 di output Terminal.

  8. Tab browser baru akan terbuka dengan UI Dev ADK. Dari dropdown Select an agent di sebelah kiri, pilih slide_content_agent dari dropdown.

  9. Buat kueri ke agen dengan ide untuk slide:

    Create content for a slide about our excellent on-the-job training.

Anda akan melihat output berikut:

  • Judul dan teks isi yang ditulis oleh slide_content_agent itu sendiri
  • Panggilan ke transfer_to_agent, yang menunjukkan transfer ke illustration_agent
  • Respons dari illustration_agent dengan link yang dapat Anda klik untuk melihat gambar baru.
Agen menghasilkan teks, lalu melakukan transfer ke illustration_agent untuk menghasilkan gambar.

Gambar yang dihasilkan

Klik Periksa progres saya untuk memverifikasi tujuan. Memungkinkan agen ADK lain memanggil agen dari jarak jauh.

Selamat!

Di lab ini, Anda telah men-deploy agen ADK sebagai Server A2A, menyiapkan Kartu Agen JSON untuk mendeskripsikan kapabilitas agen A2A, dan memungkinkan agen ADK lain membaca Kartu Agen dari agen A2A yang di-deploy dan menggunakannya sebagai sub-agen

Sertifikasi dan pelatihan Google Cloud

...membantu Anda mengoptimalkan teknologi Google Cloud. Kelas kami mencakup keterampilan teknis dan praktik terbaik untuk membantu Anda memahami dengan cepat dan melanjutkan proses pembelajaran. Kami menawarkan pelatihan tingkat dasar hingga lanjutan dengan opsi on demand, live, dan virtual untuk menyesuaikan dengan jadwal Anda yang sibuk. Sertifikasi membantu Anda memvalidasi dan membuktikan keterampilan serta keahlian Anda dalam teknologi Google Cloud.

Manual Terakhir Diperbarui pada 6 Oktober 2025

Lab Terakhir Diuji pada 6 Oktober 2025

Hak cipta 2020 Google LLC Semua hak dilindungi undang-undang. Google dan logo Google adalah merek dagang dari Google LLC. Semua nama perusahaan dan produk lain mungkin adalah merek dagang masing-masing perusahaan yang bersangkutan.

Sebelum memulai

  1. Lab membuat project dan resource Google Cloud untuk jangka waktu tertentu
  2. Lab memiliki batas waktu dan tidak memiliki fitur jeda. Jika lab diakhiri, Anda harus memulainya lagi dari awal.
  3. Di kiri atas layar, klik Start lab untuk memulai

Gunakan penjelajahan rahasia

  1. Salin Nama Pengguna dan Sandi yang diberikan untuk lab tersebut
  2. Klik Open console dalam mode pribadi

Login ke Konsol

  1. Login menggunakan kredensial lab Anda. Menggunakan kredensial lain mungkin menyebabkan error atau dikenai biaya.
  2. Setujui persyaratan, dan lewati halaman resource pemulihan
  3. Jangan klik End lab kecuali jika Anda sudah menyelesaikan lab atau ingin mengulanginya, karena tindakan ini akan menghapus pekerjaan Anda dan menghapus project

Konten ini tidak tersedia untuk saat ini

Kami akan memberi tahu Anda melalui email saat konten tersedia

Bagus!

Kami akan menghubungi Anda melalui email saat konten tersedia

Satu lab dalam satu waktu

Konfirmasi untuk mengakhiri semua lab yang ada dan memulai lab ini

Gunakan penjelajahan rahasia untuk menjalankan lab

Gunakan jendela Samaran atau browser pribadi untuk menjalankan lab ini. Langkah ini akan mencegah konflik antara akun pribadi Anda dan akun Siswa yang dapat menyebabkan tagihan ekstra pada akun pribadi Anda.