Instructions to use laion/Humaneness-Voice-Large-1.7 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use laion/Humaneness-Voice-Large-1.7 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-to-speech", model="laion/Humaneness-Voice-Large-1.7", trust_remote_code=True)# pip install -U transformers accelerate # Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("laion/Humaneness-Voice-Large-1.7", trust_remote_code=True, device_map="auto") - Notebooks
- Google Colab
- Kaggle
Humaneness Voice Large 1.7
Expressive text-to-speech in English, German, French, Spanish and Dutch. Write the words to speak and describe the performance: emotion, delivery, pauses and non-speech reactions. A clean reference recording can supply the speaker identity. Without a reference, the model chooses a plausible voice.
1.7 contains complete merged model weights. It combines the exact Acting High-8654 supervised checkpoint with its selected rank-32 acting adapter, update44,250 at scale1.0. You do not need to attach an adapter for ordinary inference. This is a new supervised branch from Large1.3; it is not Large1.6 with another adapter and does not contain the1.4/1.5RL adapter stack.
Listen: matched checkpoint comparison ยท five-language acting showcase ยท generated evaluation audio and recorded scores. The showcase grows as its2,200conditions finish. Check the displayed progress; a pending case is not a successful performance.
Start here
| Need | File |
|---|---|
| Write directions and preserve the spoken words | PROMPTING.md |
| Generate a WAV, optionally with a reference | infer.py and examples below |
| Use true logit CFG or candidate batches | Inference and throughput guide |
| Understand exactly what was trained | TRAINING.md, provenance |
| Inspect checkpoint selection | stats/selection.json |
| Hear the actual merge audit | canary audio, canary measurements, downloadable listening HTML |
| Fine-tune a new adapter using your own compatible data | training/train_reference.py |
The previous 1.5/1.6 prompting manuals contain useful directing ideas. Their specialist adapter recommendations and best CFG settings were measured on different weights. They are starting ideas for1.7, not a newly validated1.7manual. Do not stack those adapters on1.7 merely because their ranks or filenames match.
Quick start
Install a CUDA-enabled PyTorch build for your server, then the dependencies:
hf download laion/Humaneness-Voice-Large-1.7 --local-dir humaneness-large17
cd humaneness-large17
pip install -r requirements.txt
python infer.py --language en --seconds 9.2 --seed 1701 \
--text 'I thought you had forgotten. You remembered every little detail. I am so glad you came back.' \
--prompt-file examples/prompt-en.txt --output example.wav
The reviewed custom model implementation requires trust_remote_code=True.
The root model is stored in FP32; the supplied inference loader uses BF16
weights and compute. The external
MOSS Audio Tokenizer v2
is loaded separately and retains its upstream terms.
For speaker conditioning, add --reference-wav clean-speaker.wav. Supply at
least 5.04seconds of clean speech from one speaker, with different words
from the requested output. The helper crops the waveform to14.96seconds
before encoding. It does not use the old2.96-second cap. Reference audio
improves the identity cue, but is not a guarantee of exact voice preservation.
Python, keeping the model and codec resident for repeated requests:
from pathlib import Path
import infer
model, processor, api = infer.load()
api.load_codec(processor, "OpenMOSS-Team/MOSS-Audio-Tokenizer-v2")
reference = infer.reference_codes(processor, Path("clean-speaker.wav"))
codes = infer.generate_codes(model, processor, api,
text="I am so glad you came back.",
prompt="GENERAL: Warm, natural relief.\nSCRIPT:\n"
"(quiet relief) [3.0 seconds duration] I am so glad you came back.",
seconds=3.0, language="en", seed=1701, reference=reference)
waveform, sample_rate = api.decode(processor, codes)
For stronger acting, try --cfg 2.5 --neutral-prompt-file examples/neutral-en.txt.
The neutral prompt must keep the same literal speech, durations and reference;
only the acting direction changes. CFG1 is guidance off. CFG2.5 is the current
showcase setting, not a proven optimum for every scene or the merged runtime.
Prompt format
Literal text contains only what should be spoken. prompt contains the
performance instructions:
GENERAL: A natural, close conversation. The speaker is trying to contain
strong anger rather than turning the whole line into a shout.
SCRIPT:
(intensely angry, held back) [3.2 seconds duration] You knew what this meant to me.
[0.4 seconds pause]
(quieter, the anger still present) [2.5 seconds duration] And you did it anyway.
The separate text is: You knew what this meant to me. And you did it anyway.
Directions should normally be in English; the dialogue can be in any of the
five languages. Use round parentheses for local delivery and vocal reactions,
square brackets for requested timing. Durations are learned requests, not hard
audio editing boundaries. See the guide for masking, pauses and vocal bursts.
What the files contain
| Location | Meaning |
|---|---|
| Root config/tokenizer and safetensors shards | Merged1.7 full model; load once, no adapter required |
adapter/adapter.safetensors |
Original selected44,250rank32adapter, for auditing or native control only |
parent_model/ |
Complete exact High-8654 parent, rounded to BF16 as in the original evaluation |
runtime/native_adapters.py |
Original custom FP32 residual adapter implementation; not PEFT |
runtime/native_cfg.py |
The evaluated twelve-channel logit CFG implementation |
training/ |
Portable new-run reference trainer, actual recipes and original training snapshots |
stats/, examples/canary/ |
Selection record, training evidence and paired merged/unmerged canaries |
Do not apply the included adapter to the merged root model again. For the
original unmerged arithmetic use python infer.py --unmerged ..., which loads
parent_model/ plus the adapter exactly once. The native control is useful
because merging changes BF16 rounding and can change sampled speech.
Selection results and what they mean
Seven second-half adapter checkpoints were compared on the same108English/ German tasks:40emotions and14edge cases, one seed, no reference, CFG1. Step44,250 had the highest frozen composite among those seven complete matrices:
| Development-selected44,250 | Mean |
|---|---|
| Content Enjoyment, EARS predicted score | 6.3334 |
| Genuineness, EARS0โ6 | 4.2565 |
| Vocal Burst Blend, EARS0โ10 | 7.7503 |
| Requested emotion/style CDF diagnostic | 0.58566 |
| Composite:40%target +30%CE/10 +30%genuineness/6 | 0.63709 |
| Mean per-clip ASR word error rate | 0.05787% |
The target number is a standardized head-score diagnostic, not an accuracy percentage. WER is the arithmetic mean of per-clip rates, not a corpus-token- weighted rate. Scores are model predictions, not human listening ratings. The selected checkpoint does not maximize every individual metric. This was development selection among seven states, not an exhaustive search or an independent held-out confirmation; paired uncertainty is recorded in the JSON.
Those selection recordings use the original unmerged BF16-parent/FP32-LoRA path. FP32 merging was checked algebraically, then the merged BF16 deployment was tested against that native control on one fixed script in each language, plus one English CFG2.5pair. Every take is retained. Consult the measured merge audit: it intentionally does not claim bit-identical sampled tokens or establish quality gains from five scripts.
Architecture and training outline
This is a hierarchical MOSS Local Transformer TTS model with 4,129,990,144 unique base parameters: a Qwen3-family semantic transformer and a local Talker. Each80-msframe produces12indices, one per codec codebook, each with 1,024possible values. That is12.5frames/s ร12 =150codec indices/s. The separate codec returns48-kHzmono audio. The model does not generate all32codec books.
The1.3ancestor first received a full supervised acting continuation. Its High-8654checkpoint then received a rank32adapter trained on a per-language union of top1%emotion/style takes and top2%genuineness-plus-blend takes. The adapter schedule ran for three epochs;1.7selects update44,250 rather than the final58,944. The five training languages are EN, DE, FR, ES and NL. Details, source mixture weights and evaluation limitations are in TRAINING.md.
Throughput and streaming
Reuse a resident model and codec; cache reference codes; batch compatible candidate generations when throughput matters. A full Best-of-N selection must finish its candidates before it can choose a winner. Low-latency streaming and offline candidate throughput are separate goals.
The Humaneness-Voice server contains batching, streaming and optional graph/kernel optimizations. Its published0.16-second onset is a Small-model Jetson Thor result, not a1.7 measurement. This release includes a simple full-utterance reference path and batched same-condition CFG helper; it does not claim that an optimized server or every historical CUDA graph is already validated for1.7. Read the optimization guide before reporting speed.
License and use
New model contributions and release materials are CC BY4.0. Keep the LICENSE, NOTICE.md and upstream notices. External codecs, software and training datasets retain their own terms. CC BY does not grant rights over another person's identity. Use consented references, identify synthetic material appropriately and test the model before deployment.
Evolutionary prompting manual
Use the English manual for all 40 emotions, 15 talking styles and 18 measurable vocal-burst classes in five languages. Each recipe shows its evidence status, exact directing text, CFG and word-accuracy results. For agents, manual/AGENT_GUIDE.md explains the tool contract and manual/recipes.jsonl contains current configurations. The search updates automatically; only records with usable: true are held-out qualified. These experiments use the merged 1.7 model without reference audio or extra adapters.
- Downloads last month
- -