Awtomatikong salin · Orihinal sa Ingles
Pagsisimula
Prefer a hosted API? Ang parehong transcription, synthesis, at cloning ay tumatakbo bilang isang pinangangasiwaang serbisyo — OpenAI- at labing-isangLabs-compatiable. soniqo.audio/cloud →
Iluklok ang speech CLI para mag - recore at gumawa ng audio sa iyong katawan Apple Silicon Mac. Gamitin ang Swift SDK upang idagdag ang pagproseso ng pagsasalita macOS at iOS mga app.
Mga kahilingan ng CLI
- macOS 15+ (Sequoia o pagkatapos)
- Apple Silicon (arm64)
- 8 GB RAM minimum (16 GB na inirerekomenda para sa mas malalaking modelo)
Iluklok ang CLI
Homebrew (CLI)
Gamitin ang katutubong ARM Homebrew (/opt/homebrew) iluluklok speech at ang speech-server HTTP/WebSocket server.
brew install speech
speech --help
Unang gawain: I - translate ang M4A file
I - download ang sampol na rekording, pagkatapos ay isulat ito sa iyong terminal:
Magkonekta sa internet para sa unang pagtakbo. Ang napiling modelo ay nag - download mula sa HuggingFace at nananatili sa iyong Mac. Pagkatapos ng setup, maaari mong i - transcript ang lokal na mga rekording sa pamamagitan ng modelong iyon.
curl -fL https://soniqo.audio/audio/samples/cli/transcription-sample.m4a -o transcription-sample.m4a
speech transcribe transcription-sample.m4a --engine parakeet
Magpatuloy sa gabay na M4A-to-text.
Mabilis na Pasimula: Text-to-Speech
speech speak "Hello, world!" --output hello.wav
Mamahala sa isang lokal na talumpati API
Paandarin ang midya Ang HTTP/WebSocket server para sa lokal na API requires:
speech-server --port 8080
Swift SDK
Idagdag ang Swift modules sa inyong macOS 15+ o iOS XXXX 18+ app na may Swift Ack Mander.
Swift Namamanihala
Idagdag ang speech-swift sa iyong Package.swift dependencies:
dependencies: [
.package(url: "https://github.com/soniqo/speech-swift", branch: "main")
]
Saka idagdag ang mga module na kailangan mo sa iyong target:
.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
]
)
Makukuhang mga Module
| Module | Paglalarawan |
|---|---|
Qwen3ASR | Pagsasalita-to-text (Qwen3-ASR) |
WhisperASR | Pagsasalita-to-text (Whisper Large-v3 Turbo, CoreML) |
ParakeetASR | Pagsasalita-to-text (Parakeet TDT, CoreML) |
Qwen3TTS | Text-to-speech (Qwen3-TTS) |
CosyVoiceTTS | Text-to-speech (CosyVoice3, multinasyonal) |
KokoroTTS | Text-to-speech (Kokoro-82M, CoreML, iOS-handa) |
Qwen3Chat | On-device LLM chat (Qwen3.5-0.8B, MLX + CoreML) |
PersonaPlex | Pagsasalita-to-speech (PersonaPlex 7B) |
SpeechVAD | VAD (Silero + Pyannote), diarization, speaker embedings |
SpeechEnhancement | Pagpigil sa Ingay (DeepFilterNet3, CoreML) |
AudioCommon | Ibahaging mga protocol, audio I/O, HuggingFace downloader |
Transcription audio na may 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)
Tumugtog na pananalita na may 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"))
Pagtatayo Mula sa Pinagmulan
Para sa isang source building, i-install ang Xcode 16.3+ kasama ang Metal Toolchain at Swift 6+. Clone the reposition, itayo ang CLI, saka tingnan ang binaryo sa checkout:
git clone https://github.com/soniqo/speech-swift.git
cd speech-swift
make build
.build/release/speech --help
Ang make build ang bumubuo sa MLX Metal anner library nang kusa. Kung wala ito, ang GPU CROP ay tumatakbo ng −5x mas mabagal dahil sa JIT ander competition.
Ang sharider ay gumagawa ng hindi pagtupad macOS 15.0 at Metal 3.2, kahit na sa mga mas bagong SDK. Override ang mga ito sa pamamagitan ng MACOSX_DEPLOYMENT_TARGET at MLX_METAL_LANGUAGE_VERSION para sa paggawa ng kaugalian; maaaring ipuwera ng mas mataas na mga target ang mas lumang mga sistema., SDK, flag, script, o source champion. Sawi ang pag - iimbak o pag - uugnay sa dating aklatan at cache hash.
Modelong mga Pagpapababa ng Pabigat
Ang mga modelo ay awtomatikong na-download mula sa HuggingFace sa unang paggamit at cached sa ~/Library/Caches/qwen3-speech/.
Ang lahat ng modelo ay na-download mula sa HuggingFace sa unang gamit. Mga sukat na approximate:
| Huwaran | Laki | RAM Gamitin |
|---|---|---|
| Qwen3-ASR 0.6B (4-bit MLX) | 680 MB | °1.0 GB peak |
| Qwen3-ASR 0.6B (8-bit MLX) | 1.0 GB | E.1.3 GB peak |
| Qwen3-ASR 0.6B (CoreML INT8) | 180 MB | E.1.4 GB peak |
| Qwen3-ASR 1.7B (4-bit MLX) | 2.1 GB | EX3 GB peak |
| Qwen3-ASR 1.7B (8-bit MLX) | 3.2 GB | E.2.7 GB peak |
| Parakeet-TDT v3 (CoreML INT8) | 500 MB | TEKSTO ng Romano900 MB |
| Whisper Large-v3 Turbo (paglilinaw)CoreML FP16) | 1.6 GB | EX384 MB peak |
| Omnilingual CTC 300M (4-bit MLX) | 193 MB | Umabot sa pinakamataas na bilang na °400 MB |
| Omnilingual CTC 300M (CoreML INT8) | 312 MB | °550 MB peak |
| Qwen3-TTS 0.6B (4-bit) | 1.7 GB | E.2 GB peak |
| Qwen3-TTS 1.7B (4-bit) | 3.2 GB | EX4 GB peak |
| CosyVoice3 (4-bit LLM) | 1.2 GB | °1.5 GB peak |
| Kokoro-82M (CoreML INT8) | 89 MB | Tulo ng iEM200 MB |
| Qwen3.5-Chat 0.8B (INT4 MLX) | 418 MB | Tulo ng °700 MB |
| Qwen3.5-Chat 0.8B (INT8 CoreML) | 981 MB | °1.2 GB peak |
| PersonaPlex 7B (8-bit) mungkahi | 9.1 GB | Ang pinakamataas na bilang ng Epic11 GB |
| PersonaPlex 7B (4-bit) | 4.9 GB | EX6.5 GB peak |
| Pyannote VAD | 5.7 MB | TEKSTO ng Romano20 MB |
| Silero VAD v5 | 1.2 MB | Tuktok ng °5 MB |
| WeSpeaker ResNet34 | 25 MB | TEKSTO ng Romano50 MB |
| DeepFilterNet3 (FP16) | 4.2 MB | °10 MB peak |
Susunod na mga Hakbang
- Magpatuloy sa gabay na M4A-to-text
- CLI Reference — lahat ng makukuhang utos at mapagpipilian
- Qwen3-ASR Guide — detalyadong dokumentasyon sa pagsasalita-to-text
- Qwen3-TTS Guide — detalyadong dokumento ng teksto-to-speech
- API & Protocols — pinagsaluhan ang mga protocol at uri