Yuuka Discord Bot
SoftwareInfrastructureArtificial Intelligence
29/07/2022 — Present

Yuuka Discord Bot

บอท Discord อเนกประสงค์ที่รวมพลัง AI และเครื่องมือจัดการภาพและเสียงไว้ในที่เดียว เพื่อการดูแลชุมชนและการสื่อสารที่สมบูรณ์แบบยิ่งขึ้น รวมถึงเตะผู้ใช้ด้วย

RoleFull-stack Developer & Bot Architect
ContextPersonal Project
StackPython, discord.py, OpenCV, Docker, OpenAI API, Azure Cognitive Services

1. ที่มาและความตั้งใจ

โครงการ YuukaDiscordBot พัฒนาขึ้นเพื่อแก้ปัญหาความยุ่งยากในการบริหารจัดการเซิร์ฟเวอร์ Discord และการเข้าถึงเครื่องมืออำนวยความสะดวกที่หลากหลาย โดยมุ่งเน้นการสร้างระบบบอทตัวเดียวที่สามารถรองรับความต้องการได้ครบวงจร ตั้งแต่การบริหารจัดการสมาชิก การเช็คชื่อเข้าประชุม ไปจนถึงการประมวลผลภาพและเสียงด้วยเทคโนโลยีระดับสูง เพื่อสร้างประสบการณ์การใช้งานที่ไร้รอยต่อภายในแอปพลิเคชันเดียว

image.png

2. ระบบจัดการสื่อประสมและการประมวลผลภาพ

ระบบรองรับการประมวลผลภาพและวิดีโอผ่านคำสั่ง Context Menu และ Slash Commands โดยใช้ไลบรารี OpenCV และ Pillow ในการจัดการงานด้านกราฟิก เช่น การสร้าง QR Code ที่มีความละเอียดสูง การปรับขนาดภาพ (Resize/Scale) การค้นหาภาพที่คล้ายกัน (Search by Image) รวมถึงการประยุกต์ใช้เอฟเฟกต์ภาพในรูปแบบต่าง ๆ เช่น Deepfry และ Grayscale เพื่อเพิ่มสีสันในการตอบโต้ภายในชุมชน

image.png

3. การบูรณาการปัญญาประดิษฐ์และการสนทนาอัตโนมัติ

มีการนำเทคโนโลยี Generative AI จาก OpenAI มาเชื่อมต่อเพื่อให้บอทสามารถโต้ตอบกับผู้ใช้ได้อย่างชาญฉลาดผ่านโหมด AI Chatbot

image.png

นอกจากนี้ยังรวมถึงระบบค้นหาข้อมูลจาก Reddit และ YouTube เพื่อนำข้อมูลมานำเสนอในรูปแบบที่สรุปผลและเข้าถึงง่าย ช่วยเพิ่มประสิทธิภาพในการสืบค้นข้อมูลผ่านอินเทอร์เฟซของ Discord โดยตรง

image.png

ไปลองดูกันได้ที่ https://youtu.be/LWZdG6_boNU?si=lPdRJ6WTa23a3hNK (ขายของหน่อย😅)

4. ระบบบริหารจัดการเสียงและเทคโนโลยี Voice Conversion

ภายใต้คอนเซปต์ "ยกเครื่อง เรื่องเสียง" ระบบได้นำเทคโนโลยี RVC (Retrieval-based Voice Conversion) มาใช้งานร่วมกับ Azure Cognitive Services และ gTTS เพื่อสร้างระบบ Text-to-Speech (TTS) ที่มีคุณภาพสูงและมีความเป็นธรรมชาติ รวมถึงความสามารถในการจัดการไฟล์เสียงและวิดีโอจาก YouTube เพื่อนำมาใช้งานในแชทเสียง (Voice Channel) ได้อย่างเต็มประสิทธิภาพ

image.png

ไม่มี GPU...มีแต่ CPU ที่ช้าสุดใจ🫥

5. การจัดการข้อมูลและระบบตรวจสอบประสิทธิภาพ

ระบบประกอบด้วยโมดูลการบริหารจัดการข้อมูลสำหรับการเช็คชื่อเข้าประชุม (Attendance System) ซึ่งสามารถส่งออกข้อมูลเป็นไฟล์ Excel (.xlsx) ผ่านไลบรารี pyexcel เพื่อความสะดวกในการตรวจสอบย้อนหลัง

image.png

นอกจากนี้ยังมีระบบ Real-time Monitoring ที่แสดงผลสถานะการทำงานของ CPU และ RAM ของเครื่องโฮสต์ผ่านสถานะ (Status) ของบอท เพื่อให้ผู้ดูแลระบบสามารถตรวจสอบความเสถียรได้ตลอดเวลา

image.png

6. ความปลอดภัยและโครงสร้างพื้นฐาน

ตัวระบบถูกออกแบบด้วยสถาปัตยกรรมแบบ Modular (Cogs) โดยใช้ภาษา Python เป็นหลัก ทำให้ง่ายต่อการบำรุงรักษาและเพิ่มขยายฟังก์ชันในอนาคต โครงสร้างพื้นฐานมีการทำ Containerization ด้วย Docker เพื่อความสะดวกในการ Deploy และจำกัดขอบเขตการเข้าถึงทรัพยากร รวมถึงมีระบบ Automatic Cleanup เพื่อจัดการไฟล์ชั่วคราว (Temp files) ทุก 12 ชั่วโมง เพื่อรักษาประสิทธิภาพสูงสุดของระบบในระยะยาว

Discord BotAI IntegrationMedia ProcessingAutomation