Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks
Patrick Lewis, Ethan Perez, Aleksandra Piktus, Fabio Petroni, Vladimir Karpukhin, Naman Goyal, Heinrich Kuttler, Mike Lewis, Wen-tau Yih, Tim Rocktaschel, Sebastian Riedel, Douwe Kiela
Advances in Neural Information Processing Systems 33 (NeurIPS 2020)22 May 2020
Abstract
Pairs a pretrained generator with a neural retriever over an external corpus, so answers can draw on documents that were never in the training data and can be updated by changing the corpus rather than retraining the model.
A model answers from its weights. Those weights were frozen on a training date, they do not contain your inventory, and they cannot be corrected without retraining. Retrieval moves the facts out of the model and into a corpus you own.
What changes in production
Corrections become a document edit instead of a training run, so a wrong answer can be fixed the same day. Answers can point at the passage they came from, which is the difference between an assistant that is trusted and one that gets checked. Access control becomes possible, because the retriever can restrict by who is asking.
What it does not solve
Retrieval quality is the ceiling. If the right passage is not in the top few results, a stronger generator will not rescue the answer, and a longer context window will not either.
BibTeX
@inproceedings{lewis2020retrievalaugmented,
author = {Patrick Lewis and Ethan Perez and Aleksandra Piktus and Fabio Petroni and Vladimir Karpukhin and Naman Goyal and Heinrich Kuttler and Mike Lewis and Wen-tau Yih and Tim Rocktaschel and Sebastian Riedel and Douwe Kiela},
title = {Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks},
booktitle = {Advances in Neural Information Processing Systems 33 (NeurIPS 2020)},
year = {2020},
eprint = {2005.11401},
archivePrefix = {arXiv},
url = {https://arxiv.org/abs/2005.11401}
}
Ejentic did not author this paper. Credit belongs to the authors named above; the note is ours.
The single most useful result for anyone shipping retrieval. A bigger context window does not fix relevance: if the right chunk lands in the middle of twenty, it may as well not be there. Re-rank and put the best passage last.
Run this before you commit to a retriever. A model that wins on one corpus and collapses on the next is the most common way a search feature disappoints after launch.