File size: 3,085 Bytes
015edc9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
---
license: apache-2.0
pipeline_tag: text-ranking
library_name: transformers
base_model: google/t5-3b
---

# MVP: Multi-view-guided Passage Reranking with Large Language Models

This repository contains the official implementation of the paper: [**Multi-view-guided Passage Reranking with Large Language Models**](https://huggingface.co/papers/2509.07485).

<div align="center">

<a href="https://huggingface.co/papers/2509.07485"><img src="https://img.shields.io/badge/arXiv-Paper-red" alt="arXiv Paper"></a>
<a href="https://github.com/bulbna/MVP"><img src="https://img.shields.io/badge/GitHub-Code-blue?logo=github" alt="GitHub Code"></a>

</div>

## Overview
<p align="center">
  <img src="https://github.com/bulbna/MVP/raw/main/assets/fig_MVP_motivation.png" alt="MVP Motivation" width="50%">
</p>

Recent advances in large language models (LLMs) have shown impressive performance in passage reranking tasks. Despite their success, LLM-based methods still face challenges in efficiency and sensitivity to external biases.
- (i) Existing models rely mostly on autoregressive generation and sliding window strategies to rank passages, which incurs heavy computational overhead as the number of passages increases.
- (ii) External biases, such as positional or semantic bias, hinder the model’s ability to accurately represent passages and the input-order sensitivity.

To address these limitations, we propose Multi-View-guided Passage Reranking (MVP), a non-generative LLM-based reranker that encodes query–passage information into multiple views and computes relevance scores via anchor vectors in a single decoding step. An orthogonal loss encourages diversity across views. With only 220M parameters, MVP matches 7B-scale fine-tuned models while reducing inference latency by 100×, and the 3B variant achieves state-of-the-art results on both in-domain and out-of-domain benchmarks.

## Setup Environment
```
conda env create -f mvp.yaml
conda activate mvp
```

## How to Use
### Run MVP
```
cd inference
bash run_evaluation.sh
```

### Train MVP
```
cd train
bash train.sh
```

## Model Checkpoints
1. [MVP-base](https://huggingface.co/Jun421/MVP-base)
2. [MVP-3b](https://huggingface.co/Jun421/MVP-3b)

## Dataset
### Evaluation Datasets
- [BM25-Top100](https://huggingface.co/datasets/Soyoung97/beir-eval-bm25-top100)

### Training Datasets
- [Train/Valid](https://huggingface.co/datasets/Jun421/MVP-train)
This dataset is derived from BEIR/MSMARCO license, and its usage is restricted to **academic purposes** only.

## Acknowledgments
We implemented our model based on the following repository: [ListT5](https://github.com/soyoung97/ListT5)

## Citation
If you find our work useful or helpful for your research, please consider citing our paper:
```bibtex
@inproceedings{na2025multiviewguided,
  title={Multi-view-guided Passage Reranking with Large Language Models},
  author={Na, Jeongwoo and Kwon, Jun and Choi, Eunseong and Lee, Jongwuk},
  booktitle={Proceedings of the Conference on Empirical Methods in Natural Language Processing (EMNLP)},
  year={2025}
}
```