Profile-reward recipe: generate 640 (batched) → ASR-filter+trim → SIDON → keep the top 20% by a per-character quality+profile reward → warm-start FT 3 epochs. Below: the quality range of the selected training set, then example generations after each epoch.
goblin
Characteristic dimensions (auto, from its own voice profile): ▲ S_STRY ▲ GEND ▲ S_MONO ▲ AROU ▼ S_ASMR ▼ EXPL ▼ S_RANT ▼ S_WHIS · emo: Concentration Interest Emotional_Numbness
Training set = top-20% by reward = z(genu)+z(blend)+z(quality)−z(WER)+0.7·z(profile-match). Kept 128/640.
Best 5 of the kept top-20%
R 8.24 · genu 0.38 · blend 0.49 · qual 0.43 · WER 0.00
R 8.08 · genu 0.26 · blend 0.54 · qual 0.48 · WER 0.03
R 7.53 · genu 0.36 · blend 0.37 · qual 0.43 · WER 0.00
R 7.02 · genu 0.17 · blend 0.48 · qual 0.65 · WER 0.00
R 5.75 · genu 0.11 · blend 0.38 · qual 0.58 · WER 0.00
Weakest 5 still inside the top-20% (the selection boundary)
R 1.29 · genu 0.17 · blend 0.19 · qual 0.43 · WER 0.05
R 1.29 · genu 0.03 · blend 0.01 · qual 0.64 · WER 0.00
R 1.28 · genu 0.02 · blend 0.00 · qual 0.66 · WER 0.00
R 1.26 · genu 0.05 · blend 0.00 · qual 0.66 · WER 0.00
R 1.26 · genu 0.12 · blend 0.11 · qual 0.50 · WER 0.00
Fantasy line — refined ep1 / ep2 / ep3
“The old road winds past the ruined tower where the last dragon knights once kept their watch.”
Sci-fi line — refined ep1 / ep2 / ep3
“The station drifted in low orbit while the reactor cooled and the scanners swept the empty dark.”
Neutral line — refined ep1 / ep2 / ep3
“The meeting is scheduled for three o'clock and the report is on the desk by the printer.”