Ekspor/pemulihan GitHub

Agen Percakapan (Dialogflow CX) terintegrasi dengan GitHub. Integrasi ini memudahkan Anda untuk mengekspor agen ke JSON untuk dikirim ke GitHub, dan mengambil dari GitHub untuk pemulihan agen. Format JSON yang diekspor dan didorong ke GitHub adalah konten file zip yang diperluas dari agen yang diekspor.

Dengan menggunakan fitur ini, Anda dapat memanfaatkan fitur kontrol sumber GitHub seperti:

Batasan

Batasan berikut berlaku:

  • GitHub memiliki batas kapasitas untuk jumlah permintaan per jam (5.000 untuk akun non-enterprise, 15.000 untuk akun enterprise). Jika push agen Anda melebihi batas ini, konsol Dialogflow CX akan melaporkan error batas kapasitas. Anda dapat mencoba lagi pengiriman setelah satu jam.
  • GitHub API memiliki batasan jumlah file yang dapat diperbarui dalam satu commit. Jika jumlah file melebihi 500, Anda mungkin tidak dapat melakukan push ke GitHub dari Agen Percakapan (Dialogflow CX). Dalam kasus tersebut, Anda dapat mengekspor
    agen sebagai zip dan menggunakan Git CLI di komputer untuk mendorong file agen ke GitHub. Batasan ini akan diatasi dalam rilis Agen Percakapan (Dialogflow CX) selanjutnya.
  • Repositori yang dihosting sendiri dengan akses pribadi tidak didukung, karena Agen Percakapan (Dialogflow CX) tidak dapat mengakses repositori ini.
  • Repositori GitHub tidak boleh berisi file apa pun selain file agen yang diekspor oleh ekspor agen. File lain apa pun di repositori akan dihapus pada setiap push.

Konfigurasi

Untuk mengonfigurasi integrasi ini:

  1. Buka konsol Dialogflow CX.
  2. Pilih project Google Cloud Anda.
  3. Pilih agen Anda.
  4. Klik tab Kelola.
  5. Klik Git di bagian Pengujian & Deployment.
  6. Klik Tambahkan integrasi Git, dan dialog konfigurasi akan terbuka.
  7. Masukkan hal berikut:
    • Nama tampilan untuk koneksi GitHub.
    • URL repositori GitHub (misalnya: https://api.github.com/repos/<repository_owner>/<repository_name>).
    • Tambahkan cabang GitHub yang akan berinteraksi dengan agen Anda. Anda dapat menetapkan cabang sebagai cabang default dengan mengklik ikon bintang di sampingnya.
    • Token pribadi GitHub tidak dapat dilihat setelah ditetapkan, hanya pembaruan yang didukung. Jika menggunakan token akses pribadi terperinci, Anda memerlukan akses izin berikut:
      • Izin Repositori > Konten: Baca dan tulis
      • Repository Permissions > Metadata: Hanya baca (harus dipilih secara otomatis setelah memilih izin Konten)
  8. Klik Connect.

Konfigurasi ini dapat diubah kapan saja dengan mengklik ikon edit.

Mendorong dan memulihkan

Setelah dikonfigurasi, Anda dapat mendorong/menarik agen ke/dari GitHub.

Tombol Push digunakan untuk mengekspor agen Anda dan membuat commit ke cabang GitHub yang dipilih di dropdown cabang Git. Commit ini akan terdiri dari seluruh agen, bukan perubahan tertentu, dan akan menghapus file yang ada di repositori.

Untuk repositori baru, pastikan ada minimal satu commit dari GitHub sebelum menggunakan opsi push di konsol Dialogflow CX.

Pengguna dengan peran Dialogflow Reader memiliki kemampuan untuk melakukan push ke repositori GitHub. Untuk mencegah push yang tidak diinginkan, konfigurasikan agen ini dengan token akses pribadi hanya baca.

Tombol Restore digunakan untuk mengambil data agen dari cabang GitHub yang dipilih di drop-down cabang Git dan memulihkan agen Agen Percakapan (Dialogflow CX) dari data ini. Tindakan ini akan menimpa agen Anda dengan cara yang sama seperti perilaku pemulihan agen.

Contoh kasus penggunaan

Contoh berikut mengilustrasikan cara fitur ini dapat digunakan oleh beberapa orang untuk mengusulkan perubahan agen yang berbeda ke agen produksi.

Pertimbangkan bahwa agen Anda menggunakan cabang GitHub berikut:

  • Prod: cabang untuk agen produksi Anda
  • Dev1: cabang untuk pengembangan agen
  • Dev2: cabang lain untuk pengembangan agen

Pengguna 1 ingin mengusulkan perubahan agen dan melakukan langkah-langkah berikut:

  1. Mengekspor agen produksi ke agen baru.
  2. Buat perubahan yang diinginkan pada salinan agen ini.
  3. Uji perubahan.
  4. Kirim agen yang diubah ke cabang Dev1.
  5. Buat permintaan penggabungan ke cabang Prod.

Pengguna 2 ingin mengusulkan perubahan agen dan melakukan langkah-langkah berikut:

  1. Mengekspor agen produksi ke agen baru.
  2. Buat perubahan yang diinginkan pada salinan agen ini.
  3. Uji perubahan.
  4. Kirim agen yang diubah ke cabang Dev2.
  5. Buat permintaan penggabungan ke cabang Prod.

Pengguna 3 meninjau permintaan penggabungan dari kedua pengguna dan melakukan langkah-langkah berikut:

  1. Menyelesaikan konflik.
  2. Melakukan commit pada perubahan yang disetujui.
  3. Memulihkan cabang GitHub produksi ke agen Agen Percakapan (Dialogflow CX) produksi.