Dalam artikel ini, saya akan menjelaskan langkah demi langkah cara menggunakan Flowise untuk membangun agen AI yang dapat menjawab pertanyaan berdasarkan dataset CSV.
Flowise adalah alat yang praktis bagi siapa pun yang ingin membangun agen AI tanpa terjebak dalam pengkodean yang rumit. Flowise menggunakan pendekatan low-code dan memungkinkan kita lebih fokus pada tugas yang dikerjakan, bukan pada detail teknisnya.
Belakangan ini, saya melihat lonjakan alat yang dirancang untuk membangun agen AI. Alat-alat ini menjadi lebih mudah diakses dan ramah pengguna, sehingga siapa pun dapat membuat sistem cerdas tanpa perlu keterampilan teknis yang luas. Jika Anda tertarik mengeksplorasi lebih lanjut, lihat juga tutorial berikut:
Flowise adalah alat yang dirancang untuk membantu kita membuat agen AI melalui antarmuka drag-and-drop yang sederhana. Flowise bekerja dengan memungkinkan kita menghubungkan berbagai blok, yang mewakili beragam fungsi, untuk membangun alur kerja yang disesuaikan. Setiap blok dapat dikonfigurasi untuk menjalankan tindakan tertentu.
Sebagai contoh, ada blok yang dikenal sebagai blok LLM yang digunakan untuk mengirim pesan ke model bahasa besar. Ada juga blok fungsi yang memberi kita kemampuan untuk mengeksekusi fungsi JavaScript kustom, sehingga memungkinkan operasi yang lebih terarah.
Dengan menautkan blok-blok ini, informasi mengalir dari satu blok ke blok berikutnya, memproses dan mentransformasi data selangkah demi selangkah. Pendekatan modular ini memudahkan pembuatan agen AI tanpa pengetahuan pemrograman yang mendalam, karena kita dapat fokus merancang alur kerja dan mengonfigurasi tindakan yang diperlukan.
Membangun Agen AI Analis Data dengan Flowise
Mari kita uraikan proses membangun agen AI analis data menggunakan Flowise. Panduan ini mencakup pendaftaran Flowise, membangun alur kerja kustom, dan memanfaatkan berbagai blok untuk membuat agen interaktif yang dapat menganalisis dataset.
Langkah 1: Buat akun di Flowise
Mulailah dengan mengunjungi halaman pendaftaran Flowise dan membuat akun. Isi detail yang diperlukan dan ikuti instruksi yang dikirim ke email Anda untuk memverifikasi dan mengaktifkan akun.
Langkah 2: Penyiapan basis data
Kini akun Flowise kita sudah siap, saatnya menyiapkan basis data yang akan digunakan. Kita memerlukan basis data untuk menyimpan data yang ingin dianalisis.
Kita akan menggunakan SingleStore, penyedia basis data SQL yang populer dan ramah pengguna, untuk mengelola data kita. Ikuti langkah-langkah berikut:
Setelah akun SingleStore aktif, langkah berikutnya adalah mengunggah dataset yang akan kita gunakan. Untuk contoh ini, kita menggunakan dataset tentang kebiasaan media sosial siswa, yang dapat ditemukan di Kaggle. Pastikan Anda mengunduh file dataset dari Kaggle dan mengunggahnya ke SingleStore.
Setelah dataset diunggah, SingleStore akan secara otomatis membuat tabel basis data darinya. Tabel ini akan menjadi dasar analisis data kita, sehingga informasinya siap untuk diakses agen AI Flowise.
Langkah 3: Masuk ke bagian chatflows
Setelah masuk, buka dasbor dan temukan bagian "Chatflows". Klik "Add New" untuk mulai membuat alur kerja baru.
Langkah 4: Buat fungsi kustom untuk memuat informasi tabel
Langkah ini melibatkan penulisan fungsi kustom untuk mengambil informasi tentang tabel, seperti deskripsi dan nama kolomnya. Data ini penting agar agen AI kita memahami struktur dataset yang akan diquery.
Buat blok fungsi kustom.
Tempelkan kode berikut ke editor blok fungsi:
const mysql =require('mysql2/promise');const tableName = $tableName;const tableDescription = $tableDescription;const connectionUrl ="<PASTE_YOUR_CONNECTION_STRING_HERE>"asyncfunctionmain(){try{const pool = mysql.createPool(connectionUrl);const q =DESCRIBE ${tableName};;const[rows]=await pool.query(q);const fields = rows.map((row)=> ${row.Field}of type ${row.Type}).join("\n");const tableInformation = Table name: ${tableName}\nTable description:\n${tableDescription.trim()}\nColumns:\n${fields.trim()};return tableInformation;}catch(error){returnString(error);}}returnmain();Didukung oleh
Di bagian atas fungsi, kita perlu menetapkan nilai connectionUrl. Ini dapat ditemukan di SingleStore, pada tab Deployments.
String koneksi terlihat seperti ini:
françois-19ecc:<françois-19ecc Password>@svc-3482219c-a389-4079-b18b-d50662524e8a-shared-dml.aws-virginia-6.svc.SingleStore.com:3333/db_franois_88ec0Didukung oleh
Bagian pertama, françois-19ecc dalam kasus saya, adalah nama pengguna. Setelah itu, ada placeholder untuk kata sandi, <françois-19ecc Password>, yang perlu kita ganti.
Fungsi ini terhubung ke basis data SingleStore dan mengambil informasi kolom untuk tabel. Fungsi ini memiliki dua masukan:
tableName: Nama tabel
tableDescription: Deskripsi tabel.
Keduanya harus dikonfigurasi dengan mengklik tombol “Input Variables” pada node kode kustom. Variabel dapat diakses di dalam kode dengan menambahkan prefiks $ pada namanya.
Dalam kasus saya, tabel diberi nama dataset saat dibuat di SingleStore. Anda harus menggunakan nama apa pun yang ditetapkan saat Anda mengunggah file CSV.
Langkah 5: Buat node templat prompt
Node ini adalah tempat kita menyusun pertanyaan yang memandu agen AI. Hubungkan node ini ke fungsi kustom Anda.
Buat node templat prompt.
Masukkan prompt berikut:
Based on the SQL table information and the user's questions, return a SQL query that answers that question.
TABLE INFORMATION: {tableInformation}
QUESTION: {question}Didukung oleh
Prompt memiliki dua placeholder: {tableInformation} dan {question}. question adalah prompt yang dikirim pengguna, sedangkan tableInformation adalah keluaran dari fungsi yang kita definisikan pada langkah sebelumnya.
Nilai placeholder ini harus dikonfigurasi dengan mengklik tombol “Format Prompt Values” pada node templat prompt.
Langkah 6: Tautkan ke blok LLM chain
Sekarang, kita menghubungkan node templat prompt ke blok LLM chain, yang akan menafsirkan prompt dan menghasilkan query SQL darinya. Berikut langkah-langkah yang perlu diikuti:
Tambahkan blok LLM chain.
Sertakan blok model yang dikonfigurasi untuk menggunakan OpenAI, dan hubungkan ke blok LLM chain pada input “Language Model”.
Untuk mengonfigurasi model OpenAI, Anda perlu menyiapkan kunci API OpenAI. Jika belum punya, Anda dapat membuatnya di sini.
Hubungkan blok templat prompt ke input “Prompt”.
Langkah 7: Gunakan blok set variable
Untuk menyimpan query SQL yang dihasilkan agar dapat digunakan lebih lanjut, buat blok set variable dan tautkan ke keluaran dari blok LLM chain.
Langkah 8: Eksekusi query SQL
Kirim query SQL ke blok kode kustom baru untuk mengeksekusinya pada basis data.
Buat blok kode kustom lainnya.
Masukkan kode berikut:
const mysql =require('mysql2/promise');const connectionUrl ="<PASTE_THE_SAME_URL_USED_BEFORE>";functionformatQuery(){// This function is used to clean the query provided by ChatGPT // by removing markdown quotesconst q = $query;let lines = q.trim().split(/\r\n|\r|\n/);if(lines[0].startsWith("")){
lines = lines.slice(1, lines.length -1);}return lines.join("\n").trim()}const q =formatQuery();try{const pool = mysql.createPool(connectionUrl);const[rows]=await pool.query(q);return rows;}catch(error){returnQuery: ${q}\nError:${String(error)}`
}Didukung oleh
Ingat untuk menetapkan nilai connectionUrl. Ini sama seperti yang kita gunakan sebelumnya.
Fungsi ini memiliki satu masukan, yaitu query yang ingin kita eksekusi, dan diakses dalam kode menggunakan $query.
Langkah 9: Buat templat prompt lain
Templat ini digunakan untuk memformat jawaban yang akan disajikan agen AI kepada pengguna berdasarkan hasil query.
Buat templat prompt baru.
Gunakan prompt berikut:
Based on the question and the query result, provide an answer to the user's question. Always show the query to the user.
QUERY: {query}
QUERY RESULT: {queryResult}
QUESTION: {question}Didukung oleh
Prompt ini memiliki tiga placeholder:
query: Query SQL yang dihasilkan oleh LLM, yang diperoleh dengan menghubungkan node variabel.
queryResult: Hasil query, yang dihitung oleh node fungsi kustom sebelumnya.
question: Prompt awal dari pengguna.
Langkah 10: Blok LLM chain terakhir
Terakhir, hubungkan templat prompt ini ke blok LLM chain baru, yang akan menggunakan prompt tersebut untuk merumuskan respons. Anda dapat menghubungkannya ke blok model OpenAI yang sama seperti sebelumnya.
Berikut alur akhir agen:
Dengan langkah-langkah ini selesai, agen AI kita siap digunakan. Agen dapat menerima pertanyaan, menghasilkan query SQL untuk mengambil data yang relevan, dan memberikan jawaban yang jelas dan ringkas.
Mengobrol dengan Agen Analis Data
Agen sekarang siap digunakan. Untuk mengobrol dengannya, klik tombol chat berwarna ungu di pojok kanan atas:
Mari kita uji dengan menanyakan berapa banyak respons yang diperoleh survei:
Perhatikan bahwa agen menyertakan query dalam balasan karena cara prompt terakhir dirancang. Mari minta beberapa statistik tentang data:
Berikut contoh lainnya:
Pendapat Saya tentang Flowise
Setelah bereksperimen dengan beberapa alat pembuat agen AI, pengalaman saya dengan Flowise terasa agak membuat frustrasi. Masalah berulang yang saya hadapi adalah tanpa sengaja menghapus beberapa konfigurasi variabel, yang membuat agen berperilaku tidak semestinya tanpa penjelasan yang jelas. Hal ini sering membuat proses pemecahan masalah menjadi melelahkan.
Selain itu, Flowise tidak memiliki titik awal yang jelas untuk alur agen, sehingga menantang untuk diikuti dan dipahami bagaimana agen berfungsi. Ini bisa jadi cukup berat bagi mereka yang baru dalam membangun sistem AI. Flowise juga kurang memadai dalam hal melihat hasil antara dengan mudah atau menguji node secara terpisah. Hal ini menyulitkan untuk menemukan masalah atau menyempurnakan alur kerja secara efektif.
Saya juga merasa sulit melihat konfigurasi node sekilas. Misalnya, node kode kustom yang kita gunakan mendefinisikan variabel input, tetapi hal itu tidak terlihat. Kita harus mengklik bagian node tersebut untuk melihatnya. Ini membuat sulit memahami alur hanya dengan melihatnya.
Kesimpulan
Walaupun Flowise menawarkan antarmuka low-code yang menjanjikan untuk membuat agen AI, ada beberapa masalah kegunaan yang membuatnya lebih sulit digunakan dibandingkan alat serupa, terutama bagi mereka yang mencari pengalaman yang lebih mulus dan intuitif. Terlepas dari tantangan ini, konsep Flowise memiliki potensi, dan dengan beberapa perbaikan, Flowise dapat menjadi alat yang hebat untuk membangun solusi AI.
Insinyur full-stack & pendiri di CheapGPT. Mengajar selalu menjadi passion saya. Sejak masa awal sebagai mahasiswa, saya aktif mencari peluang untuk membimbing dan membantu mahasiswa lain. Passion ini mendorong saya menempuh studi PhD, di mana saya juga menjadi asisten pengajar untuk mendukung kegiatan akademik saya. Selama tahun-tahun itu, saya menemukan kepuasan besar dalam suasana kelas tradisional, membangun koneksi dan memfasilitasi proses belajar. Namun, dengan hadirnya platform pembelajaran daring, saya melihat potensi transformatif pendidikan digital. Bahkan, saya terlibat aktif dalam pengembangan salah satu platform tersebut di universitas kami. Saya sangat berkomitmen untuk mengintegrasikan prinsip-prinsip pengajaran tradisional dengan metodologi digital yang inovatif. Tujuan saya adalah menciptakan kursus yang tidak hanya menarik dan informatif, tetapi juga mudah diakses oleh para pembelajar di era digital ini.
Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Pelajari cara membuat aplikasi yang didukung oleh kecerdasan buatan (AI) menggunakan alat pengembangan AI terbaru, termasuk OpenAI API, Hugging Face, dan LangChain.
Dalam artikel ini, saya akan menjelaskan langkah demi langkah cara menggunakan Flowise untuk membangun agen AI yang dapat menjawab pertanyaan berdasarkan dataset CSV.
Flowise adalah alat yang praktis bagi siapa pun yang ingin membangun agen AI tanpa terjebak dalam pengkodean yang rumit. Flowise menggunakan pendekatan low-code dan memungkinkan kita lebih fokus pada tugas yang dikerjakan, bukan pada detail teknisnya.
Belakangan ini, saya melihat lonjakan alat yang dirancang untuk membangun agen AI. Alat-alat ini menjadi lebih mudah diakses dan ramah pengguna, sehingga siapa pun dapat membuat sistem cerdas tanpa perlu keterampilan teknis yang luas. Jika Anda tertarik mengeksplorasi lebih lanjut, lihat juga tutorial berikut:
Apa Itu Flowise?
Flowise adalah alat yang dirancang untuk membantu kita membuat agen AI melalui antarmuka drag-and-drop yang sederhana. Flowise bekerja dengan memungkinkan kita menghubungkan berbagai blok, yang mewakili beragam fungsi, untuk membangun alur kerja yang disesuaikan. Setiap blok dapat dikonfigurasi untuk menjalankan tindakan tertentu.
Sebagai contoh, ada blok yang dikenal sebagai blok LLM yang digunakan untuk mengirim pesan ke model bahasa besar. Ada juga blok fungsi yang memberi kita kemampuan untuk mengeksekusi fungsi JavaScript kustom, sehingga memungkinkan operasi yang lebih terarah.
Dengan menautkan blok-blok ini, informasi mengalir dari satu blok ke blok berikutnya, memproses dan mentransformasi data selangkah demi selangkah. Pendekatan modular ini memudahkan pembuatan agen AI tanpa pengetahuan pemrograman yang mendalam, karena kita dapat fokus merancang alur kerja dan mengonfigurasi tindakan yang diperlukan.
Membangun Agen AI Analis Data dengan Flowise
Mari kita uraikan proses membangun agen AI analis data menggunakan Flowise. Panduan ini mencakup pendaftaran Flowise, membangun alur kerja kustom, dan memanfaatkan berbagai blok untuk membuat agen interaktif yang dapat menganalisis dataset.
Langkah 1: Buat akun di Flowise
Mulailah dengan mengunjungi halaman pendaftaran Flowise dan membuat akun. Isi detail yang diperlukan dan ikuti instruksi yang dikirim ke email Anda untuk memverifikasi dan mengaktifkan akun.
Langkah 2: Penyiapan basis data
Kini akun Flowise kita sudah siap, saatnya menyiapkan basis data yang akan digunakan. Kita memerlukan basis data untuk menyimpan data yang ingin dianalisis.
Kita akan menggunakan SingleStore, penyedia basis data SQL yang populer dan ramah pengguna, untuk mengelola data kita. Ikuti langkah-langkah berikut:
Langkah 3: Masuk ke bagian chatflows
Setelah masuk, buka dasbor dan temukan bagian "Chatflows". Klik "Add New" untuk mulai membuat alur kerja baru.
Langkah 4: Buat fungsi kustom untuk memuat informasi tabel
Langkah ini melibatkan penulisan fungsi kustom untuk mengambil informasi tentang tabel, seperti deskripsi dan nama kolomnya. Data ini penting agar agen AI kita memahami struktur dataset yang akan diquery.
Di bagian atas fungsi, kita perlu menetapkan nilai
connectionUrl. Ini dapat ditemukan di SingleStore, pada tab Deployments.String koneksi terlihat seperti ini:
Bagian pertama,
françois-19eccdalam kasus saya, adalah nama pengguna. Setelah itu, ada placeholder untuk kata sandi,<françois-19ecc Password>, yang perlu kita ganti.Fungsi ini terhubung ke basis data SingleStore dan mengambil informasi kolom untuk tabel. Fungsi ini memiliki dua masukan:
tableName: Nama tabeltableDescription: Deskripsi tabel.Keduanya harus dikonfigurasi dengan mengklik tombol “Input Variables” pada node kode kustom. Variabel dapat diakses di dalam kode dengan menambahkan prefiks
$pada namanya.Dalam kasus saya, tabel diberi nama
datasetsaat dibuat di SingleStore. Anda harus menggunakan nama apa pun yang ditetapkan saat Anda mengunggah file CSV.Langkah 5: Buat node templat prompt
Node ini adalah tempat kita menyusun pertanyaan yang memandu agen AI. Hubungkan node ini ke fungsi kustom Anda.
Prompt memiliki dua placeholder:
{tableInformation}dan{question}.questionadalah prompt yang dikirim pengguna, sedangkantableInformationadalah keluaran dari fungsi yang kita definisikan pada langkah sebelumnya.Nilai placeholder ini harus dikonfigurasi dengan mengklik tombol “Format Prompt Values” pada node templat prompt.
Langkah 6: Tautkan ke blok LLM chain
Sekarang, kita menghubungkan node templat prompt ke blok LLM chain, yang akan menafsirkan prompt dan menghasilkan query SQL darinya. Berikut langkah-langkah yang perlu diikuti:
Langkah 7: Gunakan blok set variable
Untuk menyimpan query SQL yang dihasilkan agar dapat digunakan lebih lanjut, buat blok set variable dan tautkan ke keluaran dari blok LLM chain.
Langkah 8: Eksekusi query SQL
Kirim query SQL ke blok kode kustom baru untuk mengeksekusinya pada basis data.
Ingat untuk menetapkan nilai
connectionUrl. Ini sama seperti yang kita gunakan sebelumnya.Fungsi ini memiliki satu masukan, yaitu query yang ingin kita eksekusi, dan diakses dalam kode menggunakan
$query.Langkah 9: Buat templat prompt lain
Templat ini digunakan untuk memformat jawaban yang akan disajikan agen AI kepada pengguna berdasarkan hasil query.
Prompt ini memiliki tiga placeholder:
query: Query SQL yang dihasilkan oleh LLM, yang diperoleh dengan menghubungkan node variabel.queryResult: Hasil query, yang dihitung oleh node fungsi kustom sebelumnya.question: Prompt awal dari pengguna.Langkah 10: Blok LLM chain terakhir
Terakhir, hubungkan templat prompt ini ke blok LLM chain baru, yang akan menggunakan prompt tersebut untuk merumuskan respons. Anda dapat menghubungkannya ke blok model OpenAI yang sama seperti sebelumnya.
Berikut alur akhir agen:
Dengan langkah-langkah ini selesai, agen AI kita siap digunakan. Agen dapat menerima pertanyaan, menghasilkan query SQL untuk mengambil data yang relevan, dan memberikan jawaban yang jelas dan ringkas.
Mengobrol dengan Agen Analis Data
Agen sekarang siap digunakan. Untuk mengobrol dengannya, klik tombol chat berwarna ungu di pojok kanan atas:
Mari kita uji dengan menanyakan berapa banyak respons yang diperoleh survei:
Perhatikan bahwa agen menyertakan query dalam balasan karena cara prompt terakhir dirancang. Mari minta beberapa statistik tentang data:
Berikut contoh lainnya:
Pendapat Saya tentang Flowise
Setelah bereksperimen dengan beberapa alat pembuat agen AI, pengalaman saya dengan Flowise terasa agak membuat frustrasi. Masalah berulang yang saya hadapi adalah tanpa sengaja menghapus beberapa konfigurasi variabel, yang membuat agen berperilaku tidak semestinya tanpa penjelasan yang jelas. Hal ini sering membuat proses pemecahan masalah menjadi melelahkan.
Selain itu, Flowise tidak memiliki titik awal yang jelas untuk alur agen, sehingga menantang untuk diikuti dan dipahami bagaimana agen berfungsi. Ini bisa jadi cukup berat bagi mereka yang baru dalam membangun sistem AI. Flowise juga kurang memadai dalam hal melihat hasil antara dengan mudah atau menguji node secara terpisah. Hal ini menyulitkan untuk menemukan masalah atau menyempurnakan alur kerja secara efektif.
Saya juga merasa sulit melihat konfigurasi node sekilas. Misalnya, node kode kustom yang kita gunakan mendefinisikan variabel input, tetapi hal itu tidak terlihat. Kita harus mengklik bagian node tersebut untuk melihatnya. Ini membuat sulit memahami alur hanya dengan melihatnya.
Kesimpulan
Walaupun Flowise menawarkan antarmuka low-code yang menjanjikan untuk membuat agen AI, ada beberapa masalah kegunaan yang membuatnya lebih sulit digunakan dibandingkan alat serupa, terutama bagi mereka yang mencari pengalaman yang lebih mulus dan intuitif. Terlepas dari tantangan ini, konsep Flowise memiliki potensi, dan dengan beberapa perbaikan, Flowise dapat menjadi alat yang hebat untuk membangun solusi AI.