InternScience/MLExpert
模型介绍
文件和版本
Pull Requests
讨论
分析

MLExpert:迈向面向自主机器学习工程的通用智能体模型

💻 GitHub   |   📄 arXiv Paper   |   🤗 HF Papers

MLExpert 是一个 35B 混合专家(Mixture-of-Experts)智能体模型,专用于自主机器学习工程。它能够自主组织实验、编写并迭代优化代码,并通过与执行环境的持续交互不断改进解决方案。层级化智能体监督微调(Hierarchical agentic SFT)使其具备通用的工具使用能力和领域特定的优化技能,而窗口交互强化学习(Windowed Interaction Reinforcement Learning, WIRL) 则利用已完成实验的反馈来训练多轮决策能力。

核心亮点

  • 长程优化能力: 能够在持久化工作空间中规划实验、解读执行反馈、回溯并改进先前方案,以及筛选最终提交候选。
  • 出色的 MLE 表现: 在 MLE-Bench Lite 上达到 72.7% 的奖牌率,在 MLExpert 框架下与 GLM-5.3 和 Kimi-K3 持平。
  • 通用框架兼容性: 使用 Claude Code 时达到 69.7% 的奖牌率,而其基座模型仅为 42.4%。
  • 科学任务优化: 在 NatureBench Lite 的十个任务中,有七个匹配了已发表的科学成果,五个超越了已有结果。

性能表现

MLE-Bench Lite

我们主要在 MLE-Bench Lite 上评估所训练的模型。MLE-Bench Lite 是 MLE-Bench 的一个 22 任务子集,由历史 Kaggle 竞赛组成,用于端到端机器学习工程的评估。我们报告各奖牌等级(金牌、银牌、铜牌)的任务占比、获得任意奖牌的任务占比(Any Medal),以及超过人类中位分数的任务占比(Med+),其中 Any Medal 为主指标。所有五项指标均基于 22 个任务计算,以百分比形式报告。

前五个指标列使用 MLExpert 框架;最后两列报告通用框架及其奖牌率。所有数值均为百分比。

MLE-Bench Lite 主要结果(论文 Table 1)

MLExpert 在同规模模型中取得最高奖牌率,并达到了更大规模前沿模型的性能水平。 在统一的 MLExpert 框架下,MLExpert 将其 Qwen3.6-35B-A3B 基座模型的奖牌率从 37.9% 提升至 72.7%,在所有受评同规模模型中取得最高奖牌率,性能与 GLM-5.3 和 Kimi-K3 相当。这些结果表明,长程智能体后训练显著提升了基座模型的 MLE 能力,使一个 35B 规模的模型达到了与更大规模前沿模型相当的性能水平。

MLExpert 在通用编码框架下同样保持对基座模型的优势。 使用 Claude Code 时,MLExpert 达到 69.7% 的奖牌率,而其基座模型仅为 42.4%,超越最强的同规模基线 22.7 个百分点。在两种框架下对基座模型的一致优势表明,后训练带来的提升并非依赖于 MLExpert 框架本身,在通用智能体编码环境中同样有效。

NatureBench Lite

我们还在 NatureBench 上进行了评估,采用 Frontis-MA1 中使用的十任务 Lite 子集。M 表示 Match-SOTA(g ≥ 0),S 表示 Surpass-SOTA(g > 0.1),后者是衡量智能体超越已发表科学成果能力的关键指标。

NatureBench Lite main results (Table 2 from the paper)

在 NatureBench Lite 上,MLExpert 相较于基座模型显著提升了科学任务表现。 搭配 Claude Code,MLExpert 将 Surpass-SOTA 比率从 0.0% 提升至 50.0%,超越了 Nex-N2.5-mini 的 20.0%,与 GLM-5.3 的 50.0% 持平。其 Match-SOTA 比率也从 40.0% 提升至 70.0%。这些结果表明,后训练有效提升了科学任务的优化水平,使 MLExpert 在更多任务上达到或超越已发表的参考结果。

使用

以下命令将加载 InternScience/MLExpert 并在 http://localhost:8000/v1 启动 API 服务。

SGLang

使用 uv 安装 SGLang:

uv venv --python 3.12 --seed --managed-python
source .venv/bin/activate
uv pip install sglang

文本生成

python -m sglang.launch_server \
    --model-path InternScience/MLExpert \
    --host 127.0.0.1 \
    --port 8000 \
    --tp-size 2 \
    --context-length 262144 \
    --reasoning-parser qwen3 \
    --language-model-only

工具调用

python -m sglang.launch_server \
    --model-path InternScience/MLExpert \
    --host 127.0.0.1 \
    --port 8000 \
    --tp-size 2 \
    --context-length 262144 \
    --reasoning-parser qwen3 \
    --tool-call-parser qwen3_coder \
    --language-model-only

vLLM

使用 uv 安装 vLLM:

uv venv --python 3.12 --seed --managed-python
source .venv/bin/activate
uv pip install vllm --torch-backend=auto

文本生成

vllm serve InternScience/MLExpert \
    --host 127.0.0.1 \
    --port 8000 \
    --tensor-parallel-size 2 \
    --max-model-len 262144 \
    --reasoning-parser qwen3 \
    --language-model-only

工具调用

vllm serve InternScience/MLExpert \
    --host 127.0.0.1 \
    --port 8000 \
    --tensor-parallel-size 2 \
    --max-model-len 262144 \
    --reasoning-parser qwen3 \
    --enable-auto-tool-choice \
    --tool-call-parser qwen3_coder \
    --language-model-only

推荐采样参数

参数值
temperature1.0
top_p0.95
top_k20
min_p0.0
presence_penalty1.5
repetition_penalty1.0

以上参数同时适用于思考模式和非思考模式。将 chat_template_kwargs.enable_thinking 设为 true 以启用思考模式,设为 false 以禁用。机器可读的配置档案位于 inference_profiles.json。