Miley Chatbot
CS341 Big Data: แชทบอทแนะนำสินค้า

บทบาท
AI/ML Engineer
ระยะเวลา
2025
ทีม
Group Project
Tech Stack
LLM, QWEN, Python, NLU, Hugging Face, GPU Cloud (Runpod.io)
โปรเจกต์กลุ่มในรายวิชา CS341 (Big Data) สำหรับพัฒนาแชทบอทแนะนำสินค้าโดยใช้โมเดลภาษา (LLM) และกระบวนการจัดการข้อมูลขนาดใหญ่แบบครบวงจร ระบบถูกออกแบบให้ทำงานด้วยเทคโนโลยีแบบ Open Source ทั้งหมด โดยมีขั้นตอนตั้งแต่การทำความเข้าใจข้อความลูกค้า การค้นหาสินค้าที่เกี่ยวข้องด้วย Vector Search ไปจนถึงการสรุปคำตอบให้เป็นภาษาธรรมชาติที่เหมาะสมกับบริบท
01 ปัญหา
- ลูกค้ามักค้นหาสินค้าที่ต้องการไม่พบเมื่อข้อมูลมีจำนวนมากและหลากหลาย ทำให้การค้นหาแบบเดิมไม่ตอบโจทย์
- แชทบอทแบบ Rule-based มีข้อจำกัดในการทำความเข้าใจภาษาธรรมชาติและบริบทความต้องการของผู้ใช้
- ต้องการระบบที่เชื่อมการทำความเข้าใจข้อความเข้ากับการค้นหาข้อมูลสินค้า และสามารถสรุปผลลัพธ์ให้ตอบได้อย่างเป็นธรรมชาติ
02 แนวทางแก้ไข
- ใช้โมเดล Qwen (LLM) และเครื่องมือจาก Hugging Face เพื่อพัฒนาส่วนประมวลผลภาษาธรรมชาติ พร้อมใช้งาน GPU Cloud (Runpod.io) สำหรับการทดลอง ปรับจูน และประเมินผลโมเดลอย่างมีประสิทธิภาพ
- ออกแบบโมดูล LLM แยกเป็น 2 ส่วนหลัก: (1) Entity/Intent Extractor สำหรับแยกเจตนาและข้อมูลสำคัญจากข้อความลูกค้าก่อนส่งต่อไปยัง Vector Search และ (2) Composer สำหรับนำรายการสินค้าที่ได้จาก Vector Search มาประมวลผลร่วมกับบริบท แล้วจัดรูปแบบคำตอบให้เหมาะสมก่อนส่งกลับผู้ใช้
- ปรับจูน (Tuning) และปรับแต่ง Prompt/Instruction ให้สอดคล้องกับงานแนะนำสินค้า เพื่อลดคำตอบที่คลาดเคลื่อนและเพิ่มความสม่ำเสมอของผลลัพธ์
- ออกแบบ Data Pipeline เพื่อรองรับการเตรียมข้อมูล การไหลของข้อความ (Query) ไปยังโมดูลต่าง ๆ และการส่งต่อผลลัพธ์ระหว่าง LLM กับระบบค้นหาเชิงเวกเตอร์อย่างเป็นระบบ
03 ผลลัพธ์
- ระบบสามารถทำความเข้าใจข้อความลูกค้า แยก Entity/Intent ได้ก่อนเข้าสู่ขั้นตอนค้นหา ทำให้การดึงสินค้าที่เกี่ยวข้องมีความแม่นยำและมีโครงสร้างมากขึ้น
- Composer สามารถสรุปและเรียบเรียงผลลัพธ์จาก Vector Search ให้เป็นคำตอบที่เป็นธรรมชาติและสอดคล้องกับบริบทการสนทนา
- ได้ประสบการณ์การพัฒนาโซลูชัน LLM แบบ End-to-End ตั้งแต่ Data Pipeline, การสั่งงานโมเดล, การประเมินผล และการปรับจูนเพื่อให้ได้ประสิทธิภาพที่ดีขึ้น โดยใช้ Open Source เป็นหลัก
Project Gallery
ตัวอย่างการตอบคำถามของแชทบอท (1)
ตัวอย่างการตอบคำถามของแชทบอท (2)
ตัวอย่างการตอบคำถามของแชทบอท (3)
ตัวอย่างการตอบคำถามของแชทบอท (4)
ตัวอย่างการตอบคำถามของแชทบอท (5)
ตัวอย่างการตอบคำถามของแชทบอท (6)

หน้าระบบ Monitoring การทำงานของ QWEN LLM ที่ผมพัฒนา

หน้าระบบ Monitoring การทำงานของ QWEN LLM ที่ผมพัฒนา (ต่อ)

หน้าระบบ Monitoring การทำงานของ QWEN LLM ที่ผมพัฒนา ส่วนการตรวจสอบ input/response (ต่อ)

หน้าระบบ Monitoring การทำงานของ QWEN LLM ที่ผมพัฒนา ส่วนการตรวจสอบ input/response (ต่อ)

หน้าระบบ Monitoring Proxy Server ที่เชื่อมระหว่าง LLM กับ Vector Search และส่วน Orchestrator