8 คะแนน โดย GN⁺ 2025-03-10 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • การตรวจจับจังหวะการพูด เป็นหนึ่งในความสามารถที่สำคัญที่สุดในสแตก Voice AI โดยเป็นเทคโนโลยีที่ใช้ ตัดสินว่าตัวแทนเสียงควรตอบเมื่อใด ขณะที่มนุษย์กำลังพูด
  • ตัวแทนเสียงส่วนใหญ่ใช้ VAD (Voice Activity Detection) เป็นฐานในการแยกเสียงออกเป็นช่วงที่มีเสียงพูดและไม่มีเสียงพูด จึง ไม่ได้สะท้อนความหมายเชิงเสียงหรือเชิงภาษา
  • มนุษย์ ตรวจจับจังหวะการพูด ผ่านสัญญาณที่ซับซ้อน เช่น ไวยากรณ์ น้ำเสียง และความเร็วในการพูด
    • เป้าหมาย: สร้างโมเดลที่ใกล้เคียงกับความคาดหวังของมนุษย์มากกว่าแนวทางแบบอิง VAD
  • โครงการพัฒนาโมเดลตรวจจับจังหวะการพูดของเสียงแบบโอเพนซอร์สที่ขับเคลื่อนโดยชุมชน
    • ใบอนุญาต BSD 2-clause → ทุกคนสามารถใช้งาน ฟอร์ก และมีส่วนร่วมได้
    • โครงการเริ่มต้นจากระบบนิเวศของ Pipecat
    • Pipecat: เฟรมเวิร์ก AI ด้านเสียงและมัลติโหมดแบบโอเพนซอร์สที่ไม่ผูกกับผู้ให้บริการรายใดรายหนึ่ง
  • เป้าหมายของโครงการ
    • เป้าหมายระดับสูง
      • ใช้งานได้ง่ายสำหรับทุกคน
      • นำไปดีพลอยในโปรดักชันได้ง่าย
      • ปรับจูนละเอียดให้เหมาะกับแอปพลิเคชันเฉพาะได้อย่างง่ายดาย
    • ข้อจำกัดของโมเดลในปัจจุบัน
      • รองรับเฉพาะภาษาอังกฤษ
      • ความเร็วในการอนุมานค่อนข้างช้า: ประมาณ 150ms บน GPU และประมาณ 1500ms บน CPU
      • ข้อมูลฝึกส่วนใหญ่เน้นคำพูดที่ไม่จบสมบูรณ์ (filler words) ซึ่งเกิดขึ้นบริเวณท้ายเซกเมนต์
    • เป้าหมายระยะกลาง
      • รองรับหลายภาษา
      • เวลาอนุมาน: ไม่เกิน 50ms บน GPU และไม่เกิน 500ms บน CPU
      • สะท้อนข้อมูลฝึกที่ครอบคลุมความแตกต่างเชิงนัยของเสียงพูดได้กว้างขึ้น
      • สร้างไปป์ไลน์สร้างข้อมูลสังเคราะห์แบบสมบูรณ์
      • รองรับการทำ conditioning แบบอิงข้อความ (เช่น การกรอกบัตรเครดิต หมายเลขโทรศัพท์ ที่อยู่ ฯลฯ)
  • สถาปัตยกรรมของโมเดล
    • ใช้แบ็กโบน Wav2Vec2-BERT ของ Meta AI (จำนวนพารามิเตอร์: 580M)
      • ใช้ข้อมูลเสียงสำหรับการเรียนรู้แบบไม่มีผู้กำกับ 4.5 ล้านชั่วโมง ครอบคลุม 143 ภาษา
    • โครงสร้างโมเดลปัจจุบัน:
      • Wav2Vec2-BERT → ตัวจำแนก 2 เลเยอร์ (classification head)
      • ใช้ Wav2Vec2BertForSequenceClassification ของ Hugging Face
    • สถาปัตยกรรมที่กำลังทดลองอยู่:
      • กำลังทดสอบว่าตัวจำแนกแบบเรียบง่ายจะยังมีประสิทธิภาพหรือไม่เมื่อขยายชุดข้อมูล
      • กำลังพิจารณาความเป็นไปได้ในการนำโครงสร้างที่ซับซ้อนยิ่งขึ้นมาใช้

1 ความคิดเห็น

 
GN⁺ 2025-03-10
ความคิดเห็นบน Hacker News
  • เคยใช้ pipecat และชอบมันมาก แต่ย้ายไปใช้ sherpa-onnx เพราะคอมไพล์แบบเนทีฟได้และรันบนอุปกรณ์เอดจ์ได้

    • ตอนใช้แอป Google Translate มักจะพูดประโยคยาว ๆ แล้วหยุดชั่วคราวหรือพูดช้าลง เลยหลีกเลี่ยงโหมดสนทนา
    • ปัญหานี้ต้องอาศัยการตรวจจับจังหวะสลับพูดที่มีความหน่วงต่ำ การตรวจจับการขัดจังหวะเสียงพูด และ LLM แบบ low-latency ที่เร็วมาก
    • ต้องมีความสามารถในการกู้คืนที่ดี เพื่อให้ระบบพูดต่อจากประโยคสุดท้ายได้โดยไม่ทิ้งเสียงก่อนหน้า
    • เพื่อปรับปรุง i/o latency จำเป็นต้องใช้ audio API ที่มีความหน่วงต่ำ บัฟเฟอร์เสียงที่สั้นมาก รวมถึงหมวดหมู่และโหมดเสียงเฉพาะ
    • ไม่แน่ใจว่าสามารถใช้ TTS ในโหมดสตรีมมิงได้หรือไม่
    • push-to-talk ที่ออกแบบมาดีอาจเป็นทางออกที่ดี
  • วันนี้มีอัปเดตที่น่าสนใจอยู่บ้าง

    • inference 100ms โดยใช้ CoreML
    • โมเดล LSTM ที่ฝึกด้วยชุดย่อยของข้อมูล
  • ได้คำตอบเกือบทั้งหมดจาก README เขียนไว้ดีมาก

  • สงสัยว่าสามารถแชร์ทรัพยากรและปริมาณที่ต้องใช้ในการ fine-tune Wav2Vec2-BERT ได้หรือไม่

  • สงสัยว่าการตรวจจับจังหวะสลับพูดคืออะไร

  • ดีใจที่ได้เห็นเทคโนโลยีนี้พัฒนาต่อไป

    • ตั้งแต่ระบบเสียงที่แย่มากอย่าง Siri ไปจนถึงโหมดเสียงของ ChatGPT คอมพิวเตอร์ยังทำเรื่องนี้ได้ไม่ดี
    • นี่อาจเป็นอุปสรรคใหญ่ที่สุดที่ทำให้ 'เอเจนต์' ทำงานง่าย ๆ แต่มีประโยชน์ได้ยาก
    • ยังมีอีกหลายสถานการณ์ที่ AI ทำได้ไม่ดี และความผิดพลาดเหล่านี้อาจทำลายประสิทธิภาพของบทสนทนาหรือก่อให้เกิดความผิดพลาดเชิงฟังก์ชันร้ายแรงได้
  • ในฐานะคนที่ได้รับการวินิจฉัยว่าเป็นออทิสติกจาก HF อยากนำเทคโนโลยีนี้ไปใช้กับหูฟังเอียร์พีซ

  • หลังจากดูโมเดลแบบอิงจังหวะสลับพูดมาหลายตัว พบว่าการนำไปใช้มีความสอดคล้องกันมาก รอดูว่าเทคโนโลยีนี้จะพัฒนาไปอย่างไร

  • อยากให้ Vedal รวมเทคโนโลยีนี้เข้ากับโมเดลของ Neuro-sama กรณีที่เปลี่ยนจากบอต osu ไปเป็น AI Vtuber

  • สงสัยว่ารองรับผู้พูดหลายคนหรือไม่

  • กำลัง fork อยู่