Skip to content
forked from texttron/hyde

HyDE: Precise Zero-Shot Dense Retrieval without Relevance Labels

Notifications You must be signed in to change notification settings

avshalomman/hyde

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HyDE: Precise Zero-Shot Dense Retrieval without Relevance Labels

This is code repository for the paper: HyDE: Precise Zero-Shot Dense Retrieval without Relevance Labels.

HyDE zero-shot instructs GPT3 to generate a fictional document and re-encodes it with unsupervised retriever Contriever to search in its embedding space. HyDE significantly outperforms Contriever across tasks and languages and it does not require any human labeled relevance judgement.

approach

Steps to run the code

  1. Install pyserini by following the guide. We use pyserini to conduct dense retrieval and evaluation.

  2. Download the prebuilt Contrever faiss index

wget  https://www.dropbox.com/s/dytqaqngaupp884/contriever_msmarco_index.tar.gz
tar -xvf contriever_msmarco_index.tar.gz
  1. Setup GPT3 API key
export OPENAI = <your key>
  1. Run hyde-dl19.ipynb, it will run the experiment on the TREC DL19 dataset. Run hyde-demo.ipynb, it will go through HyDE pipeline with an example query.

Citation

@article{hyde,
  title = {Precise Zero-Shot Dense Retrieval without Relevance Labels},
  author = {Luyu Gao and Xueguang Ma and Jimmy Lin and Jamie Callan},
  journal={arXiv preprint arXiv:2212.10496},
  year = {2022}
}

About

HyDE: Precise Zero-Shot Dense Retrieval without Relevance Labels

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 97.5%
  • Python 2.5%