MathArena 是一个用于评估大语言模型(LLM)在最新数学竞赛和奥林匹克竞赛中表现的研究平台,已被 NeurIPS D&B '25 收录。平台官网为 matharena.ai,其 GitHub 仓库 eth-sri/matharena 提供了模型评估所需的全部代码,并包含运行自有模型的详细说明。
用途
MathArena 主要用于对 LLM 在数学竞赛题目上的表现进行标准化评估。它覆盖多个当前非废弃的竞赛,并提供配置映射,方便用户针对特定竞赛运行模型。评估结果(包括完整推理轨迹和模型生成的解答)发布在 HuggingFace 页面(https://huggingface.co/MathArena)。
主要能力
- 支持多种 API 提供商:xai、openai、together、google、anthropic、glm、bigmodel、deepseek、openrouter,以及本地 vllm(无需 API 密钥)。
- 支持批量处理(仅 OpenAI 和 Anthropic 模型)、OpenAI responses API、推理强度设置(如 o3-mini--high)等。
- 提供智能体(Agent)评估框架,可通过顶层配置文件定义智能体,指向纯模型配置和智能体工作流配置。
- 提供本地 Web 服务器(运行
uv run python app/app.py --comp path/to/competition,访问 http://localhost:5001/)以检查保存到 output 的成功运行,展示最终答案、与模型的完整交互或智能体步骤。运行中的警告标志(💀 解析错误、⚠️ 正确答案可能未被提取、❕ 模型可能达到最大 token 限制)提示潜在问题,需要手动验证。 - 支持对需要评分的竞赛(如 BrokenArXiv、USAMO)运行评分脚本,并提供了配置示例(configs/judges/)。
使用方式
- 依赖管理:MathArena 使用 UV 管理依赖。安装 UV 的命令为:
macOS 和 Linux:
curl -LsSf https://astral.sh/uv/install.sh | shWindows:powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"如果要运行本地模型,需在 pyproject.toml 中取消注释 vllm 安装。
也可使用 conda 环境替代 UV(此时忽略所有指令中的 uv run,直接使用 python)。
-
运行评估前,需从仓库根目录构建 Docker 镜像并准备其缓存一次。
-
评估模型命令:指定竞赛配置文件和模型配置文件的相对路径(均不含 .yaml 扩展名)。常用脚本
run_all_fa.sh和run_all_kangaroo.sh可快捷地在所有当前非废弃竞赛上运行模型。 -
附加参数:
--n:每个问题的运行次数(默认 4)。--redo-all:忽略现有运行并全部重跑(默认 false,从 outputs/ 中已有运行继续)。--problems:要运行的问题索引(从 1 开始,默认运行所有问题)。
- 添加新模型:在 configs/models 文件夹中创建配置文件,需包含:
- 必需:model(模型名称,OpenAI 模型可通过追加
--[low/medium/high]设置推理强度,如o3-mini--high)、api(API 提供商,需设置对应环境变量,如 OPENAI_API_KEY 等)、human_readable_id(唯一描述性标识符)。 - 可选:API 设置(temperature、top_p、top_k)、max_tokens、concurrent_requests(默认 30)、timeout(默认 2000 秒)、max_retries(默认 50)、read_cost & write_cost(默认各 1 美元/百万 token)、cache_read_cost、date(格式 "yyyy-mm-dd")、batch_processing(仅 OpenAI 和 Anthropic)、use_openai_responses_api、harness(通过 codex、claude、kimi、gemini、qwen 或 opencode 运行,需竞赛设置 allow_harness: true)、harness_version、harness_config 等。
- 添加新智能体:通过顶层配置文件(如 config/models/openai/gpt-5-agent.yaml)定义,指向纯模型配置和智能体脚手架配置。添加新脚手架可参考 solvers/selfcheck_agent.py 和 base_agent.py。
适用场景
适用于研究人员、开发者或组织评估 LLM 在数学竞赛任务中的推理能力,支持本地模型和多种云端 API 模型,便于进行可重复的基准测试和结果分析。
限制
- 部分竞赛(Putnam、IMC、IMO 2025、USAMO 2025、Miklos Schweitzer 2025)通过人工验证评分,无法自动评分;如需运行,需调整配置(类似 USAMO 2026 竞赛)。
- Project Euler 问题未发布正确答案,无法直接判分,除非适配 data/euler/euler/answers.csv 中的正确答案。
- 批量处理仅支持 OpenAI 和 Anthropic 模型。
- Harness 方式运行模型需要竞赛启用 allow_harness: true。
- 本地模型需额外配置 vllm。
- 关于收费、价格等具体信息暂未提供。