Repository navigation
A faster, more accurate re-ranker.
laya-code-r2 is the new default re-ranker.
- It is a ModernBERT-base model with laya's decision head, trained by this project on laya-codex's own candidate lists. It replaces laya-code-r1.
- It is served at 128 tokens × 12 candidates, for prompts and for
search. - More right files: offline, it inlines 141 of 238 gold files, against r1's 132 and keywords' 118.
- Faster prompt hook: about 130 ms (p50, M4 Pro) instead of 517 ms, with four exact Metal speed-ups of the forward pass. Their output is bit-identical.
- Smaller download: about 330 MB instead of 850 MB.
Metal on macOS before 15. candle 0.11 panicked when it opened a Metal device on macOS 14 and earlier. Every release since v0.1.0 therefore ranked by keywords only on those Macs. Fixed.
Benchmark v15: 60 held-out tasks, Claude Sonnet 5.5.
| per session | stock | v0.4.0 | v0.5.0 |
|---|---|---|---|
| Cost | $0.066 | $0.062 | $0.062 (−6.6% vs stock) |
| Wall-clock | 21.8 s | 18.1 s | 18.5 s (−15.2%) |
| Lookup calls | 3.87 | 2.03 | 1.83 |
| Lookup time | 10.6 s | 6.4 s | 5.4 s |
| Right files, first question | 0.73 | 0.81 | 0.84 |
- Against v0.4.0: lookup time −16.7%. Cost and recall moved the right way but not significantly, and nothing got worse.
- Against stock: code read plus injected is +32%.
- Caveat: the run's score cache was off because of a full disk, which adds hook time only. See docs/RESULTS.md.
Upgrade
- An r1 install keeps working.
- Get r2 with
curl -fsSL https://raw.githubusercontent.com/pilotspace/laya-codex/main/install.sh | sh -s -- --model-only. laya-codex doctorshows which model is serving.
Full list: CHANGELOG.