Futhark Hugin

Hugin is a small, fast Swedish text-to-speech model that also reads English, both on its own and mixed into Swedish sentences. It is a 15 M parameter non-autoregressive Transformer (phonemes -> durations -> mel in one pass, no sampling, no diffusion) with an 8 M parameter Vocos vocoder, and outputs 24 kHz audio. It ships with one voice, B1 (w), a synthetic voice designed with VoxCPM2, and with hugin-finetune, which makes your own voice from about 500 recorded sentences. The text front-end handles numbers, dates, abbreviations, acronyms, homographs, word stress and English detection. The packaged version is v0.8-en.

Listen

Generated with this package on CPU, voice B1, no editing.

Greeting: Hej och välkommen! Jag heter Hugin, och jag läser svensk text högt.

Times, prices, phone numbers: Tåget mot Göteborg avgår kl. 19:05 från spår 3, och biljetten kostar 245 kr. Ring 08-123 45 67 om du har frågor.

Story: Det var en tidig morgon i slutet av augusti. Dimman låg fortfarande kvar över sjön, och någonstans långt borta hördes en båtmotor.

News: Under natten väntas kraftiga vindar längs kusten, och flera färjeturer kan bli inställda redan i morgon bitti.

Tongue twister: Sju sjösjuka sjömän sköljde skjortorna, medan Rolf ringde runt till rektorerna.

Particle verbs and a long compound: Hon tog upp frågan på mötet, men chefen höll inte med. Det kan jag inte berätta eftersom det råder förundersökningssekretess.

English: Could you send me the updated report before lunch tomorrow? The meeting starts at 10:30.

Swedish with English words: Vi har en deadline på fredag, så jag bokar ett kort meeting med vårt product team. Alla kortkunder får cashback.

Size 15 M (acoustic model) + 8 M (vocoder); weights about 150 MB including lexicon and G2P
Speed ~40× real time on a 6-thread desktop CPU, ~250–500× on an RTX 4070
Quality (Whisper letter error, in-house bench) Swedish 0.4 %, English 0.0 %, mixed Swedish/English 0.3 %
Own voice ~500 sentences (35–45 min) -> about 10–60 min of training on one NVIDIA GPU (guide)

Install and use

pip install -U huggingface_hub
hf download codah80/futhark-hugin --local-dir futhark-hugin
pip install -e "./futhark-hugin[prominence]" && python -c "import stanza; stanza.download('sv', processors='tokenize,pos')"
python -m hugin "Hej och välkomna! Klockan är 18:30." -o hej.wav
from hugin import Hugin
tts = Hugin.from_pretrained()                         # or voice="my_voice.pt" for your own voice
audio, sr = tts.tts("Det var en tidig morgon i slutet av augusti.")
import soundfile as sf; sf.write("morgon.wav", audio, sr)   # float32, 24 kHz

Stanza (word stress) is optional but recommended. Without it, install with pip install -e . and add --no-prominence.

More

  • docs/DETAILS.md: all options, the text front-end, the pronunciation dictionary, word timestamps, the HTTP server, performance figures and files.
  • docs/FINETUNE.md: record and train your own voice (hugin-finetune prepare | train | export). Use only your own voice or a voice you have explicit permission to use.
  • VERSIONS.md (training history) · ATTRIBUTION.md (data, models, licences).

Code and weights: Apache License 2.0. Training data and third-party models keep their own licences (see ATTRIBUTION.md); CC BY sources are credited there.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support