תרגום מכונה · המקור באנגלית
תחילת העבודה
מעדיפים API אירחה את אותו תמליל, סינתזזה, ולהטיט לרוץ כשירות מנוהל - OpenAI- ו- 11Labs-אי-תואמים. soniqo.audio/Cloud
התקן את speech CLI to transcribe and Create אודיו על שלך Apple Silicon Macהשתמש ב Swift SDK להוסיף עיבוד דיבור macOS ו iOS יישומים.
דרישות CLI
- macOS 15+ (Sequoia או מאוחר יותר)
- Apple Silicon (arm64)
- 8 GB RAM מינימום 16 GB מומלץ עבור מודלים גדולים יותר
התקן את CLI
Homebrew (CLI)
שימוש ב-ARM Homebrew (/opt/homebrew) להתקין speech וה speech-server HTTP / WebSocket Server.
brew install speech
speech --help
משימה ראשונה: לרשום קובץ M4A
הורד את הקלטת הדגימה, ולאחר מכן לנטר אותה במסוף שלך:
להתחבר לאינטרנט עבור הראשון לרוץ.המודל שנבחר מוריד מ HuggingFace ונשאר תקוע על Mac לאחר ההתקנה, אתה יכול לנטר הקלטות מקומיות ללא הפרעה עם מודל זה.
curl -fL https://soniqo.audio/audio/samples/cli/transcription-sample.m4a -o transcription-sample.m4a
speech transcribe transcription-sample.m4a --engine parakeet
התחל מהיר: טקסט-to-Speech
speech speak "Hello, world!" --output hello.wav
הפעל נאום מקומי API
התחל את שרת HTTP / WebSocket עבור בקשות API המקומי:
speech-server --port 8080
Swift SDK
הוסף את Swift מודולים עבור macOS 15+ או iOS 18+ אפליקציה עם Swift מנהל החבילה.
Swift מנהל החבילה
הוסף speech-swift ל Package.swift
dependencies: [
.package(url: "https://github.com/soniqo/speech-swift", branch: "main")
]
לאחר מכן להוסיף את המודולים שאתה צריך למטרה שלך:
.target(
name: "MyApp",
dependencies: [
.product(name: "Qwen3ASR", package: "speech-swift"),
.product(name: "Qwen3TTS", package: "speech-swift"),
.product(name: "SpeechVAD", package: "speech-swift"),
// ... add any modules you need
]
)
מודולים זמינים
| מודול | תיאור תיאור |
|---|---|
Qwen3ASR | נאו-to-text (Qwen3-ASR) |
WhisperASR | נאו-to-text (Whisper Large-v3 Turbo, CoreML) |
ParakeetASR | נאו-to-text (Parakeet TDT, CoreML) |
Qwen3TTS | טקסט-to-speech (Qwen3-TTS) |
CosyVoiceTTS | טקסט-to-speech (CosyVoice3, multilingual) |
KokoroTTS | טקסט-to-speech (Kokoro-82M, CoreML, iOS-ready) |
Qwen3Chat | On-device LLM צ'אט (Qwen3.5-0.8B, MLX + CoreML) |
PersonaPlex | דיבור-to-speech (PersonaPlex 7B) |
SpeechVAD | VAD (Silero + Pyannote), diarization, רמקולים הטמיעו |
SpeechEnhancement | ארכיון תגיות: DeepFilterNet3, CoreML |
AudioCommon | פרוטוקולים משותפים, אודיו I/O, HuggingFace Downloader |
עקבו אחרי Swift
import Qwen3ASR
let model = try await Qwen3ASRModel.fromPretrained()
// audioSamples: [Float] PCM at 16 kHz (e.g. decoded from a WAV)
let text = model.transcribe(audio: audioSamples, sampleRate: 16000)
print(text)
צור קשר עם Swift
import Qwen3TTS
import AudioCommon
let model = try await Qwen3TTSModel.fromPretrained()
let audio = model.synthesize(text: "Hello, world!", language: "english")
try WAVWriter.write(samples: audio, sampleRate: 24000, to: URL(filePath: "hello.wav"))
בנייה ממקור
עבור יצירת מקור, להתקין Xcode 16.3+ עם Metal Toolchain ו Swift 6+. Clone the repository, לבנות את CLI, ולאחר מכן לבדוק את בינארי בקופה:
git clone https://github.com/soniqo/speech-swift.git
cd speech-swift
make build
.build/release/speech --help
make build מפיצה את MLX Metal ספריית צלר באופן אוטומטי.ללא זה, GPU ריצות הקציצות -5x איטי יותר בשל אוסף הצל של JITr.
Shader בונה ברירת מחדל macOS 15.0 ו Metal 3.2, אפילו עם SDKs חדשים יותר.Override אלה עם MACOSX_DEPLOYMENT_TARGET ו MLX_METAL_LANGUAGE_VERSION
דגם Downloads
מודלים מורידים באופן אוטומטי מ- HuggingFace לשימוש ראשון ודחוסים לשימוש ראשון. ~/Library/Caches/qwen3-speech/.
כל המודלים הורדו מ HuggingFace
| מודל מודל | גודל | RAM Usage |
|---|---|---|
| Qwen3-ASR 0.6B (4-bit MLX | 680 MB | שיא של 1.0GB |
| Qwen3-ASR 0.6B (8 סיביות MLX) | 1.0 GB | 1.3 שיא GB |
| Qwen3-ASR 0.6B (CoreML INT8) | 180 MB | 1.4 שיא GB |
| Qwen3-ASR 1.7B (4-bit MLX | 2.1 GB | 3 GB שיא |
| Qwen3-ASR 1.7B (8 סיביות MLX) | 3.2 GB | 2.7 GB |
| Parakeet-TDT v3 (CoreML INT8) | 500 MB | פסגות MB900 |
| Whisper Large-v3 טורבו (CoreML FP16 | 1.6 GB | 384 MB שיא |
| Omnilingual CTC 300M (4 סיביות MLX) | 193 MB | 400 MB שיא |
| Omnilingual CTC 300M (CoreML INT8) | 312 MB | שיא של MB550 |
| Qwen3-TTS 0.6B (4-bit) | 1.7 GB | 2 GB שיא |
| Qwen3-TTS 1.7B (4-bit) | 3.2 GB | 4 GB שיא |
| CosyVoice3 (4-bit LLM) | 1.2 GB | -1.5 GB שיא |
| Kokoro-82M (CoreML INT8) | 89 MB | 200 MB שיא |
| Qwen3.5-Chat 0.8B (INT4 MLX) | 418 MB | פסגות MB700 |
| Qwen3.5-Chat 0.8B (INT8 CoreML) | 981 MB | 1.2 שיא GB |
| PersonaPlex 7B (8 סיביות) recommended | 9.1 GB | 11 GB |
| PersonaPlex 7B (4-bit) | 4.9 GB | 6.5 GB |
| Pyannote VAD | 5.7 MB | פסגות MB20 |
| Silero VAD v5 | 1.2 MB | שיא 5 MB |
| WeSpeaker ResNet34 | 25 MB | שיא 50 MB |
| DeepFilterNet3 (FP16) | 4.2 MB | 10 MB שיא |
צעדים הבאים
- המשך עם M4A-to-text מדריכים
- CLI Reference - כל הפקודות והאפשרויות הזמינות
- Qwen3-ASR Guide - תיעוד דיבור מפורט לטקסט
- Qwen3-TTS Guide - תיעוד טקסט מפורט ל-Speech
- API & פרוטוקולים - פרוטוקולים משותפים וסוגים