The Explore "related" rail (gallery_service.similar → _diversify_similar, from #1188) was tuned conservatively. Push all three diversity knobs so it spans further across clusters instead of clumping near the anchor:
MMR lam 0.55 → 0.40 — weight the diversity penalty harder (the main dial).
candidate pool min(200, max(limit*5, 60)) → min(400, max(limit*8, 100)) — a wider nearest-cosine pool so MMR has genuinely distinct neighbourhoods to reach into.
pHash dup_threshold 6 → 8 — collapse more near-duplicate reposts/clones, freeing rail slots for distinct picks.
Still deterministic (same set per image, just more spread) and relevance-anchored via the lam*sim-to-anchor term. Backend-only, no migration. CI green on dev (run 1818, incl. integration).
The Explore "related" rail (`gallery_service.similar` → `_diversify_similar`, from #1188) was tuned conservatively. Push all three diversity knobs so it spans further across clusters instead of clumping near the anchor:
- **MMR `lam` 0.55 → 0.40** — weight the diversity penalty harder (the main dial).
- **candidate pool `min(200, max(limit*5, 60))` → `min(400, max(limit*8, 100))`** — a wider nearest-cosine pool so MMR has genuinely distinct neighbourhoods to reach into.
- **pHash `dup_threshold` 6 → 8** — collapse more near-duplicate reposts/clones, freeing rail slots for distinct picks.
Still deterministic (same set per image, just more spread) and relevance-anchored via the `lam*sim-to-anchor` term. Backend-only, no migration. CI green on dev (run 1818, incl. integration).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Operator wants the Explore "related" rail to span more — the #1188 diversifier
was tuned conservatively. Push all three knobs so it reaches further across
clusters instead of clumping near the anchor:
- MMR lam 0.55 → 0.40 — weight the diversity penalty harder (the main dial).
- candidate pool min(200, max(limit*5, 60)) → min(400, max(limit*8, 100)) — a
wider nearest-cosine pool so MMR has genuinely distinct neighbourhoods to pick
from, not just the near-dupes.
- pHash dup_threshold 6 → 8 — collapse more near-duplicate reposts/clones,
freeing rail slots for distinct picks.
Still deterministic (same set per image, just more spread) and relevance-anchored
via the lam*sim-to-anchor term. Backend-only; no migration.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ttrj5P7upUTueSfoJcxEqa
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
The Explore "related" rail (
gallery_service.similar→_diversify_similar, from #1188) was tuned conservatively. Push all three diversity knobs so it spans further across clusters instead of clumping near the anchor:lam0.55 → 0.40 — weight the diversity penalty harder (the main dial).min(200, max(limit*5, 60))→min(400, max(limit*8, 100))— a wider nearest-cosine pool so MMR has genuinely distinct neighbourhoods to reach into.dup_threshold6 → 8 — collapse more near-duplicate reposts/clones, freeing rail slots for distinct picks.Still deterministic (same set per image, just more spread) and relevance-anchored via the
lam*sim-to-anchorterm. Backend-only, no migration. CI green on dev (run 1818, incl. integration).🤖 Generated with Claude Code