EXCISE: Query-Side Exclusion for Late-Interaction Retrieval
Mohammed Ali, Abdelrahman Abdallah, Adam Jatowt
cs.IR
2026-08-06
Late-interaction retrievers like ColBERT score "X but not Z" backwards, ranking documents covering Z first; EXCISE fixes this at query time with two 1.5M-parameter modules over a frozen index, lifting ExcluIR exclusion success@10 from 0.058 to 0.691 without harming ordinary retrieval.
Search for "electric cars, but not Tesla" and a late-interaction retriever like ColBERT ranks the Tesla page first. This is not an occasional bug; it is built into the scoring. ColBERT scores a document by taking, for each query token, its strongest match in the document and summing those best matches. Every token contributes positively, so the "Tesla" tokens add the most to documents that cover Tesla. The authors call this exclusion inversion and prove it as an identity of the MaxSim sum; across 554 ExcluIR test queries, the confusable negative that should be excluded outscores the gold answer 57.8% of the time.
The authors first run a key diagnostic: the hard part is not scoring but identifying the excluded topic. A supervised probe trying to separate gold from confusable negatives on frozen vectors tops out at 0.57 accuracy at any layer (chance is 0.50), and nine parameter-free test-time interventions all fail. But once the excluded topic is supplied, a simple demotion rule lifts ExcluIR success@10 from 0.058 to 0.598. So learning can be confined to the query path. EXCISE has three stages: a LoRA detector decides whether the query contains an exclusion and marks the topic; an exclusion adapter re-embeds the query and the top-100 shortlist so documents covering the topic can be told apart; and a demotion stage lowers scores by a relative threshold and hard-deletes the strongest matches. The two modules total 1.5M parameters on a 298M backbone, and the index is left untouched. When the detector does not fire, EXCISE returns the frozen ranking unchanged.
| System | ExcluIR | FiQA | TREC-COVID | EUR-Lex | No-harm nDCG | Boolean NOT |
| Frozen ColBERT | 0.058 | 0.087 | 0.134 | 0.061 | 0.513 | 0.292 |
| Full fine-tune | 0.491 | 0.317 | 0.507 | 0.214 | 0.496 | 0.692 |
| EXCISE | 0.691 | 0.620 | 0.671 | 0.429 | 0.516 | 0.899 |
(Reason-ModernColBERT backbone; EXCISE wins all 18 backbone-by-collection cells.) The point is not only the score: full fine-tuning trades ordinary-retrieval accuracy for exclusion (no-harm nDCG drops from 0.513 to 0.496), while EXCISE ticks slightly up. Boolean NOT accuracy rises from 0.25 to 0.29 up to 0.90 to 0.92. Overhead is small: the detector adds 12.7 ms per query, re-embedding adds 15.1 ms when it fires, and the worst case is 1.4x frozen latency. It also beats every fine-tuned cross-encoder pooled over 1,860 queries.
For retrieval-system builders, especially in legal e-discovery, systematic review, and compliance search where one wrong result is costly, this is a query-side patch that attaches and detaches without migration: the index stays put, and every change lives on the query path. Its methodological lesson matters more: isolate the part that needs learning (identifying the topic), concentrate learning there (1.5M parameters is enough), rather than fine-tuning the whole encoder and re-indexing the corpus. Misfire safety is also guaranteed: when no real exclusion exists the evidence scores are flat, the penalty is near-uniform, and the ranking is unchanged, with a proved proposition backing it.
Re-embedding runs only inside the top-100 shortlist and cannot fix first-stage recall: if the gold is not in the top 100, no later re-ranking helps, which is why gains on the EDGAR corpus are smaller. Hard demotion is capped at removing three candidates, so a document that strongly matches both the excluded and the wanted topic may absorb the penalty and stay in the top ten. The detector relies on a single threshold of 0.76 shared across three backbones; the authors concede that if one backbone's false-fire rate exceeded budget it would need its own threshold, mixing threshold differences into cross-backbone comparisons.