Pemimpin pemikiran

Teknologi Sendiri Tidak Menjamin Adopsi: Pelajaran dari Membangun Chatbot AI Internal

mm
Tambahkan Unite.AI ke sumber pilihan Anda di Google

Saat adopsi AI dipercepat di seluruh industri, mengirimkan chatbot untuk mendukung aplikasi internal yang baru diluncurkan tampak seperti keputusan yang logis. Namun, aplikasi itu sendiri menantang ekspektasi pengguna yang konvensional. Ini memperkenalkan alur kerja baru yang dibangun pada teknologi yang belum familiar bagi sebagian besar pengguna.

Untuk mengurangi friksi dan meningkatkan adopsi, chatbot dirancang untuk menjawab pertanyaan tentang aplikasi dan teknologi yang mendasarinya. Tujuannya adalah membantu pengguna memahami tidak hanya apa yang harus dilakukan, tetapi juga mengapa sistem berperilaku dengan cara tertentu. Kami percaya bahwa menyediakan penjelasan kontekstual akan mempercepat pembelajaran dan mengurangi kebingungan.

Sejak awal, agen AI dirancang sebagai solusi dengan cakupan terbatas. Ini dirancang secara ketat untuk mendukung dokumentasi dan memberikan bantuan pengguna. Konsepnya, chatbot dimaksudkan untuk berfungsi sebagai pengganti dinamis untuk dokumen Pertanyaan yang Sering Diajukan tradisional, menawarkan antarmuka konversasional, dapat dicari, dan tersedia terus-menerus dengan fungsionalitas yang lebih luas daripada konten statis.

Untuk mengintegrasikan agen ke dalam lingkungan chat internal organisasi, kami perlu memahami bagaimana pesan terstruktur dirender, bagaimana riwayat percakapan disimpan, dan bagaimana sistem mengidentifikasi peserta dalam thread. Ini memungkinkan kami untuk menentukan variabel inti yang diperlukan untuk memulai pemrosesan pertanyaan pengguna.

Mengarahkan Model: Dari Halusinasi ke Konteks yang Dapat Diandalkan

Model bahasa besar sangat kuat, tetapi tanpa penjangan kontekstual, mereka rentan terhadap halusinasi. Untuk mengatasi ini, kami mengimplementasikan teknik vector embedding.

Panduan pengguna, dokumentasi internal, dan visi produk diubah menjadi representasi vektor numerik dari teks. Embedding ini menangkap makna semantik, memungkinkan sistem untuk mencocokkan konsep daripada mengandalkan pencocokan kata kunci sederhana.

Ketika pengguna mengajukan pertanyaan, sistem mengubah kueri menjadi representasi vektor dan membandingkannya dengan embedding yang disimpan. Ini mengambil dokumen yang paling relevan secara semantik dan menyuntikkan mereka ke dalam prompt model. Model kemudian menghasilkan respons yang didasarkan pada dokumen spesifik tersebut, sering kali merangkum informasi yang relevan.

Pendekatan ini secara signifikan meningkatkan akurasi respons. Alih-alih menghasilkan jawaban berdasarkan pengetahuan umum, model merespons menggunakan dokumentasi organisasi kami sendiri sebagai konteks.

Kompleksitas Tersembunyi dari Manajemen Konteks

Sangat penting untuk menyertakan riwayat percakapan dalam prompt sehingga bot dapat menafsirkan pertanyaan lanjutan dan mempertahankan kontinuitas. Tanpa riwayat, interaksi menjadi terfragmentasi dan berulang. Pengguna sering menghaluskan pertanyaan mereka secara bertahap, dan tanpa konteks, bot tidak dapat menafsirkan referensi seperti “opsi itu” atau “langkah sebelumnya.”

Namun, menyertakan terlalu banyak riwayat menciptakan masalah yang berbeda: batas token. Ini terjadi ketika model bahasa memotong input yang melebihi jendela konteks maksimum. Jika pertanyaan atau percakapan menjadi terlalu panjang, informasi penting bisa hilang. Ini tidak menghasilkan kesalahan eksplisit, tetapi respons kualitas yang menurun atau akurasi pengambilan yang terpengaruh.

Untuk mengatasi ini, kami mengimplementasikan strategi untuk mengontrol ukuran prompt, memprioritaskan konten yang relevan, dan memantau panjang pertanyaan. Kami bereksperimen dengan merangkum pesan lama dan menyertakan hanya bagian paling relevan dari percakapan. Konteks sangat penting tetapi harus dikelola dengan hati-hati.

Mengembangkan Kemampuan dan Menciptakan Kebingungan

Di luar menjawab pertanyaan berdasarkan dokumentasi, kami memperluas kemampuan bot dengan menambahkan fungsi backend yang dapat mengekstrak informasi publik tertentu langsung dari aplikasi. Ini memungkinkan pengguna untuk mengambil data dari chat tanpa harus masuk ke aplikasi itu sendiri. Ide ini adalah untuk mengurangi friksi dan memperkuat chatbot sebagai antarmuka yang berguna, bukan hanya lapisan pengetahuan statis.

Namun, perluasan ini menciptakan kebingungan bagi beberapa pengguna. Setelah bot mulai mengambil data langsung, pengguna mulai meminta bot untuk melakukan tindakan yang memerlukan interaksi langsung di dalam platform. Mereka menganggap chatbot dapat menggantikan langkah operasional, termasuk yang memerlukan autentikasi atau eksekusi sengaja di dalam platform.

Bot tidak pernah dirancang untuk melakukan tindakan tersebut, tetapi perbedaan antara bantuan informasional dan eksekusi operasional tidak selalu jelas.

Mengintegrasikan data langsung juga memperkenalkan pertimbangan teknis baru. Kami perlu mendefinisikan kapan pertanyaan harus melalui pengambilan berbasis embedding dan kapan harus memicu panggilan backend. Logika keputusan ini memerlukan desain yang hati-hati. Selain itu, kami harus menyetel respons untuk menangani pengecualian teknis dengan elegan dan menghindari memaparkan kesalahan sistem mentah kepada pengguna.

Kemampuan Multibahasa Bukan Otomatis

Selama pengujian, kami menyadari bahwa bot konsisten berperforma lebih baik dalam bahasa Inggris daripada bahasa lain yang digunakan dalam Jalasoft. Alasan utamanya adalah struktural: sebagian besar dokumentasi yang digunakan untuk menghasilkan embedding ditulis dalam bahasa Inggris, dan model embedding yang kami pilih dioptimalkan untuk kesamaan semantik bahasa Inggris.

Ini tidak mendukung pengambilan lintas bahasa atau perbandingan semantik di seluruh bahasa. Sebagai hasilnya, kueri non-Inggris sering mengambil dokumentasi yang kurang relevan, mengarah ke respons yang lebih lemah.

Hal ini menyoroti wawasan penting: kemampuan multibahasa bukanlah otomatis.

Ketika Ekspektasi Meluas di Luar Cakupan

Untuk mengontrol biaya penggunaan, kami mengimplementasikan batas harian pada jumlah pertanyaan yang dapat diajukan pengguna. Namun, kami tidak secara eksplisit membatasi cakupan pertanyaan tersebut. Pengguna bebas untuk bertanya apa saja.

Keterbukaan ini mengarah pada pola penggunaan yang tidak terduga. Beberapa pengguna mulai berinteraksi dengan bot untuk tujuan pribadi atau eksploratif yang tidak terkait dengan aplikasi. Seiring waktu, ekspektasi tumbuh melampaui peran bot yang dimaksud, menciptakan kesenjangan antara apa yang diharapkan pengguna dan apa yang didukung oleh bot.

Kesenjangan ini secara bertahap mengurangi kegunaan yang dirasakan. Penggunaan menurun, dan chatbot akhirnya dihapus, dengan upaya diarahkan untuk merancang ulang aplikasi itu sendiri untuk membuatnya lebih intuitif dan lebih mudah digunakan.

Pelajaran Sebenarnya: Desain Interaksi.

Dari sudut pandang teknik, sistem bekerja dengan cukup baik. Ini mengambil dokumentasi, menggabungkan riwayat percakapan, mengurangi halusinasi melalui embedding, menangani panggilan backend, dan mengelola ukuran prompt. Arsitektur berfungsi sebagaimana dimaksud.

Namun, ini kurang memiliki desain interaksi yang disengaja.

Bot tidak secara konsisten membentuk percakapan. Ini tidak secara konsisten memperkuat cakupannya. Ini tidak membimbing pengguna dengan contoh terstruktur tentang apa yang bisa dan tidak bisa dilakukan. Ini menjawab pertanyaan, tetapi tidak menetapkan ekspektasi.

Kami belajar bahwa sistem AI konversasional memerlukan lebih dari model yang kuat dan data terstruktur. Mereka memerlukan ekspektasi yang dirancang dengan hati-hati. Pengguna memerlukan kejelasan tentang peran agen, batasannya, dan kekuatannya. Sistem harus proaktif menyediakan contoh prompt, memperjelas keterbatasan, dan mengalihkan pertanyaan yang tidak termasuk cakupan secara konsisten.

Tanpa kerangka ini, bahkan implementasi yang teknisnya solid dapat bergelut untuk mempertahankan nilai. Pengguna mungkin mengoverestimasi kemampuan atau tidak terlibat ketika ekspektasi yang tidak dinyatakan tidak terpenuhi.

Intinya sederhana tetapi kuat.

Membangun AI Konversasional Bukan Hanya Tantangan Teknis. Ini Juga Tantangan Desain Interaksi.

Konteks yang kuat, pengambilan yang akurat, dan arsitektur yang kuat diperlukan, tetapi tidak cukup. Efektivitas sistem bergantung sama-sama pada bagaimana sistem mendefinisikan perannya, mengkomunikasikan batasannya, dan membentuk ekspektasi pengguna.

Teknologi sendiri tidak menjamin adopsi. Desain interaksi yang jelas melakukannya.

Angie Navia adalah Pengembang Full-Stack di Jalasoft dengan lima tahun pengalaman membangun aplikasi produksi dan mengintegrasikan kemampuan AI ke dalam solusi perangkat lunak. Dia menyelesaikan Spesialisasi IBM Generative AI untuk Pengembang Perangkat Lunak dan menerapkan alat AI dalam alur kerja pengembangan sehari-harinya.