{"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/alphazero-like-tree-search-can-guide-large","title":"Alphazero-like Tree-Search can Guide Large Language Model Decoding and Training","arxiv_id":"2309.17179","date":"2023-09-29","proceeding":null,"authors":["Xidong Feng","Ziyu Wan","Muning Wen","Stephen Marcus McAleer","Ying Wen","Weinan Zhang","Jun Wang"],"abstract":"Recent works like Tree-of-Thought (ToT) and Reasoning via Planning (RAP) aim to augment the reasoning capabilities of LLMs by using tree-search algorithms to guide multi-step reasoning. These methods rely on prompting a pre-trained model to serve as a value function and focus on problems with low search depth. As a result, these methods will not work in domains where the pre-trained LLM does not have enough knowledge to serve as an effective value function or in domains that require long-horizon planning. To address these limitations, we present an AlphaZero-like tree-search learning framework for LLMs (termed TS-LLM), systematically illustrating how tree-search with a learned value function can guide LLM decoding. TS-LLM distinguishes itself in two key ways. (1) Leveraging a learned value function and AlphaZero-like algorithms, our approach can be generally adaptable to a wide range of tasks, language models of any size, and tasks of varying search depths. (2) Our approach can guide LLMs during both inference and training, iteratively improving the LLM. Empirical results across reasoning, planning, alignment, and decision-making tasks show that TS-LLM outperforms existing approaches and can handle trees with a depth of 64.","url_abs":"https://arxiv.org/abs/2309.17179v2","url_pdf":"https://arxiv.org/pdf/2309.17179v2.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":"alphazero-like-tree-search-can-guide-large","repo_url":"https://github.com/waterhorse1/llm_tree_search","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"decision-making","task_name":"Decision Making"},{"task_slug":"language-modeling","task_name":"Language Modeling"},{"task_slug":"language-modelling","task_name":"Language Modelling"},{"task_slug":"large-language-model","task_name":"Large Language Model"}],"methods":[{"method_slug":"focus","method_name":"Focus"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2309.17179","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2309.17179"}},"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/waterhorse1/llm_tree_search","reach":{"status":"ok"}}],"summary":{"ran":7,"ran_honours":1,"unverified":2},"by_repo_kind":{"official":{"samples":10,"ran":8,"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":"3014c0bb8d49d525","entry":"findattr","repo":"waterhorse1/llm_tree_search","repo_kind":"official","path":"tsllm/model/utils.py","file_url":"https://github.com/waterhorse1/llm_tree_search/blob/HEAD/tsllm/model/utils.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":"3014c0bb8d49d525"}},{"code_sha256_prefix":"fddd688fc94bd20d","entry":"get_root","repo":"waterhorse1/llm_tree_search","repo_kind":"official","path":"tsllm/mcts/tree.py","file_url":"https://github.com/waterhorse1/llm_tree_search/blob/HEAD/tsllm/mcts/tree.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":"fddd688fc94bd20d"}},{"code_sha256_prefix":"7d1ac1a66da5f14c","entry":"list_of_ints","repo":"waterhorse1/llm_tree_search","repo_kind":"official","path":"tsllm/argparse_utils.py","file_url":"https://github.com/waterhorse1/llm_tree_search/blob/HEAD/tsllm/argparse_utils.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"7d1ac1a66da5f14c"}},{"code_sha256_prefix":"009ec15661cc110a","entry":"llm_forward_ct2","repo":"waterhorse1/llm_tree_search","repo_kind":"official","path":"tsllm/llm/text_generation.py","file_url":"https://github.com/waterhorse1/llm_tree_search/blob/HEAD/tsllm/llm/text_generation.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":"009ec15661cc110a"}},{"code_sha256_prefix":"c4a9e40e388e9a76","entry":"llm_gen_ct2","repo":"waterhorse1/llm_tree_search","repo_kind":"official","path":"tsllm/llm/text_generation.py","file_url":"https://github.com/waterhorse1/llm_tree_search/blob/HEAD/tsllm/llm/text_generation.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":"c4a9e40e388e9a76"}},{"code_sha256_prefix":"25be1b228e07de4e","entry":"make_head","repo":"waterhorse1/llm_tree_search","repo_kind":"official","path":"tsllm/model/modeling_actor_critic.py","file_url":"https://github.com/waterhorse1/llm_tree_search/blob/HEAD/tsllm/model/modeling_actor_critic.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":"25be1b228e07de4e"}},{"code_sha256_prefix":"ace162af010af5d8","entry":"rhasattr","repo":"waterhorse1/llm_tree_search","repo_kind":"official","path":"tsllm/model/utils.py","file_url":"https://github.com/waterhorse1/llm_tree_search/blob/HEAD/tsllm/model/utils.py","link_basis":"harvester_set","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":"ace162af010af5d8"}},{"code_sha256_prefix":"0bcbc8c8dbe0be78","entry":"str2bool","repo":"waterhorse1/llm_tree_search","repo_kind":"official","path":"tsllm/argparse_utils.py","file_url":"https://github.com/waterhorse1/llm_tree_search/blob/HEAD/tsllm/argparse_utils.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":"0bcbc8c8dbe0be78"}},{"code_sha256_prefix":"ddc98bed6cb94d33","entry":"llm_gen_with_logp_v1","repo":"waterhorse1/llm_tree_search","repo_kind":"official","path":"tsllm/llm/text_generation.py","file_url":"https://github.com/waterhorse1/llm_tree_search/blob/HEAD/tsllm/llm/text_generation.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":"ddc98bed6cb94d33"}},{"code_sha256_prefix":"fc2499cfa7162602","entry":"rgetattr","repo":"waterhorse1/llm_tree_search","repo_kind":"official","path":"tsllm/model/utils.py","file_url":"https://github.com/waterhorse1/llm_tree_search/blob/HEAD/tsllm/model/utils.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":"fc2499cfa7162602"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}