SuperAPI AI 工具集

s1

s1 是一个开源的测试时扩展(test-time scaling)研究项目,由 simplescaling 发布。它提供了一套极简方案,仅用 1000 个示例和“预算强制”(budget forcing)技术,就能在推理任务上达到与 o1-preview 相近的强推理性能。项目包含论文、模型、数据集、评测脚本、训练脚本和合成数据生成脚本,支持 vLLM 和 transformers 推理,并提供 s1-32B 与改进版 s1.1-32B 模型。

访问官网

工具介绍

用途

s1 是一个用于研究“测试时扩展”的开源项目。其核心目标是:用极少的示例(1,000 条)结合预算强制(budget forcing)技术,在推理任务上取得与 o1-preview 相当的强推理表现,并公开可复现的训练与评测配方。

主要能力

  • 提供论文《s1: Simple test-time scaling》的完整资源入口。
  • 发布模型:s1.1-32B(当前)与 s1-32B(旧版)。
  • 发布数据集:s1K-1.1(当前)与 s1K(旧版),另有 s1-prob、s1-teasers 以及用于数据消融的 Full 59K。
  • 推理支持 vLLM(含预算强制)、transformers。
  • 提供评测脚本 eval/、合成数据创建脚本 data/、训练脚本 train/。
  • 提供训练脚本 train/sft.py 及配套的 train/sft*sh、train/launch.sh(SLURM 集群)。
  • 提供评测命令 eval/commands.sh 与统计脚本 eval/compute_sample_stats.py。
  • 支持 REBASE 实验,命令位于 eval/rebase/run.sh。
  • 提供复现 s1K 的完整流程(数据收集、Gemini 生成轨迹、Qwen 生成答案、特征化、过滤、评分)。
  • 图表可通过 visuals/visuals.ipynb 及 visuals/s1.fig 复现。

使用方式

  • 推理:安装并运行 vLLM(支持预算强制)或安装 transformers 与 torch 后运行相应脚本。
  • 训练:使用 train/sft.py,通过 train/sft*sh 调用,在 SLURM 集群上可用 train/launch.sh 启动(需按集群配置修改文件)。训练 s1-32B/s1.1-32B 建议使用 16 张 H100 GPU,即 2 个节点各 8 张。s1.1 设置 block size 为 20000 以避免 OOM;若 8 GPU 出现 OOM,可在脚本中加入 --gradient_checkpointing=True。
  • 评测:克隆并修改 lm-evaluation-harness(commit 4cec66e4e468d15789473d6d63c3a61a751fa524),命令见 eval/commands.sh;AIME24 使用 aime24_nofigures 结果。
  • 复现 s1K:运行 data/collect_data.py,再运行 data/fix_gpqa.py 与 data/add_aime.py;用 data/gemini.py 生成 Gemini 轨迹;用 data/bulk_inference.py 生成 Qwen 答案;运行 data/featurization.py 添加特征;通过 data/filter.ipynb 做最终过滤;如需评分可使用 data/grading.ipynb。相关文件中需将 simplescaling 和 qfq 组织名替换为自己拥有的组织。

适用场景

  • 研究测试时扩展与预算强制方法的科研人员。
  • 需要复现 s1 系列模型训练与评测流程的开发者。
  • 希望在有限数据下探索强推理模型训练配方的团队。

限制

  • 官方资料未提供具体的收费、价格或商业使用条款信息。
  • 官方资料未列出所有支持平台或部署环境的完整清单。
  • 训练与评测涉及较多脚本修改和组织名替换,官方未提供一键部署方案。
  • vLLM 使用预算强制时,在 temperature 1 下可能遇到 “Token id XXXXX is out of vocabulary” 错误,官方给出的解决方式是注释掉 vllm/engine/llm_engine.py 中 if max_input_id > tokenizer.max_token_id: 这一行的 ValueError 检查。

官方资源

  • 论文:https://arxiv.org/abs/2501.19393
  • 模型:https://hf.co/simplescaling/s1.1-32B(旧版:https://hf.co/simplescaling/s1-32B)
  • 数据:https://hf.co/datasets/simplescaling/s1K-1.1(旧版:https://hf.co/datasets/simplescaling/s1K)
  • 其他数据:https://hf.co/datasets/simplescaling/s1-prob ,https://hf.co/datasets/simplescaling/s1-teasers ,https://hf.co/datasets/simplescaling/data_ablation_full59K
  • 评测结果:https://hf.co/datasets/simplescaling/results
  • 复现 REBASE 所用模型:https://huggingface.co/simplescaling/step-conditional-control-old
  • 旧数据集:https://huggingface.co/datasets/simplescaling/s1K-step-conditional-control-old
  • 旧评测数据:https://huggingface.co/datasets/Maxwell-Jia/AIME_2024