Skip to content

suppress seed-equivalence (the seed's own master) - #12

Merged
erick-ti merged 2 commits into
mainfrom
seed-equivalence-suppression
May 27, 2026
Merged

suppress seed-equivalence (the seed's own master)#12
erick-ti merged 2 commits into
mainfrom
seed-equivalence-suppression

Conversation

@erick-ti

Copy link
Copy Markdown
Owner

Closes the Day-7 eval follow-up: a seed could recommend a different master of itself at #1 — Take Five → "Take Five — Dave Brubeck" at audio cosine 0.988, but a distinct MBID + Deezer track, so the identity (mbid/ptid) dedup couldn't catch it. _build_results now drops an audio-scored result whose raw audio cosine ≥ 0.98 (env SEED_EQUIVALENCE_AUDIO_MIN) AND whose title token_set-matches the seed (≥ 0.90), recording its keys first so cultural backfill can't re-add it — a live/acoustic version scores lower audio and survives, so the distinct recordings the product exists to surface aren't collapsed. Validated by re-running the full 19-seed benchmark with the heuristic active: surgical — only the two Take Five seeds changed (self-rec gone, genuine jazz promoted), 17/19 untouched, and "Take Five" is still correctly recommended for the So What seed.

erick-ti added 2 commits May 27, 2026 09:04
the day-7 eval surfaced (and reproduced) a seed recommending a *different
master of itself* at #1 — take five → "take five — dave brubeck" at audio cosine
0.988, but a distinct mbid + deezer track, so the identity (mbid/ptid) dedup
can't catch it. _build_results now drops an audio-scored result whose raw audio
cosine ≥ SEED_EQUIVALENCE_AUDIO_MIN (0.98) AND whose title token_set-matches the
seed (≥ SEED_EQUIVALENCE_TITLE_MIN, 0.90), recording its keys first so cultural
backfill can't re-add it. a live/acoustic version scores lower audio and survives
— the and-gate keeps the heuristic from collapsing the distinct recordings the
product exists to surface.

audio-path only (no audio score in cultural-only mode — the documented gap);
thresholds are env knobs for eval calibration. validated on the full 19-seed
benchmark: only the two take-five seeds changed (self-rec gone, genuine jazz
promoted), 17/19 untouched, and "take five" is still correctly recommended for
the so-what seed (different seed title → not suppressed). regression in
test_pipeline.py.
flips the day-7 follow-up to ✓ — _build_results drops the seed's own master
(audio ≥ 0.98 + title match), validated surgical on the full benchmark (only the
take-five seeds changed, 17/19 untouched).
@erick-ti
erick-ti merged commit 02f2d49 into main May 27, 2026
9 checks passed
@erick-ti
erick-ti deleted the seed-equivalence-suppression branch May 27, 2026 16:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant