Konekäännös · Englanninkielinen alkuperäinen

Aloitus

Soniqo Pilvi

Suositaan isännöityä API? Sama transkriptio-, synteesi- ja kloonausajo hallituna palveluna OpenAI- ja ElevenLabs-yhteensopivana. soniqo.audio/pilvi →

Asenna speech CLI kirjoittamaan ja tuottamaan ääntä Apple Silicon Mac. Käytä Swift SDK lisätäksesi puheenkäsittelyn macOS ja iOS -sovelluksiin.

CLI-vaatimukset

Asenna CLI

Homebrew (CLI)

Käytä natiivia ARM:ää Homebrew (/opt/homebrew) asentaa speech ja speech-server HTTP/WebSocket-palvelin.

brew install speech
speech --help

Ensimmäinen tehtävä: kirjoita M4A -tiedosto

Lataa näytetallenne ja kirjoita se päätteessäsi:

Liitä internetiin ensimmäistä juoksua varten. Valittu malli lataa HuggingFace -palvelusta ja pysyy välimuistissa Mac -palvelussa. Asennuksen jälkeen voit kopioida paikallisia nauhoituksia offline-muodossa.

curl -fL https://soniqo.audio/audio/samples/cli/transcription-sample.m4a -o transcription-sample.m4a
speech transcribe transcription-sample.m4a --engine parakeet

Jatka M4A-to-text-ohjetta .

Pikakäynnistys: tekstipuhe

speech speak "Hello, world!" --output hello.wav

Aja paikallinen puhe API

Käynnistä HTTP/WebSocket -palvelin paikalliselle API -pyynnölle:

speech-server --port 8080

Swift SDK

Lisätään Swift -moduulit macOS 15+ tai iOS 18+ -sovelluksella, jossa on Swift Pakettipäällikkö.

Swift Paketinhallinta

Lisätään speech-swift Package.swiftvaihteisto riippuvuudet:

dependencies: [
    .package(url: "https://github.com/soniqo/speech-swift", branch: "main")
]

Lisää sitten haluamasi moduulit kohteeseen:

.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
    ]
)

Käytettävissä olevat moduulit

Moduuli Tavaran kuvaus
Qwen3ASR Puhe-teksti (Qwen3-ASR)
WhisperASR Puhe-to-text (Whisper Large-v3 Turbo, CoreML)
ParakeetASR Puhe (Parakeet TDT, CoreML)
Qwen3TTS Tekstistä puhujaan (Qwen3-TTS)
CosyVoiceTTS Tekstinvaihtopuhe (CosyVoice3, monikielinen)
KokoroTTS(Kokoro-82M, CoreML, iOS-valmiina)
Qwen3Chat Laite LLM chat (Qwen3.5-0.8B, MLX + CoreML)
PersonaPlex Puhe (PersonaPlex 7B)
SpeechVADVAD (Silero + Pyannote), diarisaatio, kaiuttimet
SpeechEnhancementMelunvaimennus (DeepFilterNet3, CoreML)
AudioCommonJaetut protokollia, ääntä I/O, HuggingFace-lataaja

Käännä ääni 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)

Luo puhe 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"))

Rakennus lähteestä

Lähteen rakennetta varten asenna Xcode 16.3+, jossa on Metal Toolchain ja Swift 6+. Kloonaa arkisto, rakenna CLI, tarkista sitten kassassa oleva binääri:

git clone https://github.com/soniqo/speech-swift.git
cd speech-swift
make build
.build/release/speech --help
Tärkeää

make build compleces the MLX Metal shader -kirjasto automaattisesti. Ilman sitä GPU inference runs ~5x reader due to the JIT shader complection.

Shader rakentaa oletusarvon macOS 15.0 ja Metal 3.2, jopa uudemmilla SDK:illa. Ohita nämä MACOSX_DEPLOYMENT_TARGET ja MLX_METAL_LANGUAGE_VERSION, kun kyseessä on muokattu rakenne; korkeampiin kohteisiin ei välttämättä sisälly vanhempia järjestelmiä.

Mallilataukset

Mallit ladataan automaattisesti HuggingFace -tilalta ensimmäisestä käyttökerrasta ja välimuisti ~/Library/Caches/qwen3-speech/.

Kaikki mallit ladataan HuggingFace -mallista. Arvioitu koko:

Malli KokoRAM Käyttö
Qwen3-ASR 0,6B (4-bit MLX)680 Mt~1,0 GB piikki
Qwen3-ASR 0,6B (8-bittinen MLX)1.0 GB~1,3 GB huippuarvo
Qwen3-ASR 0,6B (CoreML INT8)180 Mt~1,4 GB piikki
Qwen3-ASR 1,7B (4-bit MLX)2,1 GB~3 GB piikki
Qwen3-ASR 1,7B (8-bit MLX)3,2 GB~2,7 GB huippu
Parakeet-TDT v3 (CoreML INT8)500 Mt~900 Mt huippu
Whisper Large-v3 Turbo (CoreML FP16) 1,6 GB~384 Mt huippu
Kokokielinen CTC 300M (4-bit MLX)193 Mt~400 Mt huippu
Kokokielinen CTC 300M (CoreML INT8)312 Mt~550 Mt huippu
Qwen3-TTS 0,6B (4-bit)1,7 GB~2 GB piikki
Qwen3-TTS 1.7B (4-bit)3,2 GB~4 GB huippu
CosyVoice3 (4-bit LLM)1,2 GB~1,5 GB piikki
Kokoro-82M (CoreML INT8)89 Mt~200 Mt huippu
Qwen3.5-Chat 0,8B (INT4 MLX)418 Mt~700 Mt huippu
Qwen3.5-Chat 0,8B (INT8 CoreML)981 Mt~1,2 GB huippuarvo
PersonaPlex 7B (8-bittinen) suositeltu9.1 GB~11 GB huippu
PersonaPlex 7B (4-bit)4,9 GB~6,5 GB piikki
Pyannote VAD5,7 Mt~20 Mt huippu
Silero VAD v51.2 Mt~5 Mt piikki
WeSpeaker ResNet3425 Mt~50 Mt huippu
DeepFilterNet3 (FP16)4,2 Mt~10 Mt huippu

Seuraavat vaiheet