This is the official repository for the paper "DoGMaTiQ: Automated Generation of Question-and-Answer Nuggets for Report Evaluation" (arXiv, 2026). It will contain datasets, code, prompts, and other artifacts to reproduce our results.
NOTE: This repository is currently WIP and under construction. Currently, it includes the nugget bank datasets created for the RAGTIME25 shared task (link), as well as scripts to run the DoGMaTiQ pipeline.
data/- JSON files containing nugget banks for 5 different systems evaluated on RAGTIME25 test topicsragtime_test_common_claude/- Nuggets selected by most-common voting, generated with Clauderagtime_test_dogmatiq_claude/- Nuggets selected by the DoGMaTiQ SVC model, generated with Clauderagtime_test_dogmatiq_llama/- Nuggets selected by the DoGMaTiQ SVC model, generated with Llamaragtime_test_ginger/- Nugget banks derived from the GINGER response generation systemragtime_test_random_claude/- Nuggets selected randomly (baseline), generated with Claude
run_pipeline.sh- Main pipeline scriptstep1_gen_qa.py- Generate QA pairs from documents using an LLMstep2_merge_paraphrases.py- Merge paraphrases and deduplicate questionsstep3_process_answers.py- Process and clean answersstep4_select_top_nuggets.py- Select top nuggets using the SVC modelrun_on_nugget_bank.py- Apply metrics and scoring to a nugget bank
config.py- Configuration file
The pipeline consists of the following steps:
- Document Collection: Download or prepare the document collection
- QA Generation: Generate question-answer pairs from documents using an LLM
- Paraphrase Merging: Identify and merge paraphrased questions
- Answer Processing: Clean and aggregate answers
- Nugget Scoring: Apply trained models to score nugget quality
- Top Selection: Select highest-quality nuggets using the SVC model
WIP
WIP
WIP