想象你走进一家大型综合医院。挂完号,第一站不是医生诊室,而是大厅中央的分诊台。护士快速问你几个问题——哪里不舒服?持续多久了?有没有发烧?——然后在病历本上盖一个章:普通门诊、专科门诊,还是急诊抢救室。轻感冒去普通门诊,胸痛疑似心梗直接送抢救室。谁也不会让轻症患者占用专家号,更不敢让重症患者排普通队的队。这套分诊逻辑,正是大模型平台处理请求的方式。当平台同时部署多个模型——便宜的轻量模型、中档的均衡模型、昂贵的旗舰模型——每条请求到达时,路由器就像分诊护士一样评估任务难度,自动把它派给最合适的模型。简单任务走轻量模型,省下真金白银;困难任务交给旗舰模型,守住输出质量。这就是模型路由策略:按任务难度派发 LLM。本文会带你拆解它的每一个部件:如何评估难度、如何设计规则、如何训练分类器、如何权衡成本与效果、如何用 A/B 测试验证效果。

岗位关联

对 AI 从业者而言,模型路由是成本敏感型 LLM 平台的必修课。学会它,你就能在模型矩阵中轻松省下 30%–70% 的推理成本,同时守住质量红线——这是 LLM 应用工程师最具性价比的核心技能之一。

目录
  1. 可视化演示
  2. 路由基本思想:分诊台做对了什么
  3. 难度评估分级:护士的问诊单
  4. 路由规则设计:分诊手册与阈值
  5. 分类器训练:培养实习护士
  6. 成本效果优化:院长的算盘
  7. 实验验证方法:先试运行再全院推广
  8. AI 应用场景
  9. Python 演示
  10. 常见误区
  11. 面试题

可视化演示

展示标记-清除垃圾回收算法的完整过程:从GC Roots遍历标记存活对象,再清除不可达的死对象回收内存空间。

本节配有交互动效(进入视口后自动加载,约 3KB)。

标记阶段 从GC Roots出发,深度优先遍历对象引用图标记存活对象 被标记的对象为存活,未被标记的为垃圾 roots \u2192 DFS \u2192 marked 标记阶段从根集出发标记所有可达对象

路由基本思想:分诊台做对了什么

分诊台的价值在于“人尽其才”——轻症患者不占用专家号,重症患者绝不落到实习医生手里。大模型平台每天收到成千上万条请求,如果全部发给旗舰模型,账单会以惊人的速度膨胀;如果全部发给轻量模型,质量又会断崖式下跌。路由策略就是那个分诊台,站在流量入口,替每一串 token 决定该挂哪个“号”。

所谓“路由”,本质是一个决策函数:拿到请求的可观测特征——提示词长度、任务类型、涉及领域——输出一个模型选择。请求特征就是患者的症状描述,模型选择就是病历本上盖下的科室章。一个平台通常维护多档模型:轻量模型便宜但能力有限,适合翻译、抽取、简单问答;旗舰模型昂贵但能力全面,适合复杂推理、长文写作、代码生成。路由函数 $f$ 把请求特征空间 $\mathcal{X}$ 映射到模型集合 $\mathcal{M}$。最简单的路由是人工规则,进阶的路由是训练一个轻量分类器。

分诊台好不好,看两件事:是否把重症送进了抢救室,是否没让轻症占用专家号。路由策略的评价标准同样如此——困难请求是否交给了旗舰模型,简单请求是否省下了钱。

r=f(x),f:X→M={mlite,mmid,mflagship}r = f(\mathbf{x}), \quad f: \mathcal{X} \to \mathcal{M} = \{m_{\text{lite}}, m_{\text{mid}}, m_{\text{flagship}}\}
$r$ 是最终选中的模型。这条公式说明:路由不是玄学,而是从“请求特征”到“模型选择”的确定性映射。
  1. 请求特征向量$\mathbf{x}$ 是一条请求的数值化特征,如提示长度、领域复杂度、任务类型编码
    x=[x1,x2,x3]\mathbf{x} = [x_1, x_2, x_3]
  2. 路由决策函数$f$ 是把特征映射到模型的函数,可以是阈值规则、决策树,也可以是训练出的分类器
    f:X→Mf: \mathcal{X} \to \mathcal{M}
  3. 候选模型集合$\mathcal{M}$ 是平台可用的模型集合,此处为轻量、均衡、旗舰三档
    M={mlite,mmid,mflagship}\mathcal{M} = \{m_{\text{lite}}, m_{\text{mid}}, m_{\text{flagship}}\}
  4. 路由输出$r$ 是最终被选中的模型,它决定了这条请求的成本上限与质量下限
    r∈Mr \in \mathcal{M}

难度评估分级:护士的问诊单

分诊护士从不靠直觉拍板,她手里有一张问诊单:哪里不舒服、持续多久、有没有基础病、是否高烧。这些问题一一对应路由器的“难度特征”。问诊单设计得好不好,直接决定分诊准不准;难度特征选得好不好,直接决定路由灵不灵。

要做路由,先得给请求的难度打分。常用的启发式特征有三类:第一是提示词长度,越长往往携带越复杂的上下文;第二是领域复杂度,数学、法律、代码这类领域天然比闲聊难;第三是任务类型,信息抽取、翻译相对容易,多步推理、创意写作明显更难。每个特征归一化到 0 到 1 之间,再按权重加权求和,得到一条请求的难度得分 $s$。

问诊单上的每一项都是护士多年经验的浓缩。权重一开始靠人工调试,随着日志积累,可以让数据自己“教”出更优的权重——这为后面的分类器训练埋下了伏笔。

s=w1z1+w2z2+w3z3=w⊤zs = w_1 z_1 + w_2 z_2 + w_3 z_3 = \mathbf{w}^{\top}\mathbf{z}
$s$ 是一个 0 到 1 之间的分数,越接近 1 表示任务越难。三个特征是问诊单上的问题,权重是护士长多年的经验。
  1. 归一化特征$z_1, z_2, z_3$ 分别代表提示长度、领域复杂度、任务类型,都已被压到 $[0,1]$ 区间,消除量纲差异
    zi=xi−min⁡(xi)max⁡(xi)−min⁡(xi)z_i = \frac{x_i - \min(x_i)}{\max(x_i) - \min(x_i)}
  2. 权重向量$\mathbf{w}$ 表示每个特征对难度判断的影响程度,反映业务侧的经验偏好
    w=[w1,w2,w3],∑i=13wi=1\mathbf{w} = [w_1, w_2, w_3], \quad \sum_{i=1}^{3} w_i = 1
  3. 内积运算$\mathbf{w}^{\top}\mathbf{z}$ 把特征与权重逐项相乘再全部相加,得到加权总分
    w⊤z=w1z1+w2z2+w3z3\mathbf{w}^{\top}\mathbf{z} = w_1 z_1 + w_2 z_2 + w_3 z_3
  4. 难度得分$s$ 越接近 1 表示请求越难,越接近 0 表示越简单,它是后续所有路由规则和分类器的输入
    s∈[0,1]s \in [0, 1]

路由规则设计:分诊手册与阈值

医院走廊里贴着分诊流程图:体温超过 39℃ 去发热门诊,胸痛伴大汗立刻送抢救室。这种白纸黑字的“如果—那么”逻辑,就是路由规则的原型。规则的好处是看得见、摸得着,出事了一个一个检查,绝不黑箱。

有了难度得分 $s$,最直观的路由方式就是阈值分段。设两个阈值 $\theta_1$ 和 $\theta_2$,把难度切成一简单、中、难三块,分别对应轻量、均衡、旗舰三个模型。这套规则引擎轻量透明、可解释性强,最关键的是它不需要任何标注数据就能上线——这正是冷启动阶段的救命稻草。同时必须设计兜底策略:当请求特征缺失、或分数恰好卡在阈值边界时,保守地选择档次更高的模型,宁可多花一点钱也绝不答错。

分诊手册让新开业的医院在没有资深护士时也能正常运转。阈值规则同样让路由系统在上线第一天就发挥价值——但手册需要随临床经验不断修订,规则之后也需要用数据校准。

r={mlites<θ1mmidθ1≤s<θ2mflagships≥θ2r = \begin{cases} m_{\text{lite}} & s < \theta_1 \\ m_{\text{mid}} & \theta_1 \le s < \theta_2 \\ m_{\text{flagship}} & s \ge \theta_2 \end{cases}
这条分段函数就是分诊手册的数学版本:得分落在哪个区间,就派哪个模型。
  1. 下阈值$\theta_1$ 是简单与中等难度的分界线,低于它的请求走轻量模型
    s<θ1⇒r=mlites < \theta_1 \Rightarrow r = m_{\text{lite}}
  2. 上阈值$\theta_2$ 是中等与高难度的分界线,高于它的请求走旗舰模型
    s≥θ2⇒r=mflagships \ge \theta_2 \Rightarrow r = m_{\text{flagship}}
  3. 区间判断$s$ 落入 $[0,\theta_1)$、$[\theta_1,\theta_2)$、$[\theta_2,1]$ 三个区间之一,对应三档模型
    θ1≤s<θ2⇒r=mmid\theta_1 \le s < \theta_2 \Rightarrow r = m_{\text{mid}}
  4. 边界兜底等号放在“派贵模型”一侧,表示边界请求偏向更贵的模型——宁可浪费一点预算,也不冒答错的风险
    s≥θ2,s≥θ1s \ge \theta_2, \quad s \ge \theta_1

分类器训练:培养实习护士

光靠手册会误判。于是医院让实习护士跟着老护士看上千个病例,慢慢地她学会了“这个症状组合基本是重症”的直觉。分类器就是被数据喂出来的实习护士:手册负责兜底,直觉负责精度。

当请求日志和标注积累到一定规模,就可以训练一个轻量分类器来替代或补充人工规则。训练数据来自人工抽样标注(让人判断每条请求的难度等级)加线上模型质量反馈(模型答得不好说明这条请求可能被低估了难度)。特征就是前面问诊单上的那些归一化特征。分类器常用逻辑回归、梯度提升树或小型神经网络,它们足够轻,毫秒级完成判断,不会给请求链路增加可见延迟。训练目标是最小化交叉熵损失:对每条样本,让模型给“正确难度类”的概率尽量接近 1。

实习护士出师后依旧要接受老护士的抽查复核,分类器上线后也要持续用新日志迭代重训。请求分布一变,分类器的“直觉”就会失灵,迭代更新不是可选项,而是必选项。

L=−1N∑i=1Nlog⁡ewyi⊤xi∑j=1Kewj⊤xi\mathcal{L} = -\frac{1}{N} \sum_{i=1}^{N} \log \frac{e^{\mathbf{w}_{y_i}^{\top} \mathbf{x}_i}}{\sum_{j=1}^{K} e^{\mathbf{w}_j^{\top} \mathbf{x}_i}}
交叉熵损失就像一个考官:答对(预测概率高)就轻轻点头,答错(概率低)就狠狠扣分。整个训练过程就是让实习护士在一次次批改中变准。
  1. softmax 概率$\dfrac{e^{\mathbf{w}_{y_i}^{\top}\mathbf{x}_i}}{\sum_{j=1}^{K} e^{\mathbf{w}_j^{\top}\mathbf{x}_i}}$ 计算请求 $\mathbf{x}_i$ 被分类到正确难度类 $y_i$ 的概率
    p(yi∣xi)=ewyi⊤xi∑j=1Kewj⊤xip(y_i \mid \mathbf{x}_i) = \frac{e^{\mathbf{w}_{y_i}^{\top}\mathbf{x}_i}}{\sum_{j=1}^{K} e^{\mathbf{w}_j^{\top}\mathbf{x}_i}}
  2. 真实标签$y_i$ 是人工标注的难度类别,例如 $0=$ 简单、$1=$ 中等、$2=$ 困难
    yi∈{0,1,2}y_i \in \{0, 1, 2\}
  3. 负对数似然$-\log p$ 对正确类的概率取负对数,概率越接近 1,损失越小,等于“答得越好扣分越少”
    −log⁡p≥0-\log p \geq 0
  4. 平均损失$\frac{1}{N}\sum_{i=1}^{N}$ 对所有训练样本取平均,最小化 $\mathcal{L}$ 就是让分类器整体越判越准
    L=1N∑i=1Nℓi\mathcal{L} = \frac{1}{N}\sum_{i=1}^{N} \ell_i

成本效果优化:院长的算盘

院长不只看患者满意度,也不只看月度账单。她真正关心的是:每花一分钱,买到了多少治疗效果。路由策略的成败同样是一笔账——质量不能垮,成本必须降,两者要放到同一个天平上称。

路由决策会同时影响质量与成本:选轻量模型省钱但可能降质量,选旗舰模型保质量但费钱。要指导阈值和分类器的调优,需要把两个目标合并成一个统一的目标函数。质量分可以是人工评分、用户点赞率或任务成功率;成本则按“模型单价 × token 消耗”核算。对一批带标注的真实请求,用目标函数做网格搜索或梯度调参,找到让整体收益最大化的路由参数。

院长的算盘打得响,是因为她手里有全院患者的账单和复诊率。路由团队也一样:没有成本核算和质量监控,任何调优都是盲人摸象。

J=1N∑i=1NQi⏟平均质量−β⋅1N∑i=1NCi⏟平均成本J = \underbrace{\frac{1}{N}\sum_{i=1}^{N} Q_i}_{\text{平均质量}} - \beta \cdot \underbrace{\frac{1}{N}\sum_{i=1}^{N} C_i}_{\text{平均成本}}
$J$ 是路由策略的“净利润”。质量分是收入,成本是支出,$\beta$ 是财务总监对成本的敏感程度。
  1. 平均质量$\bar{Q}$ 是所有请求由路由选中的模型产出后的质量分均值
    Qˉ=1N∑i=1NQi\bar{Q} = \frac{1}{N}\sum_{i=1}^{N} Q_i
  2. 平均成本$\bar{C}$ 是所有请求的平均推理成本,单位可以是美元/请求
    Cˉ=1N∑i=1NCi\bar{C} = \frac{1}{N}\sum_{i=1}^{N} C_i
  3. 权衡系数$\beta$ 把成本折算到与质量同一尺度,$\beta$ 大表示“省钱优先”,$\beta$ 小表示“质量优先”
    β>0\beta > 0
  4. 总目标最大化 $J$ 就是“花尽量少的钱,买尽量高的质量”,网格搜索或梯度下降都在此目标下寻找最优参数
    θ∗=arg⁡max⁡θJ(θ)\theta^{*} = \arg\max_{\theta} J(\theta)

实验验证方法:先试运行再全院推广

新分诊流程不敢一次性全院推行。稳妥的做法是:让一半窗口试运行一周,对比另一半窗口的患者满意度与排队时间。A/B 测试就是医院里的小范围试运行,用数据而不是拍脑袋来决策。

路由效果同样需要实验数据说话。具体做法是:线上流量随机分桶,对照组所有请求全部走旗舰模型(基线),实验组走路由策略。分别记录两组的四个关键指标:总成本、平均质量、响应延迟、人工介入率。样本量攒够之后,用显著性检验判断差异是真实存在还是随机波动;检验通过后再灰度放量,逐步从 10% 流量扩到 100% 全量。

一周的试运行数据摆上会议桌,院长才敢签字全院推广。路由上线同样遵循“A/B → 灰度 → 全量”的节奏,每一步都用数据说话,每一步都留好回滚的退路。

saving=1−CrouteCbase,ΔQ=Qroute−Qbase\text{saving} = 1 - \frac{C_{\text{route}}}{C_{\text{base}}}, \qquad \Delta Q = Q_{\text{route}} - Q_{\text{base}}
节省率回答“省了多少钱”,质量差回答“质量变了吗”。两个数字必须放在一起读,缺一不可。
  1. 基线总成本$C_{\text{base}}$ 是对照组全部使用旗舰模型时的总成本
    Cbase=∑i=1Nc(mflagship)C_{\text{base}} = \sum_{i=1}^{N} c(m_{\text{flagship}})
  2. 路由总成本$C_{\text{route}}$ 是实验组使用路由策略后的总成本
    Croute=∑i=1Nc(ri)C_{\text{route}} = \sum_{i=1}^{N} c(r_i)
  3. 节省率$\text{saving}$ 表示路由策略相对全旗舰基线省下的成本比例,1 表示完全免费,0 表示没有省钱
    saving∈(0,1)\text{saving} \in (0, 1)
  4. 质量差$\Delta Q$ 是实验组与对照组的平均质量差,只有它不显著为负、甚至为正,路由才算真正成功
    ΔQ=Qroute−Qbase\Delta Q = Q_{\text{route}} - Q_{\text{base}}

AI 应用场景

智能客服平台的“三档分流”

阶段:推理服务与成本管控

解决的问题:传统做法是所有客服问题都调用同一个大模型。简单 FAQ 和复杂投诉共用旗舰模型,月度账单高企且响应缓慢;全部换成轻量模型,复杂投诉又处理不好,引发客诉升级。路由按问题难度分类,让约 80% 的简单问题走轻量或均衡模型,20% 的疑难问题走旗舰模型,成本腰斩且满意度不降。

具体案例:某电商平台客服机器人接入三档模型:轻量模型处理“退换货流程”“订单查询”等标准问答,均衡模型处理多轮对话,旗舰模型处理投诉安抚与复杂政策解释。上线路由后,月推理账单下降 52%,用户满意度反而提升了 3 个百分点。

代码助手的“补全与重构分级”

阶段:推理调度与延迟优化

解决的问题:IDE 插件里“单行补全”和“整个函数重构”的难度天差地别。若都走旗舰模型,单行补全也背上高延迟、高成本;若都走轻量模型,重构质量又没法看。路由根据光标上下文长度、语法结构、是否跨文件引用来判断难度。

具体案例:某代码助手将“补全一个变量名、短表达式”路由到 50 毫秒内返回的轻量模型,将“生成完整函数、跨文件重构”路由到旗舰模型。平均响应时间下降 40%,代码接受率提高 12%。

多租户 LLM 网关的“套餐分级”

阶段:平台商业化与 SLA 管理

解决的问题:云平台上不同客户付费不同,但底层模型池是共享的。免费客户的高难度请求可能挤占企业客户的计算资源。路由按“租户等级 + 任务难度”双维度调度:免费版只能触发轻量模型,企业版可触发旗舰模型,同时保证企业版 SLA。

具体案例:某 LLM API 平台为免费、专业、企业三档套餐配置不同模型池,路由保证免费用户请求不挤占企业用户资源,企业版推理延迟 P99 从 8 秒降到 3 秒,续费率明显提升。

Python 演示

python56 行
import random MODELS = {    "lite":     {"price": 0.15, "quality": 80},    "mid":      {"price": 0.60, "quality": 90},    "flagship": {"price": 2.50, "quality": 98},} def difficulty_score(req):    length, domain, task = req    return 0.4 * length + 0.35 * domain + 0.25 * task def route(difficulty, theta1, theta2):    if difficulty < theta1:        return "lite"    if difficulty < theta2:        return "mid"    return "flagship" def make_requests(n, seed=42):    random.seed(seed)    return [(random.random(), random.random(), random.random()) for _ in range(n)] def evaluate(requests, theta1, theta2):    total_cost = 0.0    total_quality = 0.0    for req in requests:        d = difficulty_score(req)        m = route(d, theta1, theta2)        total_cost += MODELS[m]["price"]        total_quality += MODELS[m]["quality"]    n = len(requests)    return total_quality / n, total_cost / n def main():    requests = make_requests(2000)    best = None    best_score = -1e9    for t1 in [0.2, 0.3, 0.4]:        for t2 in [0.6, 0.7, 0.8]:            if t1 >= t2:                continue            q, c = evaluate(requests, t1, t2)            score = q - 0.2 * c            if score > best_score:                best_score = score                best = (t1, t2, q, c)    t1, t2, q, c = best    base_cost = MODELS["flagship"]["price"]    saving = 1 - c / base_cost    print("最佳阈值: theta1=%.2f theta2=%.2f" % (t1, t2))    print("平均质量: %.2f 平均成本: %.2f" % (q, c))    print("相对全旗舰节省率: %.1f%%" % (saving * 100)) if __name__ == "__main__":    main()
目的:用 2000 条模拟请求做网格搜索,自动找到让“质量 − β·成本”最大的路由阈值组合,并输出相对全旗舰基线的成本节省率。
  1. return 0.4 * length + 0.35 * domain + 0.25 * task模拟问诊单的加权打分,三个特征各占不同权重
  2. def route(difficulty, theta1, theta2):阈值路由规则:难度落在哪个区间就选哪个模型
  3. MODELS[m]["price"]成本核算:按实际选中的模型单价累加
  4. score = q - 0.2 * c优化目标:平均质量减去 β×平均成本,β 取 0.2
  5. for t1 in [0.2, 0.3, 0.4]:网格搜索:遍历候选阈值组合,找出目标函数最大的那组
  6. saving = 1 - c / base_cost节省率计算:路由平均成本与全旗舰成本对比

常见误区

误区“把请求分给便宜的模型,不就是牺牲质量换成本吗?我宁愿全部走旗舰模型,图个安心。”

正解路由省的是“不必要的预算”。像关键词抽取、格式转换这类简单任务,旗舰模型和轻量模型的效果几乎没有差别,用旗舰等于把钱扔进水里。好的路由在质量持平或小幅可接受下降的情况下,能省下 30%–70% 的成本。A/B 测试正是用来守住质量红线的工具。

为何常见:人们容易把“模型更贵”等同于“答案更好”,忽略了简单任务上旗舰模型的能力严重过剩。

误区“上线时把 θ1、θ2 调好,之后就不用管了,反正规则是写死的。”

正解请求分布会随业务变化(比如新上线一个复杂功能),模型能力也会迭代升级。固定阈值会慢慢失配:要么简单请求误入旗舰烧钱,要么复杂请求误入轻量翻车。需要定期用新日志重训分类器、重调阈值,跟上环境变化。

为何常见:规则引擎看起来“稳定可靠”,让人忽略了背后的请求分布和模型能力都在悄悄改变。

误区“既然要判断难度,那就上一个最大的模型来当路由器,准确率肯定最高。”

正解路由器本身有推理延迟和成本。每多 100 毫秒延迟都压在用户请求链路上,用大模型做路由是典型的“杀鸡用牛刀”。轻量逻辑回归或 GBDT 在几十个特征上已经足够,推理只需微秒级。复杂模型的边际精度收益远小于它带来的延迟代价。

为何常见:把“分类精度”误当成唯一目标,忘了路由器自身的开销也要算进总账。

误区“实验组成本降了 60%,路由策略大获成功,直接全量上线!”

正解成本只是半张成绩单。如果质量分掉了 10 个百分点、用户投诉翻倍,省下的钱远不够赔偿口碑损失。必须同时看平均质量、响应延迟、人工介入率、用户满意度,并做显著性检验,才能下结论。

为何常见:成本数字最直观、最容易汇报,让人忽视质量监测需要同等投入。

面试题

Q1. 模型路由策略的核心目标是什么?

单选题 · easy

  • A.按请求特征自动选择合适模型← 正确答案
  • B.让模型的参数量不断增大
  • C.提升离线训练的数据总量
  • D.把所有请求固定到旗舰模型

答案:A。路由的目标是根据请求特征自动选模型,在质量和成本之间取得平衡。B、C 与推理成本管理无关,D 恰好是路由要避免的做法——全量旗舰会让成本失控。

Q2. 下列哪一项适合作为请求难度评估特征?

单选题 · easy

  • A.提示词长度与任务类型← 正确答案
  • B.用户设备的电池电量
  • C.服务器的磁盘剩余量
  • D.模型训练时的学习率

答案:A。难度评估依赖请求本身的可观测特征,提示词长度和任务类型直接反映复杂度。B、C 是环境信息,与任务难度无关;D 是训练超参数,推理阶段根本不存在。

Q3. 路由规则中两个阈值 θ1、θ2 的作用是什么?

单选题 · easy

  • A.将难度得分划分成三个区间← 正确答案
  • B.控制模型的输出温度参数
  • C.决定训练数据的批次大小
  • D.调节生成答案的最大长度

答案:A。θ1、θ2 把难度得分 s 分成三个区间,对应轻量、均衡、旗舰三档模型。B、C、D 都是文本生成或训练相关参数,与路由决策无关。

Q4. 冷启动阶段没有标注数据,路由策略应如何起步?

单选题 · mid

  • A.先用启发式特征和阈值规则← 正确答案
  • B.直接关闭路由改为全量旗舰
  • C.随机给请求分配不同模型
  • D.等待一年积攒数据再上线

答案:A。冷启动时没有标签训练分类器,但启发式规则(长度、任务类型加权打分加阈值)零成本可用,上线后边收集标注边迭代。B 放弃省钱且成本不可持续,C 随机分配会严重抖动,D 等待时间成本无法接受。

Q5. 难度得分 s 越接近 1,说明这条请求?

单选题 · mid

  • A.难度越高,应当路由到旗舰模型← 正确答案
  • B.难度越低,应当路由到轻量模型
  • C.与模型选择完全无关
  • D.应当被直接丢弃不处理

答案:A。s 是归一化难度得分,越接近 1 表示请求越难,按阈值规则应走旗舰模型。B 方向恰好相反,C、D 都否定了 s 在路由决策中的用途。

Q6. 优化目标 J = Q̄ − β·C̄ 中,增大 β 意味着?

单选题 · mid

  • A.系统更偏向节省推理成本← 正确答案
  • B.系统更偏向提高输出质量
  • C.系统完全放弃路由功能
  • D.系统自动增加模型参数量

答案:A。β 是成本与质量的权衡系数,β 越大成本项惩罚越重,系统倾向把更多请求分给便宜模型。B 是小 β 的倾向,C、D 与目标函数无关。

Q7. A/B 测试发现实验组质量明显下降,第一步应做什么?

单选题 · mid

  • A.检查难度分级与阈值是否失配← 正确答案
  • B.立即永久关闭路由功能
  • C.忽略质量只统计成本节省
  • D.把实验组流量扩大一倍

答案:A。质量下降说明大量难请求被路由到了过低档位,应先排查阈值和分类器,重新校准后再迭代实验。B 一刀切不可取,C 违背 A/B 测试的初衷,D 盲目放量会放大损失。

Q8. 训练好的路由分类器,其输出通常是?

单选题 · hard

  • A.各难度类别的概率分布← 正确答案
  • B.模型参数的梯度数值
  • C.请求的总 token 数量
  • D.用户会话的历史摘要

答案:A。分类器(如 softmax 逻辑回归)输出请求属于各难度类的概率,路由再据此选模型。B 是训练过程的产物,C 是输入特征之一,D 与路由决策无关。

Q9. 训练路由分类器时,合理的标注数据来源有哪些?

多选题 · hard

  • A.人工抽样标注请求难度← 正确答案
  • B.线上模型输出质量反馈← 正确答案
  • C.随机生成的伪难度标签
  • D.与任务无关的公开语料

答案:AB。人工标注提供可靠真值,线上质量反馈(如用户点赞、任务成功与否)可自动扩充样本。C 的随机标签是噪声,D 的无关语料没有请求结构,都无法训练出有效分类器。

Q10. 关于 A/B 测试验证路由效果,正确的做法有哪些?

多选题 · hard

  • A.流量随机分桶保证可比性← 正确答案
  • B.同时观测成本与质量指标← 正确答案
  • C.样本量足够大再做结论← 正确答案
  • D.只比较节省率一个数字

答案:ABC。随机分桶避免选择偏差,成本和质量必须同时观测,样本量决定统计功效,缺一不可。D 只盯成本、忽视质量,正是路由验证中最常见的坑。