{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/query-performance-prediction-using-relevance","title":"Query Performance Prediction using Relevance Judgments Generated by Large Language Models","arxiv_id":"2404.01012","date":"2024-04-01","proceeding":null,"authors":["Chuan Meng","Negar Arabzadeh","Arian Askari","Mohammad Aliannejadi","Maarten de Rijke"],"abstract":"Query performance prediction (QPP) aims to estimate the retrieval quality of a search system for a query without human relevance judgments. Previous QPP methods typically return a single scalar value and do not require the predicted values to approximate a specific information retrieval (IR) evaluation measure, leading to certain drawbacks: (i) a single scalar is insufficient to accurately represent different IR evaluation measures, especially when metrics do not highly correlate, and (ii) a single scalar limits the interpretability of QPP methods because solely using a scalar is insufficient to explain QPP results. To address these issues, we propose a QPP framework using automatically generated relevance judgments (QPP-GenRE), which decomposes QPP into independent subtasks of predicting the relevance of each item in a ranked list to a given query. This allows us to predict any IR evaluation measure using the generated relevance judgments as pseudo-labels. This also allows us to interpret predicted IR evaluation measures, and identify, track and rectify errors in generated relevance judgments to improve QPP quality. We predict an item's relevance by using open-source large language models (LLMs) to ensure scientific reproducibility. We face two main challenges: (i) excessive computational costs of judging an entire corpus for predicting a metric considering recall, and (ii) limited performance in prompting open-source LLMs in a zero-/few-shot manner. To solve the challenges, we devise an approximation strategy to predict an IR measure considering recall and propose to fine-tune open-source LLMs using human-labeled relevance judgments. Experiments on the TREC 2019-2022 deep learning tracks show that QPP-GenRE achieves state-of-the-art QPP quality for both lexical and neural rankers.","url_abs":"https://arxiv.org/abs/2404.01012v2","url_pdf":"https://arxiv.org/pdf/2404.01012v2.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"query-performance-prediction-using-relevance","repo_url":"https://github.com/chuanmeng/qpp-genre","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"information-retrieval","task_name":"Information Retrieval"},{"task_slug":"language-modelling","task_name":"Language Modelling"},{"task_slug":"large-language-model","task_name":"Large Language Model"},{"task_slug":"retrieval","task_name":"Retrieval"}],"methods":[{"method_slug":"llama","method_name":"LLaMA"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2404.01012","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2404.01012"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/chuanmeng/qpp-genre","reach":{"status":"ok"}}],"summary":{"ran":3,"unverified":3},"by_repo_kind":{"official":{"samples":6,"ran":3,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":6,"samples":[{"code_sha256_prefix":"043481ff82e85c64","entry":"calculate_sARE","repo":"chuanmeng/qpp-genre","repo_kind":"official","path":"evaluate_qpp.py","file_url":"https://github.com/chuanmeng/qpp-genre/blob/HEAD/evaluate_qpp.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"043481ff82e85c64"}},{"code_sha256_prefix":"65f72ccebfefd50d","entry":"calculate_sMARE","repo":"chuanmeng/qpp-genre","repo_kind":"official","path":"evaluate_qpp.py","file_url":"https://github.com/chuanmeng/qpp-genre/blob/HEAD/evaluate_qpp.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"65f72ccebfefd50d"}},{"code_sha256_prefix":"cff293c53a348a4b","entry":"evaluation","repo":"chuanmeng/qpp-genre","repo_kind":"official","path":"evaluate_qpp.py","file_url":"https://github.com/chuanmeng/qpp-genre/blob/HEAD/evaluate_qpp.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"cff293c53a348a4b"}},{"code_sha256_prefix":"a516d4163636a590","entry":"extract_first_digit","repo":"chuanmeng/qpp-genre","repo_kind":"official","path":"judge_relevance.py","file_url":"https://github.com/chuanmeng/qpp-genre/blob/HEAD/judge_relevance.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a516d4163636a590"}},{"code_sha256_prefix":"7f3a7ddcef1209a7","entry":"parser_binary","repo":"chuanmeng/qpp-genre","repo_kind":"official","path":"judge_relevance.py","file_url":"https://github.com/chuanmeng/qpp-genre/blob/HEAD/judge_relevance.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"7f3a7ddcef1209a7"}},{"code_sha256_prefix":"aa8d783be138ff41","entry":"parser_digit","repo":"chuanmeng/qpp-genre","repo_kind":"official","path":"judge_relevance.py","file_url":"https://github.com/chuanmeng/qpp-genre/blob/HEAD/judge_relevance.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"aa8d783be138ff41"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}