SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 2606.09052 · 2026

INFUSER: Influence-Guided Self-Evolution Improves Reasoning

Zhuoran Yang, Jose Blanchet, Zhiyuan Li, Tianhao Wang, Miao Lu, Siyu Chen, Fengzhuo Zhang, Beining Wu, Shuangning Li, Heejune Sheen

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 11 functions out of this paper's own repositories and ran 5 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
FFishy-git/INFUSER canonical 5 of 11
FunctionStatusWhere it lives
find_model_paths Ran FFishy-git/INFUSER/launcher/k8s/pre_download_models.py
code served (permissive licence) · get_code("ff7f60b476bf877d")
generate_config_from_args Ran FFishy-git/INFUSER/verl/model_merger/base_model_merger.py
code served (permissive licence) · get_code("8896f4e2bafe8abc")
get_dynamic_pipeline_shards Ran FFishy-git/INFUSER/verl/model_merger/megatron_model_merger.py
code served (permissive licence) · get_code("94209884dcb2308e")
is_ipv4 Ran FFishy-git/INFUSER/verl/utils/net_utils.py
code served (permissive licence) · get_code("735e93af30b15fa9")
unpad_dataproto Ran FFishy-git/INFUSER/verl/protocol.py
code served (permissive licence) · get_code("83b1686d7ac03c21")
get_generation_config Not yet run FFishy-git/INFUSER/verl/utils/model.py
code served (permissive licence) · get_code("e6c72459395ae26a")
get_huggingface_actor_config Not yet run FFishy-git/INFUSER/verl/utils/model.py
code served (permissive licence) · get_code("1b071bded6f62e73")
get_weight_loader Not yet run FFishy-git/INFUSER/verl/models/weight_loader_registry.py
code served (permissive licence) · get_code("acf240079d434746")
get_weight_saver Not yet run FFishy-git/INFUSER/verl/models/weight_loader_registry.py
code served (permissive licence) · get_code("ada2d6cf9ca9ee89")
is_ipv6 Not yet run FFishy-git/INFUSER/verl/utils/net_utils.py
code served (permissive licence) · get_code("705afe175ad8e404")
squeeze Not yet run FFishy-git/INFUSER/verl/utils/model.py
code served (permissive licence) · get_code("3b15e2ac7497c441")

Repositories linked to this paper

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

Abstract

Self-evolution offers a scalable path to stronger reasoning: a pretrained language model improves itself with only minimal external supervision. Yet existing methods either depend on extensively curated or teacher-generated training data, or, when the generator runs unsupervised, reward it by a difficulty heuristic that need not improve the solver. We introduce INFUSER, an iterative co-training framework with two co-evolving roles: a Generator that drafts questions and reference golden answers from a pool of unstructured, automatically collected documents, and a Solver that improves by training on them. The solver is trained with standard correctness rewards against the generator-provided answers, while the generator is rewarded by an optimizer-aware influence score that measures whether each proposed question would actually improve the solver on the target distribution. Because this continuous, noisy influence score is poorly served by standard GRPO, we propose DuGRPO, a dual-normalized variant of GRPO, for generator training. Together, these turn the document pool into an adaptive curriculum that favors questions useful to the current solver, not just hard ones. On Qwen3-8B-Base, INFUSER outperforms strong self-evolution baselines with over 20% relative improvement on Olympiad and SuperGPQA benchmarks, and an 8B INFUSER co-evolving generator outperforms a frozen 32B thinking generator on math and coding. Ablations confirm each design choice is necessary, and two extensions, applying INFUSER to an instruction-finetuned anchor and augmenting it with rule-verifiable RLVR data, further demonstrate the flexibility and generalizability of the framework. Code is available at https://github.com/FFishy-git/INFUSER.

For agents

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

get_harvested_code_for_paper("2606.09052")
get_code_for_paper("2606.09052")
have("2606.09052")

Connect an agent — have() is free.