Parakeet TDT
Parakeet TDT คือโมเดลการรู้จำเสียงพูดของ NVIDIA ที่ปรับให้รันบน Neural Engine ของ Apple Silicon ผ่าน CoreML โมเดลใช้ FastConformer encoder จับคู่กับ Token-and-Duration Transducer (TDT) decoder เพื่อการถอดเสียงที่แม่นยำและมีประสิทธิภาพ
สถาปัตยกรรม
โมเดลถูกแบ่งออกเป็นไฟล์ CoreML สามไฟล์ที่ทำงานร่วมกันระหว่างการอนุมาน:
| ส่วนประกอบ | คำอธิบาย |
|---|---|
| Encoder | FastConformer — ชั้น convolutional + self-attention สำหรับการสกัดคุณลักษณะเสียง |
| Decoder | เครือข่ายทำนายที่เก็บประวัติของ token ข้อความ |
| Joint | รวมเอาต์พุตของ encoder และ decoder เพื่อสร้างความน่าจะเป็นของ token |
Encoder ถูกควอนไทซ์เป็น INT8 เพื่อใช้หน่วยความจำน้อยที่สุดและรันบน Neural Engine ได้รวดเร็ว ส่วน decoder และ joint network มีขนาดเล็กพอจึงไม่จำเป็นต้องควอนไทซ์
รุ่นของโมเดล
| โมเดล | ขนาด | HuggingFace |
|---|---|---|
| Parakeet-TDT-0.6B (CoreML INT8) | 500 MB | aufklarer/Parakeet-TDT-v3-CoreML-INT8 |
ประสิทธิภาพ
| ตัวชี้วัด | ค่า |
|---|---|
| Real-time factor | ~32 เท่าของเรียลไทม์บน Apple Silicon Neural Engine |
| เป้าหมายการประมวลผล | Neural Engine (ผ่าน CoreML) |
| การควอนไทซ์ | INT8 |
การใช้งาน CLI
ใช้แฟล็ก --engine parakeet เพื่อเลือก Parakeet TDT แทน Qwen3-ASR ที่เป็นค่าเริ่มต้น:
.build/release/speech transcribe recording.wav --engine parakeet
CoreML เทียบกับ MLX
Parakeet TDT ใช้ CoreML เพื่อรันบน Neural Engine ในขณะที่ Qwen3-ASR ใช้ MLX เพื่อรันบน GPU แบบ Metal ทั้งสองแนวทางมีข้อแลกเปลี่ยนที่ต่างกัน:
| Parakeet TDT (CoreML) | Qwen3-ASR (MLX) | |
|---|---|---|
| เป้าหมายการประมวลผล | Neural Engine | Metal GPU |
| ความเร็ว | ~32 เท่าของเรียลไทม์ | ~17 เท่าของเรียลไทม์ |
| สถาปัตยกรรม | FastConformer + TDT | Encoder-decoder transformer |
| หลายภาษา | เน้นภาษาอังกฤษ | หลายภาษา |
| การควอนไทซ์ | INT8 | 4-bit (MLX) |
โมเดล CoreML รันบน Neural Engine ซึ่งทำงานเป็นอิสระจาก GPU นั่นหมายความว่า Parakeet TDT สามารถรันคู่ขนานไปกับงานที่ใช้ GPU เช่น TTS ได้โดยไม่ต้องแย่งทรัพยากร
รุ่นแบบสตรีมมิ่ง
สำหรับการบอกพิมพ์แบบเรียลไทม์และคำบรรยายสด ดู Parakeet-EOU-120M — รุ่น RNN-T ที่เล็กกว่า (120 MB) พร้อมหัว end-of-utterance ที่ชัดเจน ออกแบบให้รันแบบทีละเฟรมบน chunk เสียงขนาด 640 ms ใช้ vocabulary SentencePiece ร่วมกับ Parakeet TDT 0.6B แต่ปรับให้เน้นความหน่วงของผลลัพธ์บางส่วนที่ต่ำกว่าหนึ่งวินาทีแทน throughput สูงสุด
มีให้ใช้งานบน Android & Linux ผ่าน ONNX Runtime ด้วย