- General Info
- Creator Info
- Features
- Technologies Used
- Setup
- Usage
- Video Capture
- Screenshots
- Structure
- Project Status
- Room for Improvement
- Acknowledgements
- Contact
Sebuah aplkasi CHatGPT sederhana yang dengan mengaplikasikan pendekatan QA yang paling sederhana tersebut. Pencarian pertanyaan yang palig mirip degan pertanyaan yang diberikan penggunaka dilakukan dengan algoritma pencocokan string Knuth-Morris-Pratt (KMP) dan Boyer-Moore (BM). Regex digunakan untuk menentukan format dari pertanyaan (akan dijelaskan lebih lanjut pada bagian fitur aplikasi). Jika tidak ada satupun pertanyaan pada database yang exact match dengan pertanyaan pengguna melalui algoritma KMP ataupun BM, maka gunakan pertanyaan termirip dengan kesamaan setidaknya 90%. Apabila tidak ada pertanyaan yang kemiripannya di atas 90%, maka chatbot akan memberikan maksimum 3 pilihan pertanyaan yang paling mirip untuk dipilih oleh pengguna. Aplikasi ini berbasis web dengan menggunakan React serta Tailwind CSS untuk frontend dan Next.js untuk backend. ChatGPT sederhana ini digunakan untuk memenuhi tugas besar 3 mata kuliah IF2211 Strategi Algoritma 2022/2023.
Nama | NIM | |
---|---|---|
Brian Kheng | 13521049 | 13521049@std.stei.itb.ac.id |
Muhammad Rizky Sya'ban | 13521119 | 13521119@std.stei.itb.ac.id |
Mohammad Rifqi Farhansyah | 13521166 | 13521166@std.stei.itb.ac.id |
Autentifikasi
pengguna dengan menggunakan akun Google- Memilih
Algoritma
yang akan digunakan untuk mencari string dengan kemiripan tertinggi - Tombol untuk
Sign Out / Change Account
- Tombol
New Chat
untuk menambahkan room chat baru untuk akun pengguna - Memulihkan
History Chat
dari database untuk tiap room chat pengguna Menghapus
room chat dari database untuk pengguna tertentuMengubah title
dari room chat penggunaMenambah dan menghapus
pertanyaan serta jawaban dari database- fitur
kalkulator dan penentu hari
yang dapat digunakan pengguna
Note: The version of the libraries above is the version that we used in this project. You can use the latest version of the libraries.
- Clone Repository ini dengan menggunakan command berikut
git clone https://github.com/briankheng/Tubes3_13521049.git
- Buka Folder "Tubes3_13521049" di Terminal
- Install Packages yang diperlukan
npm i
- Jalanakan Aplikasi dengan menggunakan command
npm run dev
- Buka http://localhost:3000 pada Browser Anda
- Cara alternatif dapat melalui pranala berikut
- Tekan tombol
Login
pada landing page untuk masuk ke aplikasi - Pilih algoritma yang akan digunakan untuk mencari string dengan kemiripan tertinggi
- Masukkan pertanyaan pada chatbox dan tekan tombol
Enter
atauicon send
untuk mengirimkan pertanyaan - Apabila ingin menambah chat baru, tekan tombol
New Chat
pada sidebar - Jika ingin mengubah title dari room chat, tekan
icon edit Title
pada sidebar - Jika ingin menghapus room chat, tekan
icon delete
pada sidebar - Tombol yang bertuliskan
email
pada sidebar digunakan untukSign Out / Change Account
Gambar 1. Landing Page
Gambar 2. Window Utama
Gambar 3. Chat Window
Gambar 4. Edit Title
Gambar 5. Algorithm Select
Gambar 6. Sign Out / Change Account
├───.next
├───doc
├───img
├───node_modules
├───prisma
├───public
└───src
├───assets
├───components
│ ├───chat-window
│ │ ├───chat-container
│ │ ├───chat-window-page
│ │ ├───input-box
│ │ └───send-button
│ └───sidebar
│ ├───account-select
│ ├───algorithm-select
│ ├───chat-history
│ ├───history-container
│ ├───new-chat-button
│ └───sidebar-page
├───context
├───hooks
├───libs
│ ├───algorithms
│ │ └───string-matching
│ └───handler
├───pages
│ ├───api
│ │ ├───auth
│ │ ├───chat
│ │ └───message
│ ├───chat
│ └───home
└───styles
Project is: complete
Perbaikan yang dapat dilakukan pada program ini adalah:
- Menambahkan fitur-fitur tambahan agar bisa lebih menyerupai ChatGPT
- Terima kasih kepada Tuhan Yang Maha Esa
- Terima kasih kepada Dr. Ir. Rinaldi Munir, M.T. serta Dr. Nur Ulfa Maulidevi, S.T, M.Sc selaku dosen K1 dan K2 IF2211 Strategi Algoritma 2022/2023