metadata
language:
- en
tags:
- retrieval
- document_expansion
- text-generation
widget:
- text: >-
The presence of communication amid scientific minds was equally important
to the success of the Manhattan Project as scientific intellect was. The
only cloud hanging over the impressive achievement of the atomic
researchers and engineers is what their success truly meant; hundreds of
thousands of innocent lives obliterated.
example_title: msmarco-passage
- text: >-
0-60 Times - 0-60 | 0 to 60 Times & 1/4 Mile Times | Zero to 60 Car
Reviews.
example_title: msmarco-passage-v2
- text: >-
A small group of politicians believed strongly that the fact that Saddam
Hussien remained in power after the first Gulf War was a signal of
weakness to the rest of the world, one that invited attacks and terrorism.
Shortly after taking power with George Bush in 2000 and after the attack
on 9/11, they were able to use the terrorist attacks to justify war with
Iraq on this basis and exaggerated threats of the development of weapons
of mass destruction. The military strength of the U.S. and the brutality
of Saddam's regime led them to imagine that the military and political
victory would be relatively easy.
example_title: antique
datasets:
- irds:msmarco-passage
library_name: transformers
A Doc2Query model based on t5-base
and trained on MS MARCO. This is a version of the checkpoint released by the original authors, converted to pytorch format and ready for use in pyterrier_doc2query
.
Creating a transformer:
import pyterrier as pt
pt.init()
from pyterrier_doc2query import Doc2Query
doc2query = Doc2Query('macavaney/doc2query-t5-base-msmarco')
Transforming documents
import pandas as pd
doc2query(pd.DataFrame([
{'docno': '0', 'text': 'Hello Terrier!'},
{'docno': '1', 'text': 'Doc2Query expands queries with potentially relevant queries.'},
]))
# docno text querygen
# 0 Hello Terrier! hello terrier what kind of dog is a terrier wh...
# 1 Doc2Query expands queries with potentially rel... can dodoc2query extend query query? what is do...
Indexing transformed documents
doc2query.append = True # append querygen to text
indexer = pt.IterDictIndexer('./my_index', fields=['text'])
pipeline = doc2query >> indexer
pipeline.index([
{'docno': '0', 'text': 'Hello Terrier!'},
{'docno': '1', 'text': 'Doc2Query expands queries with potentially relevant queries.'},
])
Expanding and indexing a dataset
dataset = pt.get_dataset('irds:vaswani')
pipeline.index(dataset.get_corpus_iter())
References
- [Nogueira20]: Rodrigo Nogueira and Jimmy Lin. From doc2query to docTTTTTquery. https://cs.uwaterloo.ca/~jimmylin/publications/Nogueira_Lin_2019_docTTTTTquery-v2.pdf
- [Macdonald20]: Craig Macdonald, Nicola Tonellotto. Declarative Experimentation inInformation Retrieval using PyTerrier. Craig Macdonald and Nicola Tonellotto. In Proceedings of ICTIR 2020. https://arxiv.org/abs/2007.14271