Automatische vertaling · Engels origineel

MOSS-VoiceGenerator

Experimenteel

Native SDK ondersteuning van de hoofdbron bouwen. Homebrew en andere vooraf gebouwde CLI releases kunnen deze motoren nog niet bevatten.

Native MLX voice design van een exact script en een spraakinstructie. Mono PCM bij 24 kHz; er is geen referentieopname vereist.

MOSS-VoiceGenerator behoudt BF16 taalgewichten en FP32 synthesizercodec. Gebruik --stream voor incrementele PCM. Verwijder --language en zet taalvereisten in --instruct. Afronding drains alle zestien codeboeken.

SDK bronbouw

Implementatie (PR #541): main

git clone --single-branch --branch main https://github.com/soniqo/speech-swift.git
cd speech-swift
make build

Gepubliceerd MLX bundels: aufklarer/MOSS-VoiceGenerator-MLX-bf16

Commandoregel

.build/release/speech speak "The little boat crossed the quiet lake before sunset." \
  --engine moss-voicegenerator \
  --moss-voicegenerator-model-id aufklarer/MOSS-VoiceGenerator-MLX-bf16 \
  --instruct "A warm adult female voice, speaking English slowly." \
  --stream --seed 42 --output moss.wav

Geef één tekstargument, --instruct, en precies één bundelmap of compatibel model-ID. Referentieaudio, vaste luidsprekers en batch-invoer worden niet ondersteund.

Elke tekst- en instructieveld is beperkt tot 32.768 UTF-8 bytes. De volledige weergegeven invoerprompt, inclusief de sjabloon, moet binnen 4.096 tokens passen. Invoeren die beide grenzen overschrijden worden afgewezen.

Instructie TTS opties

Swift API

import MossVoiceGeneratorTTS

let model = try await MossVoiceGeneratorModel.fromPretrained(
    modelId: "aufklarer/MOSS-VoiceGenerator-MLX-bf16")
let output = try await model.generate(
    text: "The little boat crossed the quiet lake before sunset.",
    instruction: "A warm adult female voice, speaking English slowly.",
    options: .init(maxFrames: 150, seed: 42))
let pcm = output.samples
model.unload()

Short-script runtime metingen

M5 Pro, 48 GiB, Release. Eén kort neutraal script per taal; mediaan van drie warme verzoeken na de eerste. Laden en gewichtscontrole zijn uitgesloten; bestandssysteem caches waren warm. RTF = wandtijd / audioduur, lager is sneller. Fysiek geheugen is het proces hoog water over het laden en vier verzoeken, in decimale GB.

Script Geluid (en)Warm eerste PCM (s)RTFPiek fysiek geheugen (GB)
Engels3.440.4700.6108.448
Mandarijn4.880.4570.5728.619

Engelse timing audio heeft onopgeloste herkenner onenigheid: Parakeet voegt een laatste ..en .; Qwen3-ASR komt overeen met het volledige script. Beide resultaten worden behouden.

Valideringsgebied

De kwaliteit van de instructie volgt niet. Short-script metingen beschrijven de geteste setup; bestaande model latency certificering blijft niet overtuigend.

Native instructie TTS

Bronnen