{"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/an-information-theoretic-approach-to-prompt-1","title":"An Information-theoretic Approach to Prompt Engineering Without Ground Truth Labels","arxiv_id":"2203.11364","date":"2022-03-21","proceeding":"ACL 2022 5","authors":["Taylor Sorensen","Joshua Robinson","Christopher Michael Rytting","Alexander Glenn Shaw","Kyle Jeffrey Rogers","Alexia Pauline Delorey","Mahmoud Khalil","Nancy Fulda","David Wingate"],"abstract":"Pre-trained language models derive substantial linguistic and factual knowledge from the massive corpora on which they are trained, and prompt engineering seeks to align these models to specific tasks. Unfortunately, existing prompt engineering methods require significant amounts of labeled data, access to model parameters, or both. We introduce a new method for selecting prompt templates \\textit{without labeled examples} and \\textit{without direct access to the model}. Specifically, over a set of candidate templates, we choose the template that maximizes the mutual information between the input and the corresponding model output. Across 8 datasets representing 7 distinct NLP tasks, we show that when a template has high mutual information, it also has high accuracy on the task. On the largest model, selecting prompts with our method gets 90\\% of the way from the average prompt accuracy to the best prompt accuracy and requires no ground truth labels.","url_abs":"https://arxiv.org/abs/2203.11364v1","url_pdf":"https://arxiv.org/pdf/2203.11364v1.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":[],"tasks":[{"task_slug":"prompt-engineering","task_name":"Prompt Engineering"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2203.11364","atlas_url":"https://app.syntology.ai/?focus=2203.11364","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2203.11364"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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":"deterministic:regex_extraction","url":"https://github.com/BYU-PCCL/information-theoretic-prompts","reach":null}],"summary":{"ran_draft_wrong":5,"ran_honours":1,"unverified":1},"by_repo_kind":{"found_in_text":{"samples":7,"ran":6,"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":0,"samples":[{"code_sha256_prefix":"d1cdd1046c1d2c2d","entry":"collapse_lower_strip","repo":"BYU-PCCL/information-theoretic-prompts","repo_kind":"found_in_text","path":"postprocessor.py","file_url":"https://github.com/BYU-PCCL/information-theoretic-prompts/blob/HEAD/postprocessor.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d1cdd1046c1d2c2d"}},{"code_sha256_prefix":"d9fc0178d1bf4ae1","entry":"collapse_token_sets","repo":"BYU-PCCL/information-theoretic-prompts","repo_kind":"found_in_text","path":"postprocessor.py","file_url":"https://github.com/BYU-PCCL/information-theoretic-prompts/blob/HEAD/postprocessor.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d9fc0178d1bf4ae1"}},{"code_sha256_prefix":"cf113e434acb350f","entry":"coverage","repo":"BYU-PCCL/information-theoretic-prompts","repo_kind":"found_in_text","path":"postprocessor.py","file_url":"https://github.com/BYU-PCCL/information-theoretic-prompts/blob/HEAD/postprocessor.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"cf113e434acb350f"}},{"code_sha256_prefix":"4764a0e5f32d9dfc","entry":"exponentiate","repo":"BYU-PCCL/information-theoretic-prompts","repo_kind":"found_in_text","path":"postprocessor.py","file_url":"https://github.com/BYU-PCCL/information-theoretic-prompts/blob/HEAD/postprocessor.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"4764a0e5f32d9dfc"}},{"code_sha256_prefix":"a3730f3c9d52647e","entry":"normalize","repo":"BYU-PCCL/information-theoretic-prompts","repo_kind":"found_in_text","path":"postprocessor.py","file_url":"https://github.com/BYU-PCCL/information-theoretic-prompts/blob/HEAD/postprocessor.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"a3730f3c9d52647e"}},{"code_sha256_prefix":"b8fca42b22ff519c","entry":"prob_function","repo":"BYU-PCCL/information-theoretic-prompts","repo_kind":"found_in_text","path":"postprocessor.py","file_url":"https://github.com/BYU-PCCL/information-theoretic-prompts/blob/HEAD/postprocessor.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"b8fca42b22ff519c"}},{"code_sha256_prefix":"cee149a735309191","entry":"Postprocessor","repo":"BYU-PCCL/information-theoretic-prompts","repo_kind":"found_in_text","path":"postprocessor.py","file_url":"https://github.com/BYU-PCCL/information-theoretic-prompts/blob/HEAD/postprocessor.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"cee149a735309191"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}