Merender respons agen untuk sumber data Looker

Panduan ini menjelaskan pendekatan yang direkomendasikan untuk merender output dari Conversational Analytics API di antarmuka pengguna (UI) menggunakan sumber data Looker.

Saat pengguna mengirimkan kueri ke API, respons dapat menyertakan langkah-langkah penalaran perantara selain jawaban akhir. Panduan ini menjelaskan cara merender respons API dengan tingkat detail yang berbeda dengan menerapkan tampilan jawaban utama dan tampilan detail lengkap:

  • Tampilan jawaban utama menampilkan jawaban atas pertanyaan pengguna secara langsung. Tampilan ini memberikan presentasi yang ringkas dan tidak menyertakan detail tentang alasan agen di awal.
  • Tampilan detail lengkap menampilkan proses penalaran lengkap yang diikuti agen untuk mencapai jawaban akhir, termasuk semua elemen dari tampilan jawaban utama.

Pola UI yang direkomendasikan adalah menampilkan tampilan jawaban utama secara default dan menyediakan kontrol UI, seperti tombol atau tombol geser, yang memungkinkan pengguna beralih ke tampilan detail lengkap. Meskipun detail penalaran berguna untuk memvalidasi logika, menampilkannya secara default dapat menambahkan detail yang tidak perlu bagi pengguna yang terutama tertarik dengan jawaban akhir.

Tampilan jawaban utama

Untuk merender hanya jawaban langsung akhir atas pertanyaan pengguna, ikuti langkah-langkah di bagian ini. Tampilan ini berfokus pada output akhir dan tidak menyertakan langkah-langkah perantara.

Panduan rendering pesan sistem

Tabel berikut menjelaskan pesan sistem yang dianggap sebagai jawaban langsung akhir, beserta rekomendasi cara merender pesan ini.

Pesan sistem Panduan rendering
DataQuery Dirender dengan hasil terkait. Tampilkan pesan ini hanya jika Anda menampilkan pesan DataResult yang sesuai.

Jangan merender pesan DataQuery dalam kasus berikut:
  • Kolom name dari pesan DataQuery diakhiri dengan _sample_values (misalnya, products_brand_sample_values).
  • Kolom name dari pesan DataResult yang sesuai berakhir dengan _sample_values.
  • Kolom data dalam pesan DataResult yang sesuai kosong.
Sebaiknya tempatkan teks kueri di dalam tombol untuk menampilkan kueri sumber sesuai permintaan. Misalnya, Analisis Percakapan di Looker menggunakan kontrol "Bagaimana cara menghitungnya?".
DataResult Tampilkan semua pesan DataResult, kecuali hasil perantara dan kosong.

Jangan merender pesan DataResult dalam kasus berikut:
  • Kolom name berakhir dalam _sample_values. Berikut adalah langkah-langkah perantara untuk mengambil nilai sampel untuk kolom tertentu.
  • Kolom data kosong. Hasil ini diringkas dalam respons TextMessage akhir.
ChartResult Merender semua diagram. Merender semua pesan ChartResult dalam respons API.
TextMessage Hanya berikan respons akhir. Tampilkan pesan TextMessage hanya jika nilai TextType adalah FINAL_RESPONSE.

Contoh: Merender tampilan jawaban utama

Anda dapat menerapkan tombol, seperti Tampilkan alasan, untuk memungkinkan pengguna beralih dari tampilan jawaban utama ke tampilan detail lengkap.

Tombol dengan label 'Tampilkan alasan' dalam status diciutkan.

Transkrip berikut menunjukkan tampilan jawaban utama. Untuk pesan DataQuery, sebaiknya sembunyikan detail kueri di balik tombol inline, yang ditunjukkan dalam transkrip oleh ikon yang diciutkan (), untuk memberikan akses opsional ke logika kueri yang mendasarinya.

Pengguna: Bandingkan total penjualan untuk Cymbal Group pada tahun 2022 dan 2023. Petakan hasilnya pada diagram.

Agen:

Berikut hasil kueri untuk Total Penjualan Grup Cymbal 2022 2023.

Tahun Pembuatan Total Penjualan
2023 $96.627,00
2022 $93.095,50

Total Penjualan Cymbal Group pada tahun 2022 dan 2023

Diagram batang yang membandingkan penjualan untuk tahun 2022 dan 2023.

Total penjualan Cymbal Group pada tahun 2022 adalah $93.095,50 dan pada tahun 2023 adalah $96.627,00.

Tabel berikut memetakan elemen dari interaksi contoh ke pesan sistem API yang sesuai.

Elemen Pesan sumber
Kueri yang dihasilkan (JSON disembunyikan di balik tombol secara default) DataQuery
Tabel data DataResult
Diagram batang ChartResult
Jawaban teks akhir TextMessage (FINAL_RESPONSE)

Tampilan detail lengkap

Gunakan panduan ini untuk merender proses penalaran lengkap. Tampilan ini mencakup semuanya mulai dari tampilan jawaban utama dan menampilkan konten serta langkah-langkah sesuai urutan pembuatannya oleh agen. Tampilan ini menampilkan semua langkah yang dilakukan agen untuk mencapai jawaban akhir, termasuk alasan dan data perantara.

Panduan rendering untuk penalaran dan pengambilan data terperinci

Tabel berikut menjelaskan pesan sistem yang merepresentasikan penalaran agen dan langkah-langkah pengambilan yang terperinci, beserta rekomendasi cara merender pesan ini.

Pesan sistem Panduan rendering
TextMessage dengan nilai TextType sebesar THOUGHT Merender langkah-langkah penalaran. Tampilkan pesan ini untuk menunjukkan proses berpikir internal agen. Pesan ini berisi dua bagian:
  • parts[0] adalah ringkasan pemikiran, yang secara singkat merangkum teks pemikiran lengkap
  • parts[1] adalah teks pemikiran lengkap
Jika aplikasi Anda menampilkan update status (seperti indikator pemuatan atau status progres), sebaiknya tampilkan ringkasan pemikiran (parts[0]) sebagai indikator status sementara.
TextMessage dengan nilai TextType sebesar PROGRESS Menampilkan PROGRESS pesan. Tampilkan pesan ini untuk memberikan insight tentang tindakan agen. Ini adalah pesan informasi tentang progres agen, seperti alat yang sedang dipanggil. Hal ini berbeda dengan proses pemikiran internal agen (THOUGHT) dan jawaban akhir kepada pengguna (FINAL_RESPONSE). Pesan ini berisi dua bagian:
  • parts[0] adalah ringkasan.
  • parts[1] adalah teks progres lengkap.
DataQuery dan DataResult dengan nama yang berakhiran _sample_values Menampilkan pesan DataQuery dan DataResult perantara. Pesan DataQuery dan DataResult dengan kolom name yang diakhiri dengan _sample_values adalah langkah-langkah perantara untuk pengambilan data terperinci dan tidak ditampilkan dalam tampilan jawaban utama. Sertakan langkah-langkah ini dalam tampilan jawaban lengkap (di balik tombol) untuk menunjukkan langkah-langkah yang dilakukan agen.
DataResult dengan kolom data kosong Hanya menampilkan pesan DataQuery terkait. Jangan menampilkan pesan DataResult dengan kolom data kosong dalam tampilan apa pun. Dalam tampilan detail lengkap, tampilkan pesan DataQuery yang menyebabkan hasil kosong (di balik tombol). Hal ini memungkinkan pengguna melihat kueri yang dijalankan meskipun kueri tersebut tidak menghasilkan hasil. Ringkasan jawaban akhir (TextMessage dengan jenis FINAL_RESPONSE) akan memberi tahu pengguna bahwa kueri tidak menampilkan data.

Contoh: Merender tampilan detail lengkap

Saat pengguna mengalihkan tombol Tampilkan alasan ke status yang diperluas, UI akan menampilkan alasan langkah demi langkah agen.

Tombol dengan label 'Tampilkan alasan' dalam status diperluas.

Transkrip berikut menunjukkan tampilan detail lengkap, termasuk langkah-langkah penalaran. Untuk pesan DataQuery, detail kueri dapat ditampilkan secara default, atau secara opsional di balik tombol inline yang ditunjukkan oleh ikon yang diperluas (), seperti yang ditunjukkan dalam transkrip.

Pengguna: Bandingkan total penjualan untuk Cymbal Group pada tahun 2022 dan 2023. Petakan hasilnya pada diagram.

Agen:

Memahami skema

Untuk membandingkan total penjualan 'Cymbal Group' pada tahun 2022 dan 2023, saya perlu membuat kueri pada Eksplorasi 'Item Pesanan'. Saya akan memfilter menurut nama produk 'Cymbal Group' dan menurut tahun 2022 dan 2023. Kemudian, saya akan mengambil kolom Total Sales dan Created Year.

Berikut hasil kueri untuk Total Penjualan Grup Cymbal 2022 2023.

[
 {"model":"thelook","view":"order_items","fields":["order_items.total_sale_price","order_items.created_year"],
 "filters":{"order_items.created_year":"2022,2023","products.brand":"Cymbal Group"}}
]
Tahun Pembuatan Total Penjualan
2023 $96.627,00
2022 $93.095,50

Membuat plot distribusi penjualan

Saya telah mengambil total penjualan untuk 'Cymbal Group' pada tahun 2022 dan 2023. Sekarang saya akan membuat diagram untuk memvisualisasikan perbandingan ini, lalu memberikan jawaban akhir.

Buat diagram batang yang membandingkan total penjualan 'Cymbal Group' pada tahun 2022 dan 2023. Sumbu x harus merepresentasikan tahun dan sumbu y harus merepresentasikan total penjualan.

Diagram batang yang membandingkan penjualan untuk tahun 2022 dan 2023.

Total penjualan Cymbal Group pada tahun 2022 adalah $93.095,50 dan pada tahun 2023 adalah $96.627,00.

Tabel berikut memetakan langkah-langkah dari interaksi contoh ke pesan sistem API yang sesuai.

Elemen Pesan sumber
"Memahami skema" (ringkasan pemikiran) TextMessage (jenis THOUGHT, parts[0])
"Untuk membandingkan total penjualan..." (teks pemikiran lengkap) TextMessage (jenis THOUGHT, parts[1])
Kueri yang dihasilkan (JSON ditampilkan saat tombol diperluas) DataQuery
Tabel data DataResult
"Memetakan distribusi penjualan" (ringkasan pemikiran) TextMessage (jenis THOUGHT, parts[0])
"Saya telah mengambil..." (teks pemikiran lengkap) TextMessage (jenis THOUGHT, parts[1])
Diagram batang ChartResult
Jawaban teks akhir TextMessage (FINAL_RESPONSE)