/freshqa

Data and code for FreshLLMs (https://arxiv.org/abs/2310.03214)

Primary LanguageJupyter NotebookApache License 2.0Apache-2.0

FreshLLMs

Data and code for our paper FreshLLMs: Refreshing Large Language Models with Search Engine Augmentation.

⭐ Our data and method have inspired or been used for the development of recent large language models (LLMs) including Google's Gemini, Perplexity.AI's Online LLMs, You.com, and Contextual AI's RAG 2.0

Quick links

FreshQA

FreshPrompt

FreshEval

FreshQA

FreshQA September 30, 2024

Next update: October 7, 2024

We update our dataset weekly or upon request. If you find any updates or misclassifications in our FreshQA questions or answers that we may have overlooked, please notify us by commenting on the dataset spreadsheet above or sending an email to freshllms@google.com.

Older versions:

FreshQA September 23, 2024

FreshQA September 16, 2024

FreshQA September 5, 2024

FreshQA August 26, 2024

FreshQA August 19, 2024

FreshQA August 12, 2024

FreshQA August 2, 2024

FreshQA July 26, 2024

FreshQA July 19, 2024

FreshQA July 11, 2024

FreshQA July 3, 2024

FreshQA June 24, 2024

FreshQA June 17, 2024

FreshQA June 10, 2024

FreshQA June 3, 2024

FreshQA May 27, 2024

FreshQA May 20, 2024

FreshQA May 13, 2024

FreshQA May 10, 2024

FreshQA May 6, 2024

FreshQA Apr 29, 2024

FreshQA Apr 22, 2024

FreshQA Apr 15, 2024

FreshQA Apr 8, 2024

FreshQA Apr 1, 2024

FreshQA Mar 25, 2024

FreshQA Mar 18, 2024

FreshQA Mar 11, 2024

FreshQA Mar 4, 2024

FreshQA Feb 26, 2024

FreshPrompt

FreshPrompt notebook: Using

FreshEval

We believe that human evaluators possess the expertise and common sense required to detect issues like hallucinations, making them more reliable than automated evaluation metrics for assessing LLMs' factuality. However, researchers have the flexibility to adjust their evaluation methods if human evaluation proves challenging. An easily implemented alternative is to use standard metrics like F1/exact match or recall, which assess the overlap between the model response and the ground truth answer(s) (e.g., see You.com's recent blog where they report FreshQA recall). Researchers can also use LLM-based automatic evaluation metrics such as FactScore or our FreshEval metric below.

Automatic evaluation

To facilitate future evaluations, we have developed FreshEval, a simple automatic metric that uses few-shot in-context learning to teach an LLM to judge model responses, which achieved high agreement with human raters (see Appendix B in our paper for details).

To use FreshEval under a specific evaluation mode (Relaxed or Strict), please follow the instructions below:

  1. Make a copy of our latest data spreadsheet and store it in your Google Drive with a new filename (e.g., fresheval_relaxed or fresheval_strict).
  2. Insert 3 new columns D, E, F in the new spreadsheet for model responses, evaluation rating, evaluation explanation, respectively and save your model's responses in column D (see our sample evaluation spreadsheet below).
  3. Run the associated FreshEval notebook with the evaluation mode. Note that for demonstration purposes, we evaluated only the first 10 model responses. You can adjust the number as needed.

Note: Currently, we recommend gpt-4-1106-preview over gpt-4-0125-preview for FreshEval as it yielded slightly better agreement with human annotations in our small-scale evaluation.

Here are our FreshEval notebooks.

FreshEval (Relaxed) notebook: Using

FreshEval (Strict) notebook: Using

After obtaining TRUE/FALSE ratings for model responses, follow the instructions below to calculate the accuracy for each question category:

  1. Download our latest data spreadsheet in a Comma Separated Values (.csv) format and store it as freshqa.csv.
  2. Open this notebook Using and upload the freshqa.csv file to the session storage (Files > Upload file to session storage).
  3. Replace the existing ratings in the notebook with your ratings and run the notebook.

Acknowledgements

We thank Hailey Joren, William Zhang, Varun Singh, Peter Hart, and Filipe Mesquita for their help in updating our FreshQA questions/answers.

We are grateful to the following people for their contributions to creating our original FreshQA dataset: Marzena Karpinska, Dustin Tran, Daniel Cer, Sam Fullerton, Elizabeth Clark, Nishant Raj, Xiaoyu Song, Yapei Chang, Yixiao Song, Nader Akoury, Ankita Gupta, Bill Ray, Chau Pham, Wenlong Zhao, Maximilian Mozes, Simeng Sun, Ronan Salz, Kalpesh Krishna, Katherine Thai, Kanishka Misra, Salaheddin Alzu'bi, Erica Cai, Thibault Sellam, Jiao Sun, Dhruv Agarwal, Tessa Masis, Andrew Drozdov, Brian Lester, George Wei, Naveen Jafer Nizar, Shufan Wang, Youngwoo Kim, and Shib Sankar Dasgupta.

We are also grateful to SerpApi for their generous sponsorship of 10,000 searches for FreshPrompt's users upon its release.

Citation

If you use our data or method, please cite our paper:

@misc{vu2023freshllms,
      title={FreshLLMs: Refreshing Large Language Models with Search Engine Augmentation}, 
      author={Tu Vu and Mohit Iyyer and Xuezhi Wang and Noah Constant and Jerry Wei and Jason Wei and Chris Tar and Yun-Hsuan Sung and Denny Zhou and Quoc Le and Thang Luong},
      year={2023},
      eprint={2310.03214},
      archivePrefix={arXiv},
      primaryClass={cs.CL}
}