readme: ---
  language:
  - en
  tags:
  - text2text-generation
  datasets:
  - domenicrosati/QA2D
  widget:
  - text: "Where in the world is Carmen Sandiego. She is in Abruzzo"
    example_title: "Where is Carmen Sandiego?"
  - text: "Halifax is a city in which province. Nova Scotia"
    example_title: "A Halifact"
  ---
  # Question-Answer to Statement Converter
  
  A question answer pair to statement converter from https://github.com/jifan-chen/QA-Verification-Via-NLI
  
  See:
  ```
  @article{chen2021can,
    title={Can NLI Models Verify QA Systems' Predictions?},
    author={Chen, Jifan and Choi, Eunsol and Durrett, Greg},
    journal={EMNLP Findings},
    year={2021}
  }
  ```
  
  **Note:** I am not the maintainer or orginal author just keeping it here to use huggingface APIs to produce statements from question answer pair for downstream applications.
  
  ## TL;DR:
  We fine-tune a seq2seq model,
  T5-3B (Raffel et al., 2020), using the \\((a, q, d)\\) pairs
  annotated by Demszky et al. (2018).
  
  Where a is answer, q is question, and d is declerative sentence (i.e. a statement).
  
  See Appendex B.2 of Chen et al. for more.
  
  ## Usage
  
  The prompt should be `{question} {seperator} {answer}` where the seperator is `</s>`.
  
  ```python
  from transformers import AutoTokenizer,  AutoModelForSeq2SeqLM
  
  tokenizer = AutoTokenizer.from_pretrained('domenicrosati/question_converter-3b')
  model = AutoModelForSeq2SeqLM.from_pretrained('domenicrosati/question_converter-3b')
  
  question = "Where in the world is Carmen Sandiego?"
  answer = "She is in Abruzzo"
  
  prompt = f'{question} </s> {answer}'
  input_ids = tokenizer(prompt, return_tensors='pt').input_ids
  output_ids = model.generate(input_ids)
  responses = tokenizer.batch_decode(output_ids, skip_special_tokens=True)
  ```
  > `['Carmen Sandiego is in Abruzzo.']`
  