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.
cat
Characteristic dimensions (auto, from its own voice profile): ▲ S_STRY ▲ S_DRAM ▲ RANG ▲ S_NARR ▼ EXPL ▼ S_RANT ▼ S_NEWS ▼ S_TECH · 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 124/622.
Best 5 of the kept top-20%
R 7.95 · genu 0.21 · blend 0.67 · qual 0.58 · WER 0.04
R 7.05 · genu 0.19 · blend 0.80 · qual 0.54 · WER 0.03
R 5.57 · genu 0.12 · blend 0.42 · qual 0.71 · WER 0.00
R 5.47 · genu 0.17 · blend 0.54 · qual 0.60 · WER 0.00
R 4.49 · genu 0.23 · blend 0.15 · qual 0.65 · WER 0.00
Weakest 5 still inside the top-20% (the selection boundary)
R 1.40 · genu 0.24 · blend 0.00 · qual 0.42 · WER 0.04
R 1.39 · genu 0.12 · blend 0.00 · qual 0.58 · WER 0.00
R 1.39 · genu 0.12 · blend 0.03 · qual 0.58 · WER 0.00
R 1.37 · genu 0.20 · blend 0.02 · qual 0.48 · WER 0.00
R 1.36 · genu 0.15 · blend 0.23 · qual 0.54 · WER 0.53
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.”