Aturan pengalihan

Anda dapat menggunakan aturan peralihan untuk mengontrol transfer secara deterministik antara agen induk dan turunan dalam aplikasi multi-agen. Anda dapat mengontrol transfer ini dengan menentukan kondisi untuk transfer. Anda dapat memaksa transfer segera saat kondisi terpenuhi, atau memblokir transfer hingga kondisi terpenuhi.

Misalnya, Agen A mentransfer ke Agen B saat pengguna diautentikasi atau ke Agen C saat pengguna tidak diautentikasi.

Anda dapat mencapai kontrol serupa atas transfer agen menggunakan petunjuk, tetapi kontrol tersebut tidak deterministik. Anda juga dapat menggunakan callback, tetapi callback memerlukan penulisan kode.

Contoh kasus penggunaan:

  • Penyerahan ke depan (agen ke subagen)
    • Merutekan pengguna yang diautentikasi atau tidak diautentikasi ke agen yang berbeda
    • Memahami maksud pengguna dan mengarahkan ke agen yang tepat
    • Mengarahkan permintaan penting (misalnya, transfer keuangan, penanganan PII) ke agen tertentu
  • Penyerahan mundur (sub-agen ke agen)
    • Mencoba lagi upaya autentikasi yang gagal
    • Kembali ke langkah sebelumnya untuk mengumpulkan informasi tambahan
    • Kualifikasi ulang setelah perubahan persyaratan pengguna
    • Proses pemecahan masalah iteratif

Konfigurasi

Untuk mengonfigurasi aturan pengalihan dari pembuat agen:

  1. Klik tombol + di bagian node agen.
  2. Pilih Tambahkan aturan pengalihan. Panel konfigurasi Aturan pengalihan akan terbuka, dan agen turunan akan tercantum.
  3. Pilih agen turunan. Panel konfigurasi aturan akan terbuka.
  4. Pilih arah pengalihan (ke akun induk atau ke akun anak).
  5. Anda dapat menggunakan antarmuka untuk menentukan kondisi berdasarkan variabel, atau Anda dapat menggunakan opsi kode lanjutan.
  6. Klik Simpan.

Jika Anda memilih opsi kode lanjutan, berikut contohnya:

def should_trigger_transfer_callback(callback_context: CallbackContext) -> bool:
  # Access session variables using callback_context:
  # callback_context.variables['variable_name]
  return True

Batasan

Batasan berikut berlaku.

Saat membuat aturan yang menggunakan pemeriksaan variabel, Anda dapat menentukan beberapa kondisi (satu per variabel). Keduanya dapat ditautkan bersama menggunakan operator logika AND atau OR. Hanya satu operator (AND/OR) yang dapat dipilih untuk semua kondisi yang tercantum. Jika ingin menggabungkan operator logika dan mengelompokkan kondisi, Anda dapat menggunakan opsi kode Python atau menentukan kondisi menggunakan API.

Hanya jenis variabel teks, angka, dan boolean yang didukung untuk pemeriksaan variabel (jenis daftar dan objek kustom tidak didukung).

Saat menentukan aturan yang memblokir pengalihan, kondisi hanya dapat ditentukan menggunakan variabel (bukan kode).

Jika Anda membuat kondisi kompleks menggunakan API (menggunakan beberapa AND/OR, pengelompokan, dll.) maka aturan pengalihan akan muncul sebagai hanya baca di UI, dan hanya dapat diubah menggunakan API.