{"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/mapo-advancing-multilingual-reasoning-through","title":"MAPO: Advancing Multilingual Reasoning through Multilingual Alignment-as-Preference Optimization","arxiv_id":"2401.06838","date":"2024-01-12","proceeding":null,"authors":["Shuaijie She","Wei Zou","ShuJian Huang","Wenhao Zhu","Xiang Liu","Xiang Geng","Jiajun Chen"],"abstract":"Though reasoning abilities are considered language-agnostic, existing LLMs exhibit inconsistent reasoning abilities across different languages, e.g., reasoning in the dominant language like English is superior to other languages due to the imbalance of multilingual training data. To enhance reasoning abilities in non-dominant languages, we propose a Multilingual-Alignment-as-Preference Optimization framework (MAPO), aiming to align the reasoning processes in other languages with the dominant language. Specifically, we harness an off-the-shelf translation model for the consistency between answers in non-dominant and dominant languages, which we adopt as the preference for optimization, e.g., Direct Preference Optimization (DPO) or Proximal Policy Optimization (PPO). Experiments show that MAPO stably achieves significant improvements in the multilingual reasoning of various models on all three benchmarks (MSVAMP +16.2%, MGSM +6.1%, and MNumGLUESub +13.3%), with improved reasoning consistency across languages.","url_abs":"https://arxiv.org/abs/2401.06838v3","url_pdf":"https://arxiv.org/pdf/2401.06838v3.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":"mapo-advancing-multilingual-reasoning-through","repo_url":"https://github.com/njunlp/mapo","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"mathematical-reasoning","task_name":"Mathematical Reasoning"}],"methods":[{"method_slug":"align","method_name":"ALIGN"},{"method_slug":"entropy-regularization","method_name":"Entropy Regularization"},{"method_slug":"ppo","method_name":"PPO"}],"datasets_introduced":[{"slug":"mnumgluesub","name":"MNumGLUESub","full_name":""}],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2401.06838","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2401.06838"}},"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":"deterministic:regex_extraction","url":"https://github.com/huggingface/trl","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/njunlp/mapo","reach":{"status":"ok"}}],"summary":{"ran":5,"ran_draft_wrong":1,"unverified":4},"by_repo_kind":{"official":{"samples":10,"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":10,"samples":[{"code_sha256_prefix":"f9d947865d5c2df5","entry":"check_repeated_sentences","repo":"njunlp/mapo","repo_kind":"official","path":"Alignment/RM_Function.py","file_url":"https://github.com/njunlp/mapo/blob/HEAD/Alignment/RM_Function.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":"f9d947865d5c2df5"}},{"code_sha256_prefix":"287846e257403143","entry":"extract_last_num","repo":"njunlp/mapo","repo_kind":"official","path":"Alignment/RM_Function.py","file_url":"https://github.com/njunlp/mapo/blob/HEAD/Alignment/RM_Function.py","link_basis":"harvester_set","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":"287846e257403143"}},{"code_sha256_prefix":"e6cd16b73d39b2f9","entry":"extract_prompt","repo":"njunlp/mapo","repo_kind":"official","path":"Alignment/dpo.py","file_url":"https://github.com/njunlp/mapo/blob/HEAD/Alignment/dpo.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":"e6cd16b73d39b2f9"}},{"code_sha256_prefix":"709e5380f7a98c0c","entry":"load_valuehead_params","repo":"njunlp/mapo","repo_kind":"official","path":"Alignment/load_model.py","file_url":"https://github.com/njunlp/mapo/blob/HEAD/Alignment/load_model.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":"709e5380f7a98c0c"}},{"code_sha256_prefix":"8a0c67573897efe9","entry":"make_model_gradient_checkpointing_compatible","repo":"njunlp/mapo","repo_kind":"official","path":"Alignment/rlhf_model.py","file_url":"https://github.com/njunlp/mapo/blob/HEAD/Alignment/rlhf_model.py","link_basis":"plan_row","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"8a0c67573897efe9"}},{"code_sha256_prefix":"e72ea21ca5a7f293","entry":"process","repo":"njunlp/mapo","repo_kind":"official","path":"Preprocess/extract_dpo_data.py","file_url":"https://github.com/njunlp/mapo/blob/HEAD/Preprocess/extract_dpo_data.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":"e72ea21ca5a7f293"}},{"code_sha256_prefix":"d2581bfd614214b2","entry":"MultiLigual_Alighment_reward_fuction","repo":"njunlp/mapo","repo_kind":"official","path":"Alignment/RM_Function.py","file_url":"https://github.com/njunlp/mapo/blob/HEAD/Alignment/RM_Function.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":"d2581bfd614214b2"}},{"code_sha256_prefix":"6cb9adf1c32bb303","entry":"get_hh","repo":"njunlp/mapo","repo_kind":"official","path":"Alignment/dpo.py","file_url":"https://github.com/njunlp/mapo/blob/HEAD/Alignment/dpo.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":"6cb9adf1c32bb303"}},{"code_sha256_prefix":"40ad288a296c417a","entry":"get_hh","repo":"njunlp/mapo","repo_kind":"official","path":"Alignment/dpo13B.py","file_url":"https://github.com/njunlp/mapo/blob/HEAD/Alignment/dpo13B.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":"40ad288a296c417a"}},{"code_sha256_prefix":"870013f30ea56fa5","entry":"get_prompter","repo":"njunlp/mapo","repo_kind":"official","path":"Alignment/generatePrompt.py","file_url":"https://github.com/njunlp/mapo/blob/HEAD/Alignment/generatePrompt.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":"870013f30ea56fa5"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}