zsophia/slm-speech-coach
SLM Speech Coach — audio speech-coaching pairs License & attribution This dataset is released under CC-BY-4.0. It is a derivative work that combines: Real speech from The People's Speech (MLCommons), licensed CC-BY-4.0 — please retain this attribution when redistributing. Synthetic child speech generated via TTS (OpenAI gpt-4o-mini-tts / Gemini), plus one controlled delivery flaw injected per clip. Coaching text written by a Gemini 3.1 teacher model… See the full description on the dataset page: https://huggingface.co/datasets/zsophia/slm-speech-coach.
License: cc-by-4.0 + People's Speech attribution; add regenerated_v4 config
Add lib/categorize.py for demo notebook judge
Add lib/llm_client.py for demo notebook judge
Add judge_correctness.py (clean-clip abstention rubric) for demo notebook
Fix NEW4 dev: readings-gated no-fix (was flaw-denial on 589 flawed clips)
Fix NEW4 val: readings-gated no-fix (was flaw-denial on 589 flawed clips)
Fix NEW4 train: readings-gated no-fix (was flaw-denial on 589 flawed clips)
Fix NEW4 dev: flat relative audio paths (audio-data/*.wav) to match NEW3/tarball
Fix NEW4 val: flat relative audio paths (audio-data/*.wav) to match NEW3/tarball
Fix NEW4 train: flat relative audio paths (audio-data/*.wav) to match NEW3/tarball
Add NEW4 dev split (clean-clip targets rebalanced to no-fix)
Add NEW4 val split (clean-clip targets rebalanced to no-fix)
Add NEW4 train split (clean-clip targets rebalanced to no-fix)
Add full-coverage v3 metrics (all 5984 clips, base clip_id keyed)
Document v3 speaker-leak fix + v3 verifier in dataset card
Update verify.py: kid-recalibrated thresholds + focus-aware grounding (v3)
v3 splits: fix speaker leak (group by human kid, not per-recording person_id): dev
v3 splits: fix speaker leak (group by human kid, not per-recording person_id): val
v3 splits: fix speaker leak (group by human kid, not per-recording person_id): train
Add regenerated_v3 config (per-flaw fan-out, filler-quotes-only)
Add v3 per-flaw fan-out split: dev
Add v3 per-flaw fan-out split: val
Add v3 per-flaw fan-out split: train
Upload README.md with huggingface_hub
Upload data/gemma_full_NEW2_dev.jsonl with huggingface_hub
Upload data/gemma_full_NEW2_val.jsonl with huggingface_hub
Upload data/gemma_full_NEW2_train.jsonl with huggingface_hub
Upload data/gemma_full_NEW_dev.jsonl with huggingface_hub
Upload data/gemma_full_NEW_val.jsonl with huggingface_hub
Upload data/gemma_full_NEW_train.jsonl with huggingface_hub
Upload data/gemma_full_NEW_dev.jsonl with huggingface_hub
Upload data/gemma_full_NEW_val.jsonl with huggingface_hub
Upload data/gemma_full_NEW_train.jsonl with huggingface_hub
Upload data/gemma_full_NEW_dev.jsonl with huggingface_hub
Upload data/gemma_full_NEW_val.jsonl with huggingface_hub
Upload data/gemma_full_NEW_train.jsonl with huggingface_hub
Upload scripts/verify.py with huggingface_hub
Upload README.md with huggingface_hub
Upload data/gemma_full_NEW_dev.jsonl with huggingface_hub
Upload data/gemma_full_NEW_val.jsonl with huggingface_hub
Upload data/gemma_full_NEW_train.jsonl with huggingface_hub
Fill 900 empty transcripts via Gemini gateway (277 base speeches, fanned to variants)
eval.py: strict hallucination check + transcript loader
Eval: strict hallucination check (claim-cue + skip suggestions/contractions/empty transcripts)
Eval: caught-any-measured-flaw + quote-hallucination check (vs transcript)
Add multi-checkpoint sweep cell + metric-reading note
Cell 6: add audio player + real flaw metrics table
Add interactive eval notebook
Add measured-flaw + filler scoring to eval
Add verify module for eval
