{"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/mirror-a-multiple-perspective-self-reflection","title":"Mirror: A Multiple-perspective Self-Reflection Method for Knowledge-rich Reasoning","arxiv_id":"2402.14963","date":"2024-02-22","proceeding":null,"authors":["Hanqi Yan","Qinglin Zhu","Xinyu Wang","Lin Gui","Yulan He"],"abstract":"While Large language models (LLMs) have the capability to iteratively reflect on their own outputs, recent studies have observed their struggles with knowledge-rich problems without access to external resources. In addition to the inefficiency of LLMs in self-assessment, we also observe that LLMs struggle to revisit their predictions despite receiving explicit negative feedback. Therefore, We propose Mirror, a Multiple-perspective self-reflection method for knowledge-rich reasoning, to avoid getting stuck at a particular reflection iteration. Mirror enables LLMs to reflect from multiple-perspective clues, achieved through a heuristic interaction between a Navigator and a Reasoner. It guides agents toward diverse yet plausibly reliable reasoning trajectory without access to ground truth by encouraging (1) diversity of directions generated by Navigator and (2) agreement among strategically induced perturbations in responses generated by the Reasoner. The experiments on five reasoning datasets demonstrate that Mirror's superiority over several contemporary self-reflection approaches. Additionally, the ablation study studies clearly indicate that our strategies alleviate the aforementioned challenges.","url_abs":"https://arxiv.org/abs/2402.14963v2","url_pdf":"https://arxiv.org/pdf/2402.14963v2.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":"mirror-a-multiple-perspective-self-reflection","repo_url":"https://github.com/hanqi-qi/mirror","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"diversity","task_name":"Diversity"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2402.14963","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2402.14963"}},"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/hanqi-qi/mirror","reach":{"status":"ok"}}],"summary":{"ran":5,"ran_draft_wrong":1,"unverified":2},"by_repo_kind":{"official":{"samples":8,"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":8,"samples":[{"code_sha256_prefix":"eb8fd9c5f215ef02","entry":"clean_answer_is_valid","repo":"hanqi-qi/mirror","repo_kind":"official","path":"agents_module.py","file_url":"https://github.com/hanqi-qi/mirror/blob/HEAD/agents_module.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":"eb8fd9c5f215ef02"}},{"code_sha256_prefix":"6eb39db7d86ef4c9","entry":"find_n_node","repo":"hanqi-qi/mirror","repo_kind":"official","path":"evaluate.py","file_url":"https://github.com/hanqi-qi/mirror/blob/HEAD/evaluate.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":"6eb39db7d86ef4c9"}},{"code_sha256_prefix":"84d28fbaf38b0a59","entry":"format_step","repo":"hanqi-qi/mirror","repo_kind":"official","path":"agents_module.py","file_url":"https://github.com/hanqi-qi/mirror/blob/HEAD/agents_module.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"84d28fbaf38b0a59"}},{"code_sha256_prefix":"57778c38a3b8f2ff","entry":"load_tree_from_json","repo":"hanqi-qi/mirror","repo_kind":"official","path":"evaluate.py","file_url":"https://github.com/hanqi-qi/mirror/blob/HEAD/evaluate.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":"57778c38a3b8f2ff"}},{"code_sha256_prefix":"8eedb4eee9ede87c","entry":"most_common","repo":"hanqi-qi/mirror","repo_kind":"official","path":"evaluate.py","file_url":"https://github.com/hanqi-qi/mirror/blob/HEAD/evaluate.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":"8eedb4eee9ede87c"}},{"code_sha256_prefix":"a236bd96b70f98f1","entry":"parse_action","repo":"hanqi-qi/mirror","repo_kind":"official","path":"agents_module.py","file_url":"https://github.com/hanqi-qi/mirror/blob/HEAD/agents_module.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":"a236bd96b70f98f1"}},{"code_sha256_prefix":"223e24426f804b78","entry":"llm_generate","repo":"hanqi-qi/mirror","repo_kind":"official","path":"model.py","file_url":"https://github.com/hanqi-qi/mirror/blob/HEAD/model.py","link_basis":"first_harvest_node","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":"223e24426f804b78"}},{"code_sha256_prefix":"66193e1c744e0116","entry":"load","repo":"hanqi-qi/mirror","repo_kind":"official","path":"model.py","file_url":"https://github.com/hanqi-qi/mirror/blob/HEAD/model.py","link_basis":"first_harvest_node","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":"66193e1c744e0116"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}