FlutterVoiceFriend adalah aplikasi Flutter sumber terbuka yang dirancang untuk membantu pengembang membangun pengalaman chatbot interaktif berbasis suara menggunakan kombinasi teknologi ucapan-ke-teks (STT) dan teks-ke-ucapan (TTS) yang mutakhir. Aplikasi ini memanfaatkan Langchain, OpenAI untuk pemrosesan bahasa alami dan TTS, serta pengenalan suara pada perangkat dan berbasis cloud (termasuk Deepgram) untuk menawarkan kemampuan interaksi suara yang fleksibel.
Baik Anda sedang mengembangkan asisten virtual, alat AI percakapan, atau pendamping suara pendidikan, FlutterVoiceFriend memberikan dasar yang kuat untuk membuat aplikasi berbasis suara yang dapat disesuaikan.
Chatbot Suara-ke-Suara:
FlutterVoiceFriend memungkinkan percakapan berbasis suara yang lancar menggunakan teknologi STT dan TTS yang canggih. Pengguna dapat berbicara ke aplikasi, dan aplikasi akan merespons melalui keluaran suara alami.
Beberapa Opsi Pengenalan Ucapan:
Dukungan untuk teknologi STT pada perangkat dan berbasis cloud memastikan bahwa aplikasi dapat menangani input suara di berbagai lingkungan dengan kemampuan perangkat yang berbeda-beda.
Fleksibel dan Modular:
Aplikasi ini dapat dengan mudah disesuaikan agar sesuai dengan berbagai kasus penggunaan, seperti asisten virtual, bot percakapan, aplikasi pendidikan, atau platform hiburan.
Pengembang dapat mengubah alur, respons, dan perilaku chatbot untuk menyesuaikan pengalaman dengan kebutuhan spesifik mereka.
Dibangun dengan Flutter:
Dikembangkan menggunakan Flutter SDK, memastikan kompatibilitas di seluruh platform iOS, Android, dan Web. Aplikasi ini memberikan pengalaman pengguna yang lancar dengan satu basis kode.
Pemrosesan Bahasa Alami dengan Langchain & OpenAI:
Mengintegrasikan model OpenAI yang kuat untuk menghasilkan percakapan yang alami dan koheren.
Gunakan Langchain untuk alur percakapan yang kompleks, memungkinkan bot menangani dialog yang lebih bernuansa.
Respons Suara yang Dapat Disesuaikan:
Sesuaikan mesin TTS agar sesuai dengan kepribadian chatbot Anda. Pilih dari berbagai suara dan bahasa untuk menciptakan pengalaman pengguna yang dipersonalisasi.
Fleksibilitas Ucapan-ke-Teks:
Termasuk opsi STT pada perangkat untuk pemrosesan offline yang lebih cepat dan STT berbasis cloud (misalnya Deepgram) untuk pengenalan ucapan yang lebih akurat di lingkungan online.
Asisten Virtual : Buat asisten virtual cerdas yang diaktifkan dengan suara untuk membantu tugas, pengingat, atau informasi umum.
Aplikasi Pendidikan : Bangun teman percakapan yang memandu pengguna melalui pengalaman belajar dengan umpan balik suara.
Hiburan dan Permainan : Kembangkan aplikasi berbasis cerita interaktif di mana pengguna berkomunikasi dengan karakter menggunakan input suara.
Perawatan Kesehatan dan Kebugaran : Ciptakan pendamping suara untuk pelacakan kesehatan, dukungan emosional, atau panduan kebugaran.
"FlutterVoiceFriend" awalnya dikembangkan untuk aplikasi interaktif dan menarik yang dirancang untuk membantu anak-anak mengeksplorasi emosi mereka dan menumbuhkan kesadaran melalui meditasi terpandu dan latihan refleksi diri. Friend in Me membimbing anak-anak melalui berbagai aktivitas yang bersifat meditatif dan reflektif. Tujuannya adalah untuk mengajarkan anak-anak rasa kasih sayang, perhatian, dan kesadaran emosional melalui latihan yang menyenangkan, sederhana, dan menarik.
iOS (iPhone atau iPad):
Unduh aplikasi dari App Store.
Flutter SDK : Pengembangan lintas platform untuk iOS, Android, dan Web.
Pengenalan Ucapan : Mengintegrasikan STT pada perangkat dan berbasis cloud (misalnya, speech_to_text
dan deepgram_speech_to_text
).
Audio Backend : Dapat menggunakan perpustakaan SoLoud dan plug-in just_audio.
Text-to-Speech : Didukung oleh OpenAI untuk keluaran suara alami.
Pemrosesan Model Bahasa Besar : Memanfaatkan model Langchain dan OpenAI untuk menangani alur percakapan yang kompleks.
Pada versi saat ini, ada beberapa fitur dan peningkatan yang direncanakan namun belum dilaksanakan. Harap perhatikan batasan berikut:
Khusus iOS dan Android: Aplikasi saat ini hanya kompatibel dengan perangkat iOS dan Android. Dukungan untuk web tersedia di cabang tetapi memerlukan konfigurasi khusus Platform Linux, Windows, dan Mac belum diterapkan.
Masukan Pengguna: Tidak ada mekanisme bawaan untuk mengumpulkan masukan pengguna dalam aplikasi.
Dokumentasi Pengembang: Dokumentasi komprehensif untuk pengembang belum tersedia.
Komentar Kode: Bagian-bagian penting dari basis kode masih memerlukan komentar yang memadai.
Suara Latar Belakang: Musik latar atau suara alam pada saat kegiatan meditasi belum dilaksanakan.
Otentikasi Pengguna: Fungsi masuk pengguna tidak tersedia.
Mode Offline: Aplikasi saat ini tidak mendukung fungsi offline.
Analisis Data Pengguna: Analisis penggunaan anonim tidak diterapkan.
Pemisahan Kekhawatiran: Logika bisnis aplikasi tidak sepenuhnya terpisah dari komponen UI.
Pencatatan Kesalahan: Alat pencatatan dan pemantauan kesalahan yang kuat belum tersedia.
Pengujian Unit dan Integrasi: Pengujian unit dan pengujian integrasi yang komprehensif belum diterapkan.
CI/CD: Integrasi berkelanjutan dan alur penerapan belum disiapkan.
SDK Flutter >= 3.4.4
Anak panah >= 3.4.4
Kloning repositori:
git clone https://github.com/jbpassot/flutter_voice_friend.gitcd flutter_voice_friend
Instal dependensi:
getar pub dapatkan
Hasilkan kode Isar:
lari cepat build_runner build
Jalankan perintah berikut untuk menghasilkan kode untuk Isar (database NoSQL tertanam untuk Flutter):
Tambahkan Kunci API:
Ganti nama .env.example
menjadi .env
.
Tambahkan kunci OpenAI dan Deepgram API Anda ke file .env
.
Jalankan aplikasi:
lari berdebar
Konfigurasikan Pengaturan:
Anda dapat mengakses pengaturan aplikasi dengan mengetuk ikon roda gigi di pojok kanan atas.
Menikmati!
Anda dapat mencoba aplikasi dengan dua aktivitas demo: 'Pendahuluan' dan 'Bisikan Analis Mimpi'.
Jika Anda menguji pada simulator iOS, pastikan untuk mengubah metode Ucapan-Ke-Teks (STT) untuk menggunakan 'Deepgram' dan bukan 'Pada Perangkat', karena TTS pada perangkat mungkin tidak berfungsi dengan baik pada simulator iOS.
Perubahan pengaturan ini memerlukan kunci API Deepgram yang valid. Kunjungi situs web Deepgram untuk mendapatkan kunci.
Anda dapat menyesuaikan pengaturan ini langsung di dalam aplikasi dengan mengetuk ikon roda gigi di pojok kanan atas.
Aplikasi ini menggunakan berbagai layanan eksternal seperti OpenAI untuk pembuatan teks dan Deepgram untuk ucapan-ke-teks. Pastikan untuk mengonfigurasinya di file .env
.
OPENAI_API_KEY=kunci_openai_api_AndaDEEPGRAM_API_KEY=kunci_deepgram_api_key_Anda
Untuk panduan memulai cepat dalam membuat aktivitas baru, silakan lihat file SIMPLE_TUTORIAL.md.
Kami menyambut kontribusi! Silakan periksa file CONTRIBUTING.md untuk panduan tentang cara berkontribusi.
Proyek ini dilisensikan di bawah Lisensi Internasional Creative Commons Attribution-NonCommercial-ShareAlike 4.0 . Lihat file LISENSI untuk detailnya.
Jika Anda memiliki pertanyaan atau masukan, jangan ragu untuk membuka masalah atau menghubungi kami di [[email protected]].