Re2G: Retrieve, Rerank, Generate

Michael Glass, Gaetano Rossiello, Md Faisal Mahbub Chowdhury, Ankita Rajaram Naik, Pengshan Cai +1 more
7/13/2022
cs.CLcs.AIcs.IR

Official code: IBM/kgi-slot-filling (157 stars, Apache-2.0, last commit 2025-09-18).

Abstract

As demonstrated by GPT-3 and T5, transformers grow in capability as parameter spaces become larger and larger. However, for tasks that require a large amount of knowledge, non-parametric memory allows models to grow dramatically with a sub-linear increase in computational cost and GPU memory requirements. Recent models such as RAG and REALM have introduced retrieval into conditional generation. These models incorporate neural initial retrieval from a corpus of passages. We build on this line of research, proposing Re2G, which combines both neural initial retrieval and reranking into a BART-based sequence-to-sequence generation. Our reranking approach also permits merging retrieval results from sources with incomparable scores, enabling an ensemble of BM25 and neural initial retrieval. To train our system end-to-end, we introduce a novel variation of knowledge distillation to train the initial retrieval, reranker, and generation using only ground truth on the target sequence output. We find large gains in four diverse tasks: zero-shot slot filling, question answering, fact-checking, and dialog, with relative gains of 9% to 34% over the previous state-of-the-art on the KILT leaderboard. We make our code available as open source at https://github.com/IBM/kgi-slot-filling/tree/re2g.

View on arXivView PDF

Code Implementations(1)

Apache-2.0

This is the code for our KILT leaderboard submissions (KGI + Re2G models).

15713PythonApr 12, 20211 years agoApache-2.0

Similar Papers

Cite this paper

@article{glass2022reg,
  title  = {Re2G: Retrieve, Rerank, Generate},
  author = {Michael Glass and Gaetano Rossiello and Md Faisal Mahbub Chowdhury and Ankita Rajaram Naik and Pengshan Cai and Alfio Gliozzo},
  year   = {2022},
  eprint = {2207.06300},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2207.06300v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2207.06300.svg)](https://codeofpaper.com/paper/2207.06300)

Discussion