Moonshine Voice
Giao Diện Giọng Nói Cho Mọi Người
Moonshine là một toolkit AI mã nguồn mở dành cho các nhà phát triển xây dựng ứng dụng giọng nói thời gian thực.
- Hoạt động hoàn toàn trên thiết bị, nhanh chóng và bảo mật, không cần tài khoản.
- Tối ưu cho các ứng dụng streaming, cung cấp phản hồi độ trễ thấp.
- Dễ dàng tích hợp trên nhiều nền tảng như Python, iOS, Android, và Windows.
- Hỗ trợ nhiều ngôn ngữ như tiếng Anh, Tây Ban Nha, Hoa, Nhật, Hàn, Việt Nam và Ả Rập.
Quickstart
Python
pip install moonshine-voice
python -m moonshine_voice.mic_transcriber --language en
iOS
Tải và mở dự án Transcriber.xcodeproj trong Xcode.
Android
Tải và mở thư mục Transcriber trong Android Studio.
Linux
git clone https://github.com/moonshine-ai/moonshine
cd core
mkdir build
cmake ..
cmake --build .
./moonshine-cpp-test
MacOS
Tải và mở dự án MicTranscription.xcodeproj trong Xcode.
Raspberry Pi
sudo pip install --break-system-packages moonshine-voice
python -m moonshine_voice.mic_transcriber --language en
Khi Nào Chọn Moonshine Thay Vì Whisper?
Moonshine hoạt động tốt hơn Whisper trong các ứng dụng giọng nói trực tiếp nhờ độ trễ thấp và sự tối ưu hóa cho thiết bị cạnh.
| Model | WER | Parameters | MacBook Pro | Linux x86 |
|---|---|---|---|---|
| Moonshine Medium Streaming | 6.65% | 245 triệu | 107ms | 269ms |
| Whisper Large v3 | 7.44% | 1.5 tỷ | 11,286ms | 16,919ms |
Sử dụng Thư viện
Moonshine API cung cấp giải pháp toàn diện cho các thao tác phổ biến như phiên âm giọng nói, nhận diện người nói và nhận lệnh mà không cần chuyên môn sâu.
Cấu Trúc Hệ Thống
- Tạo đối tượng
TranscriberhoặcIntentRecognizer. - Gắn kết
EventListenerđể đáp ứng lại các sự kiện.
class TestListener(TranscriptEventListener):
def on_line_started(self, event):
print(f"Line started: {event.line.text}")
Kiến trúc
Moonshine bao gồm tất cả các bước trong một thư viện đơn để chuyển âm thanh giọng nói thành các sự kiện hoặc văn bản có thể phản hồi.
Nhận Lệnh
Ví dụ
Chạy lệnh:
python -m moonshine_voice.intent_recognizer
Xây dựng giao diện giọng nói dễ dàng với khả năng nhận diện lệnh từ ngôn ngữ tự nhiên.
Ví Dụ
Tìm các ví dụ mã nguồn trong thư mục examples trên GitHub.
DEBUG
Lưu Âm Thanh Đầu Vào
Đặt save_input_wav_path khi tạo Transcriber để lưu lại âm thanh đầu vào cho kiểm tra chất lượng phiên âm.
Cần Giúp Đỡ?
Tham gia cộng đồng Moonshine trên Discord để nhận sự hỗ trợ.
Cảm ơn
Moonshine cảm ơn Lambda và cộng đồng ONNX Runtime.
License
Mã nguồn theo MIT License, các mô hình tiếng Anh cũng theo MIT, trong khi các ngôn ngữ khác theo giấy phép cộng đồng Moonshine.