MOSS Explicitness (NSFW) LoRAs — dose-sweep grid

Small trainable add-ons (LoRA adapters) for the expressive text-to-speech model laion/moss-tts-local-transformer-4.55b-voice-acting-v2 that make a synthetic voice sound more sexually suggestive when it speaks. Each row below is one such adapter; the players let you hear the effect and the numbers say how strong it is and what it costs in quality.

🔞 18+ · Research only. Everything here is fully synthetic: the training clips and all samples were generated by AI text-to-speech systems (a drama-dialogue synthesis pipeline and a commercial TTS model) — there are no recordings of real people. Scores are produced automatically by machine-learning models, not human raters. The content is suggestive but intended to stay within what ordinary adults would find acceptable.
▸ What did we do, and what do all these abbreviations mean? (plain-English explainer)

The idea. The base voice model can already act out emotions. We wanted an add-on that pushes the delivery toward sexually suggestive without retraining the whole model. A LoRA is a tiny "style patch" you blend into the model at a chosen strength (the dose, e.g. 0.5× … 1.25×). More dose = stronger effect, but usually more side-effects.

How we picked the training clips. We scored a large pool of synthetic voice clips and kept, in two steps, the ones that were both aroused-sounding and good-sounding: (1) keep the top 10% by Sexual Lust; (2) of those, keep the half that also had high explicitness and a natural vocal quality (for the "aesthetic" variant we also weighted pleasantness). The variants differ only in the data split used:

  • A · aesthetic mix — the aesthetics-filtered pool (nicest-sounding). The recommended default.
  • B · adult — the same recipe but only the adult-voice split.
  • C · A1-suggestive — only the suggestive (non-explicit) drama split.
  • D · raw lust — the top 5% by Sexual Lust with no quality filter (the raw contrast), trained at three sizes (rank 16/32/64) to find the best.

The scores (what the columns mean):

  • Sexual_Lust — the key metric: how sexually aroused / turned-on the voice sounds (from the EmoNet emotion model). Higher = more. This is what the LoRAs are meant to raise.
  • BLEND (vocal-burst blend) — how naturally little non-speech sounds (moans, gasps, sighs) are woven into the speech. Higher = more natural.
  • ESTH (aesthetics) — how pleasant / high-quality the voice is to listen to.
  • GENU (genuineness) — how genuine / non-fake the emotion sounds.
  • WER (word-error-rate) — how unintelligible the words are (0 = every word clear, 1 = unintelligible). Lower is better; suggestive, breathy delivery naturally raises it a bit.
  • EXPL — a generic "content-appropriateness" score. It turned out to be a poor guide here (it is inverted — low = explicit — and barely tracks Sexual_Lust, correlation only −0.15), which is exactly why we switched to the Sexual_Lust-based recipe above.

Every number is a cohort mean over 8 generated samples (not one lucky take). "Baseline" = the model with no LoRA. Δ = change vs. baseline. Note: Google Gemini refused to rate this audio (safety filter), so perceptual validation relies on the Sexual_Lust score plus listening.

Baseline (no LoRA): Sexual_Lust -0.11 · BLEND 0.42 · ESTH 2.80 · GENU 0.18 · WER 0.87

Best dose per adapter

adapterbest doseSexual_LustBLENDESTHGENUWER
A · Aesthetic mix (r32)1.25×+0.53 (Δ+0.65)0.432.960.170.61
B · Adult (r32)1.0×+0.47 (Δ+0.58)0.422.880.180.52
C · A1-suggestive (r32)1.25×+0.43 (Δ+0.54)0.322.930.180.87
D · Raw lust (r16)1.0×+0.53 (Δ+0.64)0.452.950.200.62
D · Raw lust (r32)1.25×+0.63 (Δ+0.74)0.422.740.180.49
D · Raw lust (r64)1.25×+0.60 (Δ+0.71)0.392.890.200.64

Take-aways: rank-32 wins the D rank-sweep (Sexual_Lust +0.74 @1.25×); A/aesthetic keeps BLEND+ESTH highest at high lust (NSFW and pleasant); higher dose = more lust, at a cost to genuineness & WER (the suggestive carrier text is inherently less crisply articulated).

A · Aesthetic mix (r32)

Sexual_Lust top-10% → re-ranked by EXPL+BLEND+ESTH. NSFW and nice-sounding — the recommended default.
best dose @1.25 → Sexual_Lust +0.53 (Δ+0.65)
dose0.5×0.75×1.0×1.25×
Sexual_Lust+0.31 Δ+0.42
BL 0.50·ES 2.52·GE 0.21·WER 0.77
+0.22 Δ+0.33
BL 0.52·ES 2.50·GE 0.21·WER 0.52
+0.29 Δ+0.40
BL 0.45·ES 2.98·GE 0.19·WER 0.73
+0.53 Δ+0.65
BL 0.43·ES 2.96·GE 0.17·WER 0.61
listen @1.0×:
neutral_s40
neutral_s41

B · Adult (r32)

adult dataset only, same aesthetic re-rank.
best dose @1.0 → Sexual_Lust +0.47 (Δ+0.58)
dose0.5×0.75×1.0×1.25×
Sexual_Lust+0.33 Δ+0.44
BL 0.49·ES 2.77·GE 0.20·WER 0.76
+0.04 Δ+0.15
BL 0.43·ES 2.85·GE 0.19·WER 0.64
+0.47 Δ+0.58
BL 0.42·ES 2.88·GE 0.18·WER 0.52
+0.40 Δ+0.51
BL 0.43·ES 2.78·GE 0.18·WER 0.98
listen @1.0×:
neutral_s40
neutral_s41

C · A1-suggestive (r32)

additional-data-a1-plus only — suggestive, non-adult source.
best dose @1.25 → Sexual_Lust +0.43 (Δ+0.54)
dose0.5×0.75×1.0×1.25×
Sexual_Lust-0.08 Δ+0.03
BL 0.44·ES 2.87·GE 0.17·WER 0.85
+0.20 Δ+0.31
BL 0.46·ES 2.86·GE 0.17·WER 1.00
+0.38 Δ+0.49
BL 0.40·ES 3.04·GE 0.17·WER 0.87
+0.43 Δ+0.54
BL 0.32·ES 2.93·GE 0.18·WER 0.87
listen @1.0×:
neutral_s40
neutral_s41

D · Raw lust (r16)

top-5% pure Sexual_Lust, NO aesthetic filter — the raw contrast.
best dose @1.0 → Sexual_Lust +0.53 (Δ+0.64)
dose0.5×0.75×1.0×1.25×
Sexual_Lust+0.22 Δ+0.33
BL 0.46·ES 2.50·GE 0.21·WER 0.76
+0.08 Δ+0.19
BL 0.44·ES 2.79·GE 0.21·WER 0.76
+0.53 Δ+0.64
BL 0.45·ES 2.95·GE 0.20·WER 0.62
+0.35 Δ+0.47
BL 0.43·ES 2.96·GE 0.17·WER 0.87
listen @1.0×:
neutral_s40
neutral_s41

D · Raw lust (r32)

raw top-5% — best of the rank sweep (highest Sexual_Lust lift).
best dose @1.25 → Sexual_Lust +0.63 (Δ+0.74)
dose0.5×0.75×1.0×1.25×
Sexual_Lust-0.02 Δ+0.09
BL 0.48·ES 2.36·GE 0.22·WER 0.75
+0.38 Δ+0.49
BL 0.42·ES 2.61·GE 0.22·WER 0.53
+0.16 Δ+0.27
BL 0.48·ES 2.94·GE 0.17·WER 0.90
+0.63 Δ+0.74
BL 0.42·ES 2.74·GE 0.18·WER 0.49
listen @1.0×:
neutral_s40
neutral_s41

D · Raw lust (r64)

raw top-5%, rank 64.
best dose @1.25 → Sexual_Lust +0.60 (Δ+0.71)
dose0.5×0.75×1.0×1.25×
Sexual_Lust-0.00 Δ+0.11
BL 0.40·ES 2.71·GE 0.20·WER 0.74
+0.27 Δ+0.39
BL 0.42·ES 2.73·GE 0.17·WER 0.39
+0.22 Δ+0.33
BL 0.36·ES 2.52·GE 0.22·WER 0.62
+0.60 Δ+0.71
BL 0.39·ES 2.89·GE 0.20·WER 0.64
listen @1.0×:
neutral_s40
neutral_s41

Adapters: TTS-AGI/moss-explicitness-loras (private). Data: TTS-AGI gemini-adult-voices + additional-data-a1-plus. Scoring: EmoNet Sexual_Lust · VoiceNet EXPL/ESTH · VoiceCLAP genu/blend · faster-whisper WER. Part of the voice-acting manual.