• Tidak ada hasil yang ditemukan

Implementasi Chatbot untuk Customer Service menggunakan Metode Natural Language Processing (NLP) (Studi Kasus Website Theme62.com)

N/A
N/A
Protected

Academic year: 2024

Membagikan "Implementasi Chatbot untuk Customer Service menggunakan Metode Natural Language Processing (NLP) (Studi Kasus Website Theme62.com)"

Copied!
5
0
0

Teks penuh

(1)

JIMP : Jurnal Informatika Merdeka Pasuruan Vol.7 No.2 Agustus 2022, P-ISSN : 2502-5716, E-ISSN : 2503-1945 Terakreditasi Peringkat Sinta 4 berdasarkan Petikan dari Keputusan Menteri Riset dan Teknologi/ Kepala Badan Riset dan Inovasi Nasional Nomor 200/M/KPT/2020, masa berlaku mulai Vol.3 No.1 tahun 2018 s.d Vol.7 No.2 tahun 2022

82

Implementasi Chatbot untuk Customer Service menggunakan Metode Natural Language Processing (NLP) (Studi Kasus

Website Theme62.com)

Arga Fairuz Zahwa1, Rina Fiati2, Alif Catur Murti3

1, 2, 3 Teknik Informatika, Fakultas Teknik, Universitas Muria Kudus, Indonesia

1[email protected]

2[email protected]

3[email protected]

Received: 02-07-2022; Accepted: 27-08-2023; Published: 09-09-2023 AbstrakTheme62 merupakan website penyedia template

blogger terbaik dengan fitur yang terinspirasi dari Wordpress.

Semakin meningkatnya peminat dan kunjungan pada website Theme62, semakin meningkat pula kebutuhan customer service. Hal ini tidak seimbang dengan sumber daya manusia yang mengelola website Theme62 sehingga pada beberapa pelanggan tidak terlayani dengan maksimal. Tujuan dari penelitian ini untuk mengatasi problematika dalam customer service yang semakin meningkat dengan cara semula yang dijalankan oleh manusia digantikan oleh bot yang dapat melayani pelanggan dengan cepat dan tanpa henti. Sistem chatbot dibuat menggunakan metode Natural Language Processing (NLP) dengan bantuan library node-nlp oleh Node.js yang mampu mengolah bahasa manusia menjadi bahasa yang dapat dipahami oleh komputer, dengan begitu komputer dapat memahami maksud dari pertanyaan manusia dan dapat berinteraksi layaknya manusia. Hasil akhir yang diperoleh adalah terbentuknya sistem chatbot yang mampu menangani pertanyaan pelanggan dengan cepat, selain itu meringankan pekerjaan admin Theme62 sehingga dapat lebih fokus dalam mengembangkan produk Theme62.

Kata kunci

Chatbot, NLP, Node-nlp, Node.js, Customer Service

Abstract Theme62 is the best blogger template provider website with WordPress-inspired features. As the number of enthusiasts and visits to the Theme62 website increases, the need for customer service also increases. This is not balanced with the human resources that manage the Theme62 website so that some customers are not served optimally. The purpose of this research is to overcome the problems in customer service that are increasing in the way that originally run by humans was replaced by bots that can serve customers quickly and without stopping. The chatbot system was created using the Natural Language Processing (NLP) method with the help of the node- nlp library by Node.js which is able to process human language into a language that can be understood by computers, so that computers can understand the intent of human questions and can interact like humans. The final result obtained is the formation of a chatbot system that is able to handle customer inquiries quickly, in addition to easing the work of the Theme62 admin so that they can focus more on developing Theme62 products.

Keywords

Chatbot, NLP, Node-nlp, Node.js, Customer Service

I. PENDAHULUAN

Theme62 (theme62.com) merupakan website penyedia template blogger terbaik dengan fitur yang terinspirasi dari Wordpress [1]. Theme62 telah berjalan dengan sistem sepenuhnya yang berarti dari pendaftaran, pembayaran, mendapatkan template, hingga mengatur template dikelola oleh sistem. Dari kemudahan dan fitur template inilah membuat calon pelanggan tertarik dengan Theme62 walaupun baru awal rilis.

Pelanggan baru sebelum membeli template biasanya akan menanyakan detail template melalui chat walaupun pada website Theme62 sudah memiliki halaman FAQ mengenai info template dan pembayaran, hal ini karena pada beberapa orang malas untuk membaca dan lebih memilih bertanya langsung kepada admin Theme62.

Seiring berjalannya waktu dan semakin banyak calon pelanggan baru menjadi problematika dalam melayani pelanggan, hal ini karena tidak seimbang dengan sumber daya manusia yang mengelola website Theme62 sehingga pada beberapa pelanggan tidak terlayani dengan maksimal.

Salah satu faktor keberhasilan dalam sebuah bisnis adalah pelayanan terhadap pelanggan yang berkualitas, dalam arti melayani pelanggan dengan cepat dan tidak terkendala oleh waktu. Jika tidak, akan mengakibatkan turunnya nilai kepercayaan pelanggan karena telah menunggu cukup lama dan menganggapnya tidak profesional dalam menjalankan bisnis. [2]

Chatbot merupakan sebuah layanan obrolan chat dengan bantuan Natural Language Processing (NLP) yang merupakan cabang teknologi dari kecerdasan buatan atau Artificial Intelligence (AI). Chatbot mampu mengolah bahasa manusia menjadi bahasa yang dapat dipahami oleh komputer, dengan begitu komputer dapat memahami maksud dari pertanyaan manusia dan dapat berinteraksi layaknya manusia tanpa perlu menunggu operator untuk membalas pesan [3].

Berdasarkan masalah tersebut maka dibutuhkan sebuah sistem chatbot sehingga akan cepat dalam melayani pelanggan dan dapat melayani dalam 7x24 jam penuh.

Dengan adanya sistem tersebut diharapkan dapat meningkatkan kepercayaan dan kepuasan pelanggan karena telah terlayani dengan maksimal. [4]

(2)

II. METODOLOGI PENELITIAN

A. Metode Penelitian

Pada penelitian ini menggunakan data chat atau pertanyaan yang sering diajukan oleh pelanggan yang akan menjadi basis pengetahuan pada sistem chatbot.

1) Studi Literatur: Penulis mencari referensi yang berkaitan dengan kasus penelitian.

2) Pengumpulan Data: Dibutuhkan beberapa data pendukung untuk pembangunan chatbot.

3) Penulisan Program: Penulisan program sistem chatbot menggunakan Node.js dalam mengelola sisi server dan node-nlp dengan nspell sebagai library Node.js yang mempermudah dalam pembuatan sistem chatbot.

4) Pengujian Sistem: Bertujuan untuk menemukan kesalahan dan menguji seberapa akurat sistem chatbot merespon pertanyaan dengan hasil jawaban yang sesuai.

5) Hasil: Terbentuknya sistem chatbot untuk website Theme62.

B. Metode Pengumpulan Data

Metode pengumpulan data yang dilakukan pada penelitian ini adalah sebagai berikut:

1) Observasi: Metode pengumpulan data yang dilakukan dengan cara meninjau pada objek penelitian untuk mendapatkan data yang dibutuhkan dalam penelitian.

2) Literatur: Mencari referensi dari jurnal, ebook, internet, dan penelitian terdahulu yang berkaitan dalam perancangan sistem chatbot.

C. Metodologi Pengembangan Sistem

Sistem chatbot ini memiliki beberapa tahap pemrosesan untuk menghasilkan chat yang bersih dan mudah dipahami oleh bot, tahap pemrosesannya adalah sebagai berikut:

1) Cleaning: Proses pembersihan kalimat yang tidak diperlukan untuk data training, seperti url dan dekorasi kode.

Gambar. 1 Cleaning

2) Normalizing: Proses merubah huruf besar menjadi huruf kecil dan menghapus dekorasi teks yang berguna untuk penyelarasan teks.

Gambar. 2 Normalizing

3) Tokenizing: Proses pemisahan kalimat atau paragraf menjadi beberapa token atau kata, pada waktu yang sama dilakukan penghapusan simbol atau tanda baca yang tidak diperlukan

Gambar. 3 Tokenizing

4) Spell Check: Proses koreksi ejaan kata yang kurang tepat, seperti penulisan yang typo atau penggunaan singkatan pada kata.

Gambar. 4 Spell Check

5) Stemming: Proses penghapusan kata imbuhan menggunakan aturan bahasa sehingga mendapatkan sebuah kata dasar.

Gambar. 5 Stemming

6) Neural Network: Jaringan unit pemrosesan kecil yang didasarkan pada sistem saraf manusia yang dapat digunakan untuk memodelkan hubungan yang kompleks antara input dan output.

III. HASIL DAN PEMBAHASAN

A. Implementasi Sistem

Pembuatan sistem menggunakan Node.js sebagai pondasi utama karena performa dan skalabilitas yang tinggi dibandingkan PHP/Nginx [5], dan menggunakan beberapa library diantaranya “express.js” untuk menangani request,

“node-nlp” dan “nspell” untuk pemrosesan chatbot. Penulis membuat beberapa module secara terpisah, hal ini bertujuan untuk memudahkan proses pembuatan dan pengembangan. Module yang dibuat adalah sebagai berikut:

1) corpus-crud.js

Module ini berperan dalam mengelola data corpus (disebut penulis sebagai data pelatihan) yang menganut konsep CRUD (Create, Read, Update, Delete) sehingga dapat menambah, membaca, memperbarui, dan menghapus data corpus. Data corpus disimpan dalam format/ekstensi json dengan nama “corpus.json”.

Gambar. 6 corpus-crud.js

Gambar. 7 corpus.json

(3)

2) spell-check.js

Module ini berperan dalam mengoreksi ejaan kata yang kurang tepat, seperti penulisan yang typo atau penggunaan singkatan pada kata. Data pelatihan spell check ini didapatkan dari file word.txt yang berisi sejumlah teks dari file corpus.json yang telah melalui pembersihan data.

Gambar. 8 spell-check.js

Gambar. 9 word.txt

3) pre.js

Module ini berperan dalam preprocessing kata/kalimat untuk mendapatkan kata/kalimat yang bersih sehingga mudah dipahami oleh bot dalam proses training dan meningkatkan akurasi prediksi bot dalam menjawab pertanyaan customer. Module ini memiliki banyak preprocessing yang diantaranya adalah cleaning, normalizing, tokenizing, spell check, dan stemming.

Gambar. 10 pre.js

Tahap ini memiliki beberapa pipeline (disebut penulis sebagai alur preprocessing) yang berbeda untuk kasus yang berbeda, diantaranya adalah sebagai berikut:

- Pipeline Model: Pengolahan data corpus sebelum masuk dalam proses training chatbot.

Gambar. 11 Pipeline Model

- Pipeline Word: Pengolahan data corpus sebelum digunakan untuk proses pelatihan spell check.

Gambar. 12 Pipeline Word

- Pipeline Predict: Pengolahan pertanyaan user sebelum digunakan untuk proses prediksi jawaban.

Gambar. 13 Pipeline Predict

4) nlp-manager.js

Module ini berperan dalam pemrosesan utama dalam sistem chatbot yang memiliki 3 (tiga) fungsi, diantaranya adalah “train” untuk proses pelatihan data menggunakan Neural Network, “getModel” untuk mengambil data model, dan “predict” untuk proses prediksi jawaban dari pertanyaan yang diajukan user. Data model disimpan dalam format/ekstensi json dengan nama “model.json”.

Gambar. 14 nlp-manager.js

5) history-file.js

Module ini berperan dalam penanganan data history yang merupakan pencatatan riwayat chat user beserta response dari hasil prediksi. Data history disimpan dalam format/ekstensi json dengan nama “history.json”.

B. Pengujian Aplikasi

Pengujian aplikasi menggunakan pengujian white-box yang diuji dari berbagai kondisi fungsionalitas sistem dan kemudian output dari sistem akan dibandingkan dengan output yang diharapkan.

1) Pengujian White-box

Pengujian sistem ini dilakukan untuk melakukan analisa apakah terdapat kode program yang salah atau tidak dengan cara melihat modul-modul di dalamnya [6]. Modul yang diuji adalah modul prediksi jawaban yang dapat dilihat pada gambar 15.

(4)

Gambar. 15 Pengujian White-box pada Flowchart

- Unit 1: Melalui proses Pipeline Predict yang memiliki beberapa fungsi Cleaning, Normalizing, Tokenizing, Spell Check, Stemming, dan Spell Check. Unit ini telah sesuai dengan program yang diharapkan.

Gambar. 16 Script Pipeline Predict

- Unit 2: Proses klasifikasi yang menggunakan Neural Network, Unit ini telah sesuai dengan program yang diharapkan.

Gambar. 17 Script Proses Klasifikasi

- Unit 3: Filter pada hasil klasifikasi dengan pertimbangan score diatas 0.25 dan mengurutkan score dari besar ke kecil. Unit ini telah sesuai dengan program yang diharapkan

Gambar. 18 Script Filter Klasifikasi

- Unit 4: Kondisi untuk mengecek apakah terdapat klasifikasi setelah melalui filter. Unit ini telah sesuai dengan program yang diharapkan.

Gambar. 19 Script Cek Hasil Klasifikasi

- Unit 5: kondisi jika tidak terdapat klasifikasi, kemudian membuat variable intent = “None” dan score = 1. Unit ini telah sesuai dengan program yang diharapkan.

Gambar. 20 Script Jika Tidak Ada Klasifikasi

- Unit 6: Kondisi jika terdapat klasifikasi, kemudian membuat variable intent dan score dari hasil klasifikasi.

Unit ini telah sesuai dengan program yang diharapkan.

Gambar. 21 Script Jika Ada Klasifikasi

- Unit 7: Melengkapi data-data yang dibutuhkan dan dimasukkan ke dalam variable. Unit ini telah sesuai dengan program yang diharapkan.

Gambar. 22 Script Melengkapi Data

- Unit 8: Proses “return” atau mengembalikan hasil.

Unit ini telah sesuai dengan program yang diharapkan.

Gambar. 23 Script Return Hasil

Dari hasil pengujian menggunakan metode White-box pada aplikasi chatbot Theme62 mendapatkan hasil sesuai dengan program yang diharapkan pada tiap pengujian. Hal tersebut menunjukkan bahwa metode NLP dengan pipelines yang tepat mampu menjawab pertanyaan berdasarkan basis pengetahuan yang telah diberikan sebelumnya.

IV. KESIMPULAN

Dari hasil penelitian, pembahasan, dan pengujian oleh penulis, maka didapat sebuah kesimpulan sebagai berikut:

1) Metode NLP dengan menggunakan library node-nlp bekerja dengan baik memahami pertanyaan dari customer.

2) Dapat menangani pertanyaan typo ataupun singkatan hanya dengan melihat data corpus dengan menggunakan library nspell.

3) Meringankan pekerjaan admin Theme62 terutama dalam hal pelayanan terhadap customer.

REFERENSI

[1] Theme62 (2021). About Us. Theme62.com. Diakses pada 10 Februari 2022. https://theme62.com/p/about/

[2] Marlius, D. (2018). Pengaruh Bauran Pemasaran Jasa Terhadap Minat Nasabah Dalam Menabung Pada Bank Nagari Cabang Muaralabuh. Jurnal Riset Manajemen dan Akuntansi (JURMAK).

3(1), 12-22.

(5)

[3] Gunawan, B., & Sidik, M. (2021). Pembuatan Aplikasi Chatbot Kolektor Dengan Metode Extreme Programming Dan Strategi Forward Chaining. Jurnal Teknologi Informasi dan Ilmu Komputer (JTIIK). Jurnal Internasional. 8(2), 293–302.

[4] Ananda Dwi, Imamah, F., Andre, Y. M., & Ardiansyah. (2018).

Aplikasi Chatbot (Milki Bot) Yang Terintegrasi Dengan Web CMS Untuk Customer Service Pada UKM MINSU. Jurnal Cendikia, 16, 100–106.

[5] Shah, H., & Soomro, T. R. (2017). Node.Js Challenges in Implementation. Global Journal of Computer Science and Technology. 17(2), 73-83.

[6] Setiawan, R. (2021). White Box Testing untuk Menguji Perangkat Lunak. Dicoding.com. Diakses pada 11 Februari 2022.

https://www.dicoding.com/blog/white-box-testing/

This is an open access article under the CC–BY-SA license.

Referensi

Dokumen terkait

melakukan penelitian ini langkah yang dilakukan adalah melakukan studi pustaka yang berkaitan dengan sistem pengolahan bahasa alami ( Natural Language Processing )

Berdasarkan hasil implementasi dan pengujian yang telah dilakukan pada aplikasi chatbot dengan pendekatan Natural Language Processingini maka dapat diambil

Natural Language Processing merupakan suatu metode yang digunakan untuk pengolahan bahasa natural sehingga dapat dimengerti oleh komputer. Natural Language Processing akan

In this study, we use natural language processing NLP techniques and various machine learning classifiers and presented model for cyberbullying detection in Bangla and Romanized Bangla