{"id":29253606,"url":"https://github.com/spcl/x1","last_synced_at":"2025-10-06T20:53:12.371Z","repository":{"id":273669767,"uuid":"907714823","full_name":"spcl/x1","owner":"spcl","description":"Official Implementation of \"Reasoning Language Models: A Blueprint\"","archived":false,"fork":false,"pushed_at":"2025-08-03T08:03:44.000Z","size":596,"stargazers_count":71,"open_issues_count":1,"forks_count":10,"subscribers_count":12,"default_branch":"main","last_synced_at":"2025-08-03T10:06:59.294Z","etag":null,"topics":["large-language-models","large-reasoning-models","llm","lrm","mcts-for-llms","reasoning-language-models","reasoning-llms","rlm"],"latest_commit_sha":null,"homepage":"https://arxiv.org/abs/2501.11223","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/spcl.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-12-24T08:03:45.000Z","updated_at":"2025-08-03T08:03:48.000Z","dependencies_parsed_at":null,"dependency_job_id":"afcdc3c0-3e1c-49ab-a91d-6ffc51c1bdff","html_url":"https://github.com/spcl/x1","commit_stats":null,"previous_names":["spcl/x1"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/spcl/x1","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spcl%2Fx1","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spcl%2Fx1/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spcl%2Fx1/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spcl%2Fx1/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/spcl","download_url":"https://codeload.github.com/spcl/x1/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spcl%2Fx1/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278678785,"owners_count":26027050,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-06T02:00:05.630Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["large-language-models","large-reasoning-models","llm","lrm","mcts-for-llms","reasoning-language-models","reasoning-llms","rlm"],"created_at":"2025-07-04T02:07:06.475Z","updated_at":"2025-10-06T20:53:12.351Z","avatar_url":"https://github.com/spcl.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# x1 - A Reasoning Language Model Blueprint\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"paper/pics/basic_pipeline.svg\" width=\"80%\"\u003e\n\u003c/p\u003e\n\nThis is the official implementation of [Reasoning Language Models: A Blueprint](https://arxiv.org/abs/2501.11223).\n\nx1 is an extensible and minimalist framework that can serve as ground to design and experiment with Reasoning Language Models (RLMs).\nx1 provides currently one RLM example implementation, which employs a tree reasoning structure in conjunction with MCTS as the reasoning strategy.\nThis combination allows for a systematic exploration of reasoning paths while balancing exploration of new possibilities and exploitation of promising solutions judged by a value model.\n\n\n## Pillars of Reasoning Language Models\n\nThis class of models has been the result of the development of three lines of works: (1) Reinforcement Learning based models such as\nAlphaZero, (2) LLM and Transformer based models such as GPT-4o, and (3) the continuous growth of compute power and data processing capabilities of\nsupercomputers and high performance systems.\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"paper/pics/history_low_res.svg\" width=\"90%\"\u003e\n\u003c/p\u003e\n\n\n## Setup Guide\n\nIn order to use this framework, you need to have a working installation of Python 3.11.5 or newer.\n\n\n### Installing x1\n\nBefore running either of the following two installation methods, make sure to activate your Python environment (if any) beforehand.\nIf you are a user and you just want to use `x1`, you can install it from source:\n```bash\ngit clone https://github.com/spcl/x1.git\ncd x1\npip install .\n```\nIf you are a developer and you want to modify the code, you can install it in editable mode from source:\n```bash\ngit clone https://github.com/spcl/x1.git\ncd x1\npip install -e .\n```\n\n## Documentation\n\nThe paper gives a high-level overview of the framework and its components.\nIn order to understand the framework in more detail, you can read the documentation of the individual components.\nThe [Strategy](x1/strategy/README.md) component discusses the reasoning structure and the reasoning strategy, specifically the way how x1 implements Monte Carlo Tree Search (MCTS).\nThe [Expansion](x1/expansion/README.md) component shows how a policy model or prompted step expansion can be used to generate new reasoning steps, implementing the generate structure transformation of the framework,\nwhile the [Evaluation](x1/evaluation/README.md) component scores these reasoning steps, regardless whether they are intermediate or final reasoning steps, with the help of a value model or prompted step evaluation (implementing the evaluation transformation).\nThe [Synthetic Generation](x1/synthetic_generation/README.md) component describes the generation of synthetic reasoning tasks as well as the verification of model outputs for these tasks.\nThe [Benchmarking](x1/benchmarking/README.md) component provides tools and infrastructure for benchmarking Reasoning Language Models (RLMs).\nThe [Server](x1/server/README.md) components allows to host policy and value models on separate servers and implements batching for efficient querying of these models.\n\n\n## Examples\n\nThe [examples](examples) directory contains several examples to illustrate certain aspects of the framework.\nIt is a great starting point for learning how to use the framework to solve real problems. As some examples need access to models, you need to start the [server](x1/server) components first.\n\nThe [datasets](datasets) directory contains example datasets for the four [reasoning domains](x1/synthetic_generation/README.md#domains) of the [Synthetic Generation](x1/synthetic_generation) component.\n\n\n## Citations\n\nIf you find this repository valuable, please give it a star!\nGot any questions or feedback? Feel free to reach out and open an issue.\nUsing this in your work? Please reference us using the provided citation:\n\n```bibtex\n@misc{besta2025reasoning,\n  title = {{Reasoning Language Models: A Blueprint}},\n  author = {Besta, Maciej and Barth, Julia and Schreiber, Eric and Kubicek, Ales and Catarino, Afonso and Gerstenberger, Robert and Nyczyk, Piotr and Iff, Patrick and Li, Yueling and Houliston, Sam and Sternal, Tomasz and Copik, Marcin and Kwa\\'{s}niewski, Grzegorz and Müller, Jürgen and Flis, Łukasz and Eberhard, Hannes and Chen, Zixuan and Niewiadomski, Hubert and Hoefler, Torsten},\n  year = 2025,\n  month = Jun,\n  eprinttype = {arXiv},\n  eprint = {2501.11223}\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspcl%2Fx1","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fspcl%2Fx1","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspcl%2Fx1/lists"}