five

CommonRouterBench

收藏
github2026-04-17 更新2026-04-17 收录
下载链接:
https://github.com/CommonstackAI/CommonRouterBench
下载链接
链接失效反馈
官方服务:
资源简介:
CommonRouterBench为多步代理、长上下文RAG和vibecoding循环等高消耗、多轮场景提供了每一步的LLM路由黄金标签。这些标签是通过分析成功的跟踪记录并执行顺序降级搜索生成的,以找到仍能通过严格任务检查的最便宜的能力层级。数据集包括question_bank.jsonl和manifest.json文件,用于评估路由器或训练层级预测器。

CommonRouterBench provides golden labels for LLM routing at each step for high-cost, multi-turn scenarios such as multi-step agents, long-context RAG, and vibecoding loops. These labels are generated by analyzing successful trace logs and performing sequential downgrading searches to identify the cheapest capability level that still passes strict task checks.
创建时间:
2026-04-09
原始信息汇总

CommonRouterBench 数据集概述

数据集简介

CommonRouterBench 为高消耗、多轮次场景(如多步智能体、长上下文 RAG、编码循环)提供逐步骤的大语言模型路由黄金标签。该数据集通过分析成功执行轨迹并进行顺序降级搜索来生成标签,旨在找到在满足严格任务检查前提下最经济的能力层级,而非依赖有缺陷的 LLM-as-judge 评分或单次提问。

核心用途

  • 评估路由器:用于评估在高消耗、多轮次场景下构建的路由器的性能。
  • 训练层级预测器:使用真实的对话前缀(对话内容、工具输出、差异对比)来训练层级预测模型。

数据内容与结构

数据文件

  • data/question_bank.jsonl:包含所有路由步骤记录的单文件。
  • data/manifest.json:包含各数据源行数统计和模式元数据。

数据记录字段

每条记录至少包含以下字段:idbenchmarkscenarioinstance_idstep_indextotal_stepsmessagestarget_tiertarget_tier_id

能力层级定义

数据集的监督标签仅基于能力层级,使用英文标签和数字ID。

目标层级 (字符串) 目标层级ID (整数) 层级 (英文描述)
low 0 Low
mid 1 Medium
mid_high 2 Medium-high
high 3 High

数据分布统计

数据集当前版本包含 970 条路由步骤记录。

按基准数据集 (benchmark) 分布

基准数据集 记录数 占比
swebench 336 34.6%
bfcl 248 25.6%
mtrag 193 19.9%
qmsum 145 14.9%
pinchbench 48 4.9%
总计 970 100%

黄金层级 (target_tier) 整体分布

目标层级 目标层级ID 记录数 占比
low 0 689 71.0%
mid 1 62 6.4%
mid_high 2 49 5.1%
high 3 170 17.5%
总计 970 100%

各基准数据集内的黄金层级分布(记录数)

基准数据集 记录数 low mid mid_high high
bfcl 248 239 8 1 0
mtrag 193 183 8 1 1
pinchbench 48 41 3 3 1
qmsum 145 132 10 3 0
swebench 336 94 33 41 168

名义定价(美元/每百万令牌)

定价常量定义在 main.pricing 模块中。

输出(补全)令牌

公开 target_tier 美元 / 每百万输出令牌
low 0.5
mid 2.0
mid_high 5.0
high 25.0

输入、缓存读取和缓存写入(仅用于 router_accounting

公开 target_tier 美元 / 每百万输入 美元 / 每百万缓存读取 美元 / 每百万缓存写入
low 0.26 0.13 0.26
mid 0.30 0.059 0.30
mid_high 0.50 0.05 0.08333
high 5.0 0.50 6.25

评估指标与规则

评估由 main.eval 模块计算。

核心指标

  • tier_match_accuracy:在可评估行(无 error)中,预测层级ID与黄金层级ID完全匹配的比例(步骤级别)。
  • valid_response_rate:获得可用预测(无记录 error)的行比例。
  • 通过 (passed):当 pred_tier_id >= gold_tier_id(预测层级能力不低于黄金层级)。有 error 的行不计为通过(步骤级别)。
  • pass_rate:所有行中通过的比例(步骤级别语义)。
  • cost_savings_score(旧称 section_11):与始终使用 high 层级(ID 3)的基线相比,在名义成本(仅输出令牌,固定补全长度)下的节省百分比。

路由器核算指标 (router_accounting)

compute_router_accounting_metrics 中计算,使用更丰富的每步骤成本模型(输入+缓存读取+缓存写入+输出)和轨迹级别的通过/失败判定。

  • total_trajectories:评分行列表中不同 instance_id 组的数量。
  • passed_trajectories / exact_match_trajectories:轨迹级别通过 / 所有步骤完全匹配的数量。
  • evaluable_step_count:无 error 且具有整数层级ID的步骤数(计入 D_usd / N_usd)。
  • skipped_step_count:带有 error 的行数。
  • D_usd:在可评估步骤上 Σ (baseline_cost − gold_cost) 的总和。
  • N_usd:根据轨迹通过或失败的规则计算(见数据集详情)。
  • pass_rate_percent100 × passed_trajectories / total_trajectories
  • exact_match_rate_percent100 × exact_match_trajectories / total_trajectories
  • accounting_savings_score_percent:当 D_usd > 0 时,为 100 × N_usd / D_usd
  • overall_score_percentpass_rate_percentexact_match_rate_percentaccounting_savings_score_percent 的平均值。

使用方式

快速开始

  1. 安装包: bash pip install CommonRouterBench

    (注意:PyPI 分发名为 CommonRouterBench,但在代码中应 import main。)

  2. 评估路由器: python from main.eval import FunctionPredictor, run_question_bank_eval oracle = FunctionPredictor(lambda row: row["target_tier_id"]) summary = run_question_bank_eval(oracle, n=20, seed=1) print(summary["router_accounting"])

数据访问 API

python from main import iter_question_bank, iter_routing_supervision

遍历整个问题库

for row in iter_question_bank(): ...

仅遍历特定基准数据集(如 "swebench")的行

for row in iter_routing_supervision("swebench"): messages = row["messages"] tier = row["target_tier"] tier_id = row["target_tier_id"]

预测器类型

  • FunctionPredictor:包装任何 callable(row: dict) -> int 函数(启发式方法、sklearn predict 等)。
  • LlmDigitClassifierPredictor:围绕 OpenAICompatRouterClassifierquestion_bank_messages_to_classifier_prompt 的可选 OpenAI 兼容聊天包装器。
  • OpenAICompatRouterClassifier:用于通过 OpenAI 兼容 HTTP API 调用聊天模型的参考集成。模型回复必须是单个字符 03
搜集汇总
数据集介绍
main_image_url
构建方式
在大型语言模型路由优化领域,CommonRouterBench数据集通过分析多步智能体、长上下文检索增强生成以及编码循环等实际消耗计算资源的场景中的成功执行轨迹来构建。该方法摒弃了依赖有缺陷的LLM-as-Judge评分或单轮问题评估的传统方式,转而采用顺序降级搜索技术,旨在为每个步骤确定在通过严格任务检查的前提下,成本最低的能力层级,从而生成每一步的路由监督黄金标签。
使用方法
使用该数据集时,研究人员可通过安装提供的Python包并加载数据文件来访问路由监督记录。评估自定义路由器时,需实现一个预测函数,该函数接收数据行并返回预测的能力层级ID,随后利用库中的评估函数进行计算。库支持多种预测器类型,包括基于规则的函数、机器学习模型或与OpenAI兼容的聊天API集成。评估过程将根据预测层级与黄金层级的匹配情况、通过率以及基于名义定价模型的成本节约分数等多个指标,对路由器性能进行综合量化分析。
背景与挑战
背景概述
随着大型语言模型在复杂多步任务中的应用日益广泛,如何高效且经济地调度不同能力层级的模型成为关键挑战。CommonRouterBench数据集应运而生,旨在为多步智能体、长上下文检索增强生成以及编码循环等高消耗场景提供精确的路由监督标签。该数据集由专注于模型路由优化的研究团队构建,其核心在于通过分析成功任务轨迹并执行顺序降级搜索,确定在满足严格任务检查前提下成本最低的能力层级,从而为路由器的评估与训练提供可靠依据。
当前挑战
该数据集致力于解决模型路由优化中的核心挑战,即如何在多步交互场景中动态选择最经济且性能足够的模型层级,以平衡成本与任务成功率。构建过程中的主要挑战包括:从多样化的实际工作负载中提取具有代表性的路由步骤,并生成可靠的黄金标签,避免依赖有缺陷的LLM-as-judge评分;同时,需设计能够准确反映真实成本与性能权衡的评估指标,并处理不同模型供应商的令牌化差异与缓存行为模拟,以确保成本计算的精确性与实用性。
常用场景
经典使用场景
在大型语言模型路由优化领域,CommonRouterBench数据集为多步智能体、长上下文检索增强生成以及动态编码循环等高消耗场景提供了精准的监督标签。该数据集通过分析成功执行轨迹并执行顺序降级搜索,确定在满足严格任务检查前提下最经济的能力层级,从而为路由器的评估与层级预测器的训练奠定基础。其经典使用场景集中于构建高效能路由器,利用真实对话前缀、工具输出及代码差异进行模型路由决策的验证与优化,显著提升了多轮交互系统中资源分配的智能化水平。
解决学术问题
CommonRouterBench致力于解决大型语言模型路由中的核心学术问题,即如何在多步复杂任务中实现成本与性能的最优平衡。传统方法依赖有缺陷的LLM-as-judge评分或单次问题评估,难以准确反映实际消耗场景下的路由需求。该数据集通过提供每一步的路由黄金标签,使研究者能够系统评估路由策略的准确性、通过率及成本节约效果,从而推动路由算法在理论层面的创新,为高效能计算资源的动态调度提供了可靠的数据支撑与验证框架。
实际应用
在实际应用层面,CommonRouterBench数据集被广泛集成于智能体系统、长文档问答引擎以及自动化代码生成平台中,用于实时路由决策的优化。企业可利用该数据集训练层级预测模型,根据对话历史与工具输出动态选择最经济的大型语言模型服务层级,从而在保证任务完成质量的前提下显著降低API调用成本。这种基于实际消耗模式的路由策略,为云计算服务商与AI应用开发者提供了可量化的成本控制工具,提升了大规模语言模型部署的经济效益与可持续性。
数据集最近研究
最新研究方向
在大语言模型路由优化领域,CommonRouterBench数据集为多步代理、长上下文检索增强生成及编码循环等高消耗场景提供了逐步骤的黄金标签。该数据集通过分析成功轨迹并执行顺序降级搜索,生成能力层级监督信号,从而规避了传统LLM-as-judge评分或单轮问题的缺陷。当前研究聚焦于利用该数据集训练层级预测器,并评估路由器在真实前缀下的性能,旨在实现成本效益最优的模型调度。相关热点事件包括开源社区对高效路由算法的广泛探索,以及产业界对降低大模型推理成本的迫切需求。这一工作推动了智能体系统在复杂任务中的实用化进程,为多模态交互与自动化编程等前沿应用奠定了坚实基础。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作