SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 2502.06703 · 2025

Can 1B LLM Surpass 405B LLM? Rethinking Compute-Optimal Test-Time Scaling

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 13 functions out of this paper's own repositories and ran 9 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.

RepositoryRoleRan
RyanLiu112/compute-optimal-tts canonical 9 of 13
FunctionStatusWhere it lives
choice_answer_clean Ran RyanLiu112/compute-optimal-tts/src/envs/MATH/grader.py
code served (permissive licence) · get_code("809c0178a7ae90ff")
count_unknown_letters_in_expr Ran RyanLiu112/compute-optimal-tts/src/envs/MATH/verify_utils.py
code served (permissive licence) · get_code("368d3db6347269c3")
get_model_name Ran RyanLiu112/compute-optimal-tts/src/utils.py
code served (permissive licence) · get_code("5e9f6ab031880280")
get_root Ran RyanLiu112/compute-optimal-tts/src/reason/guided_search/tree.py
code served (permissive licence) · get_code("105b6f113614fb89")
is_digit Ran RyanLiu112/compute-optimal-tts/src/envs/MATH/grader.py
code served (permissive licence) · get_code("fb37d3c84b18e368")
is_file_exists Ran RyanLiu112/compute-optimal-tts/src/utils.py
code served (permissive licence) · get_code("6d13ee4c8c032e97")
normalize_answer Ran RyanLiu112/compute-optimal-tts/src/envs/MATH/verify_utils.py
code served (permissive licence) · get_code("101b1e54fcdadf90")
parse_digits Ran RyanLiu112/compute-optimal-tts/src/envs/MATH/grader.py
code served (permissive licence) · get_code("7d4b7f8c3875b126")
should_allow_eval Ran RyanLiu112/compute-optimal-tts/src/envs/MATH/verify_utils.py
code served (permissive licence) · get_code("95f02454eddf082a")
extract_answer Not yet run RyanLiu112/compute-optimal-tts/src/envs/MATH/env.py
code served (permissive licence) · get_code("042094830d54a879")
extract_groundtruth Not yet run RyanLiu112/compute-optimal-tts/src/envs/MATH/env.py
code served (permissive licence) · get_code("664b4759319bf405")
is_file_empty Not yet run RyanLiu112/compute-optimal-tts/src/utils.py
code served (permissive licence) · get_code("c47dcad7c32e67e8")
judge_correct Not yet run RyanLiu112/compute-optimal-tts/src/envs/MATH/env.py
code served (permissive licence) · get_code("25655b21b478adb7")

Repositories linked to this paper

Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.

Abstract

Test-Time Scaling (TTS) is an important method for improving the performance of Large Language Models (LLMs) by using additional computation during the inference phase. However, current studies do not systematically analyze how policy models, Process Reward Models (PRMs), and problem difficulty influence TTS. This lack of analysis limits the understanding and practical use of TTS methods. In this paper, we focus on two core questions: (1) What is the optimal approach to scale test-time computation across different policy models, PRMs, and problem difficulty levels? (2) To what extent can extended computation improve the performance of LLMs on complex tasks, and can smaller language models outperform larger ones through this approach? Through comprehensive experiments on MATH-500 and challenging AIME24 tasks, we have the following observations: (1) The compute-optimal TTS strategy is highly dependent on the choice of policy model, PRM, and problem difficulty. (2) With our compute-optimal TTS strategy, extremely small policy models can outperform larger models. For example, a 1B LLM can exceed a 405B LLM on MATH-500. Moreover, on both MATH-500 and AIME24, a 0.5B LLM outperforms GPT-4o, a 3B LLM surpasses a 405B LLM, and a 7B LLM beats o1 and DeepSeek-R1, while with higher inference efficiency. These findings show the significance of adapting TTS strategies to the specific characteristics of each task and model and indicate that TTS is a promising approach for enhancing the reasoning abilities of LLMs.

For agents

The same record, over MCP at https://syntology.ai/mcp:

get_harvested_code_for_paper("2502.06703")
get_code_for_paper("2502.06703")
have("2502.06703")

Connect an agent — have() is free.