FlutterVoiceFriend เป็นแอปพลิเคชัน Flutter แบบโอเพ่นซอร์สที่ออกแบบมาเพื่อช่วยนักพัฒนาสร้างประสบการณ์แชทบอทแบบโต้ตอบและขับเคลื่อนด้วยเสียงโดยใช้การผสมผสานระหว่างเทคโนโลยีการแปลงคำพูดเป็นข้อความ (STT) และการแปลงข้อความเป็นคำพูด (TTS) ที่ล้ำสมัย แอปใช้ประโยชน์จาก Langchain, OpenAI สำหรับการประมวลผลภาษาธรรมชาติและ TTS รวมถึงการจดจำเสียงพูดทั้งบนอุปกรณ์และบนคลาวด์ (รวมถึง Deepgram) เพื่อมอบความสามารถในการโต้ตอบด้วยเสียงที่ยืดหยุ่น
ไม่ว่าคุณกำลังพัฒนาผู้ช่วยเสมือน เครื่องมือ AI การสนทนา หรือคู่หูทางเสียงเพื่อการศึกษา FlutterVoiceFriend มอบรากฐานที่มั่นคงสำหรับการสร้างแอปพลิเคชันแบบสั่งงานด้วยเสียงที่ปรับแต่งได้
Chatbot จากเสียงเป็นเสียง:
FlutterVoiceFriend ช่วยให้การสนทนาด้วยเสียงราบรื่นโดยใช้เทคโนโลยี STT และ TTS ขั้นสูง ผู้ใช้สามารถพูดคุยกับแอปได้ และแอปจะตอบสนองผ่านเอาต์พุตเสียงที่เป็นธรรมชาติ
ตัวเลือกการรู้จำเสียงหลายเสียง:
การสนับสนุนเทคโนโลยี STT ทั้งบนอุปกรณ์และบนคลาวด์ทำให้มั่นใจได้ว่าแอปสามารถจัดการอินพุตเสียงในสภาพแวดล้อมที่หลากหลายด้วยความสามารถของอุปกรณ์ที่แตกต่างกัน
ยืดหยุ่นและโมดูลาร์:
สามารถปรับแต่งแอปได้อย่างง่ายดายเพื่อให้เหมาะกับกรณีการใช้งานที่หลากหลาย เช่น ผู้ช่วยเสมือน บอทสนทนา แอปด้านการศึกษา หรือแพลตฟอร์มความบันเทิง
นักพัฒนาสามารถปรับเปลี่ยนโฟลว์แชทบอท การตอบสนอง และพฤติกรรมเพื่อปรับแต่งประสบการณ์ให้ตรงกับความต้องการเฉพาะของพวกเขาได้
สร้างด้วย Flutter:
พัฒนาโดยใช้ Flutter SDK เพื่อให้มั่นใจถึงความเข้ากันได้ทั้ง iOS, Android และแพลตฟอร์มเว็บ แอปนี้มอบประสบการณ์ผู้ใช้ที่ราบรื่นด้วยโค้ดเบสเดียว
การประมวลผลภาษาธรรมชาติด้วย Langchain และ OpenAI:
ผสานรวมโมเดลอันทรงพลังของ OpenAI เพื่อสร้างการสนทนาที่เป็นธรรมชาติและสอดคล้องกัน
ใช้ Langchain สำหรับโฟลว์การสนทนาที่ซับซ้อน ช่วยให้บอทสามารถจัดการกับบทสนทนาที่เหมาะสมยิ่งขึ้น
การตอบสนองด้วยเสียงที่ปรับแต่งได้:
ปรับแต่งกลไก TTS ให้เข้ากับบุคลิกของแชทบอทของคุณ เลือกจากเสียงและภาษาที่หลากหลายเพื่อสร้างประสบการณ์ผู้ใช้ที่เป็นส่วนตัว
ความยืดหยุ่นในการพูดเป็นข้อความ:
รวมตัวเลือก STT บนอุปกรณ์เพื่อการประมวลผลออฟไลน์ที่เร็วขึ้น และ STT บนคลาวด์ (เช่น Deepgram) เพื่อการรู้จำเสียงพูดที่แม่นยำยิ่งขึ้นในสภาพแวดล้อมออนไลน์
ผู้ช่วยเสมือน : สร้างผู้ช่วยเสมือนที่สั่งงานด้วยเสียงอัจฉริยะเพื่อช่วยในงาน การแจ้งเตือน หรือข้อมูลทั่วไป
แอปเพื่อการศึกษา : สร้างเพื่อนร่วมสนทนาที่จะแนะนำผู้ใช้ผ่านประสบการณ์การเรียนรู้ด้วยเสียงตอบรับ
ความบันเทิงและเกม : พัฒนาแอปที่ขับเคลื่อนด้วยเรื่องราวแบบโต้ตอบซึ่งผู้ใช้สื่อสารกับตัวละครโดยใช้การป้อนข้อมูลด้วยเสียง
การดูแลสุขภาพและความเป็นอยู่ที่ดี : สร้างเสียงเป็นเพื่อนสำหรับการติดตามสุขภาพ การสนับสนุนทางอารมณ์ หรือคำแนะนำในการออกกำลังกาย
"FlutterVoiceFriend" ได้รับการพัฒนาครั้งแรกสำหรับแอปแบบโต้ตอบและมีส่วนร่วมซึ่งออกแบบมาเพื่อช่วยให้เด็กๆ สำรวจอารมณ์ของตนเองและปลูกฝังการมีสติผ่านการทำสมาธิแบบมีคำแนะนำและแบบฝึกหัดการไตร่ตรองตนเอง เพื่อนในตัวฉันแนะนำเด็กๆ ผ่านกิจกรรมต่างๆ ที่มีทั้งการทำสมาธิและการไตร่ตรองในธรรมชาติ เป้าหมายคือการสอนให้เด็กๆ มีความเห็นอกเห็นใจในตนเอง มีสติ และตระหนักรู้ทางอารมณ์ผ่านแบบฝึกหัดที่สนุกสนาน เรียบง่าย และมีส่วนร่วม
iOS (iPhone หรือ iPad):
ดาวน์โหลดแอปจาก App Store
Flutter SDK : การพัฒนาข้ามแพลตฟอร์มสำหรับ iOS, Android และเว็บ
การรู้จำเสียง : ผสานรวม STT บนอุปกรณ์และบนคลาวด์ (เช่น speech_to_text
และ deepgram_speech_to_text
)
แบ็กเอนด์เสียง : สามารถใช้ไลบรารี SoLoud และการเสียบ just_audio ได้
ข้อความเป็นคำพูด : ขับเคลื่อนโดย OpenAI เพื่อเอาต์พุตเสียงที่เป็นธรรมชาติ
การประมวลผลโมเดลภาษาขนาดใหญ่ : ใช้โมเดล Langchain และ OpenAI เพื่อจัดการกับกระแสการสนทนาที่ซับซ้อน
ในเวอร์ชันปัจจุบัน มีฟีเจอร์และการปรับปรุงหลายอย่างที่วางแผนไว้แต่ยังไม่ได้นำไปใช้ โปรดทราบข้อจำกัดต่อไปนี้:
iOS และ Android เท่านั้น: ขณะนี้แอปใช้งานได้กับอุปกรณ์ iOS และ Android เท่านั้น การสนับสนุนสำหรับเว็บมีให้บริการในสาขา แต่ยังไม่มีการใช้แพลตฟอร์ม Linux, Windows และ Mac ที่มีการกำหนดค่าพิเศษ
ความคิดเห็นของผู้ใช้: ไม่มีกลไกในตัวสำหรับการรวบรวมความคิดเห็นของผู้ใช้ภายในแอป
เอกสารสำหรับนักพัฒนา: ยังไม่มีเอกสารที่ครอบคลุมสำหรับนักพัฒนา
ความคิดเห็นเกี่ยวกับโค้ด: ส่วนสำคัญของโค้ดเบสยังคงต้องการความคิดเห็นที่เพียงพอ
เสียงพื้นหลัง: ยังไม่มีการใช้เพลงพื้นหลังหรือเสียงธรรมชาติระหว่างกิจกรรมการทำสมาธิ
การตรวจสอบสิทธิ์ผู้ใช้: ฟังก์ชันการลงชื่อเข้าใช้ของผู้ใช้ไม่พร้อมใช้งาน
โหมดออฟไลน์: ขณะนี้แอปไม่รองรับการทำงานแบบออฟไลน์
การวิเคราะห์ข้อมูลผู้ใช้: ไม่มีการใช้การวิเคราะห์การใช้งานแบบไม่เปิดเผยตัวตน
การแยกข้อกังวล: ตรรกะทางธุรกิจของแอปไม่ได้แยกออกจากส่วนประกอบ UI อย่างสมบูรณ์
การบันทึกข้อผิดพลาด: ยังไม่มีเครื่องมือบันทึกข้อผิดพลาดและการตรวจสอบที่มีประสิทธิภาพ
การทดสอบหน่วยและบูรณาการ: ยังไม่ได้ใช้การทดสอบหน่วยที่ครอบคลุมและการทดสอบบูรณาการ
CI/CD: ไม่ได้ตั้งค่าไปป์ไลน์การรวมและการปรับใช้อย่างต่อเนื่อง
กระพือ SDK >= 3.4.4
โผ >= 3.4.4
โคลนที่เก็บ:
คอมไพล์โคลน https://github.com/jbpassot/flutter_voice_friend.gitcd flutter_voice_friend
ติดตั้งการพึ่งพา:
กระพือผับได้
สร้างรหัส Isar:
โผรัน build_runner build
รันคำสั่งต่อไปนี้เพื่อสร้างโค้ดสำหรับ Isar (ฐานข้อมูล NoSQL แบบฝังสำหรับ Flutter):
เพิ่มคีย์ API:
เปลี่ยนชื่อ .env.example
เป็น . .env
เพิ่มคีย์ OpenAI และ Deepgram API ของคุณลงในไฟล์ . .env
เรียกใช้แอป:
วิ่งกระพือ
กำหนดการตั้งค่า:
คุณสามารถเข้าถึงการตั้งค่าของแอปได้โดยแตะไอคอนรูปเฟืองที่มุมขวาบน
สนุก!
คุณสามารถลองใช้แอปด้วยกิจกรรมสาธิตสองกิจกรรม: 'บทนำ' และ 'กระซิบนักวิเคราะห์ความฝัน'
หากคุณกำลังทดสอบบนเครื่องจำลอง iOS ตรวจสอบให้แน่ใจว่าได้เปลี่ยนวิธีคำพูดเป็นข้อความ (STT) เพื่อใช้ 'Deepgram' แทน 'บนอุปกรณ์' เนื่องจาก TTS บนอุปกรณ์อาจทำงานไม่ถูกต้องบนเครื่องจำลอง iOS
การเปลี่ยนแปลงการตั้งค่านี้ต้องใช้คีย์ Deepgram API ที่ถูกต้อง เยี่ยมชมเว็บไซต์ของ Deepgram เพื่อรับรหัส
คุณสามารถปรับการตั้งค่าเหล่านี้ได้โดยตรงภายในแอปโดยแตะไอคอนรูปเฟืองที่มุมขวาบน
แอปใช้บริการภายนอกต่างๆ เช่น OpenAI สำหรับการสร้างข้อความและ Deepgram สำหรับการแปลงคำพูดเป็นข้อความ ตรวจสอบให้แน่ใจว่าได้กำหนดค่าสิ่งเหล่านี้ในไฟล์ . .env
OPENAI_API_KEY=your_openai_api_keyDEEPGRAM_API_KEY=your_deepgram_api_key
สำหรับคู่มือเริ่มต้นอย่างรวดเร็วในการสร้างกิจกรรมใหม่ โปรดดูไฟล์ SIMPLE_TUTORIAL.md
เรายินดีรับการมีส่วนร่วม! โปรดตรวจสอบไฟล์ CONTRIBUTING.md เพื่อดูคำแนะนำเกี่ยวกับวิธีการมีส่วนร่วม
โครงการนี้ได้รับอนุญาตภายใต้ Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License ดูไฟล์ใบอนุญาตสำหรับรายละเอียด
หากคุณมีคำถามหรือข้อเสนอแนะ โปรดเปิดประเด็นหรือติดต่อเราที่ [[email protected]]