云计算百科
云计算领域专业知识百科平台

白泽决策层:把高频判断从主模型里拆出来

项目开源名 Baize(白泽)——面向团队的 AI 工作台运行时(Go 1.25+,MIT) 仓库:https://github.com/rebornace/baize · 码云镜像:https://gitee.com/RebornAce/baize

文中三个名称与界面一致,先对齐一下:

名称做什么
主模型 写回复、调用工具。费用大头在这里。
决策模型 System One(默认 tev1)。只做短判断:值不值得抽记忆、这一轮看哪些系统、超大工具结果留不留、自动路由偏轻还是偏重。
备用模型 配置项 decide_profile_id。仅在决策模型不可用时接替判断;已配决策模型时应留空。留空不会改用主模型。

另有 匹配模型(如 bge-m3):只负责工具检索,不负责上述判断。


一、为什么「判断」值得单独拆一层

把白泽挂在业务系统旁边,接口文档一接上,成百上千个接口就变成成百上千个可调用的工具。一台真实后台接进来,很容易就是几百个工具。

接到一类,每一轮对话之前就堆了很多高频判断:这一轮该给主模型看哪些系统、哪些工具该进候选、值不值得再开一次记忆抽取、该用哪个档位的模型……

这些判断有三个特点:第一是频率高(几乎每轮都要);第二是答案短(通常只是「选几个」「是或否」);第三是不该用贵的——如果每次都去推主模型生成长文,省下来的 token 往往比判断本身还贵。

常见做法是把高频判断从生成式调用里拆到一层更便宜的能力上;思路接近 Jev 一类「少写长文、直接出枚举判断」的产品形态。下面按阶段说明白泽怎样把预筛、匹配增强和判定链路串起来。


二、第一阶段:确定性预筛,先把噪声压下去

这层并不需要决策模型。白泽先做一套零成本、可降级的确定性手段:

  • 系统路由:用户查询里有区分度的词会强制命中对应连接器;主模型的选择只能补充、不能拆掉强制命中。
  • 工具预筛:词项 / 中文 bigram 的 BM25(标准匹配)先把相关工具排进候选,主模型只看这一份短列表。

优点是确定、可解释、断网也能用。但只压噪声:用户说得含糊时,列表里仍可能有无关项。

这里的「筛选」是运行时预筛策略,和判定链路里的 Rules 不是同一段代码——Rules 目前主要管「这轮值不值得做记忆抽取」。


三、第二阶段:匹配增强(向量),失败再回词法

v0.4 在「找得到工具」这一维做了增强。原先预筛是 BM25;加上稠密向量后,用 RRF 融合。可以可选接一个 Embedding 模型(本机 Ollama 的 bge-m3,或兼容 OpenAI 的 Embedding API),给每个工具文档做向量,查询时按相似度排序。

融合规则里向量权重大于 BM25(实现里 dense 权重约为 BM25 的两倍):中英混用、业务专有名词、用户说法不标准时,往往更稳。增强失败自动回到标准匹配,对话不受影响。

这一步回答的是「能不能帮我找到该用的工具」。它还不负责「要不要抽记忆、工具结果要不要原样保留、路由偏轻还是偏重」——那些是决策层的另一条线。


四、第三阶段:接上决策模型

v0.5.0 把「要判断」接到决策模型,形成今天的判定链路:

决策模型(System One)→ 备用模型(可选)→ Rules

第一层:决策模型(System One)。 本机 Ollama(≥0.35)自动拉取 tev1(纯 CPU 友好),或对接兼容 POST /v1/systemone 的云端 / 自建服务(不是普通 Chat Completions)。高频短答案在本地或专用判定端完成,不占主模型的生成预算。

第二层:备用模型(可选)。 仅在 System One 不可用时,用一个已配置的便宜模型做判断。已经配好决策模型时,这一项应留空;留空不会改用主模型,而是进入下一层。

第三层:Rules。 确定性规则。当前主要覆盖记忆抽取;其它判断点会放弃本层,继续沿用原路径:宁可按装配时写死的失败方向走,也不假装「绝对聪明」。

整条链的原则是 沿用原路径(fail-open):某一层超时、未配置或放弃判断,不拖垮对话——例如照常下发工具 schema、照常做记忆抽取。宁可多花一次,也不可静默丢掉关键能力。

关于分数:System One 协议可能返回内部排序分;客户端只用来选出枚举结果(例如分数 ≥0.5 取 yes),不把分数暴露给产品逻辑,也不写「p>0.9 就自动执行」。本地常见决策模型给出的数字往往是未校准的排序分,不是业务阈值。真正「报 90% 就大约有 90%」的校准概率,需要专用训练路径;开源默认路径并不假装具备。

时机也简单:决策模型不是 v0.5 凭空造出来的。v0.4 为了工具匹配,已经把本机 Ollama 安装、拉取 bge-m3、模型路径与卸载收进「匹配与决策」页。v0.5 的增量,主要是在同一台已经装好的 Ollama 上再拉一个 tev1,或同一套安装体验,统一走 /v1/systemone。基础设施摊过一次,再接决策模型的边际成本很低。


五、四个容易混淆的点

为什么强调 CPU 友好。 高频判断要短、要常驻。tev1 在产品说明里偏 CPU 友好,普通办公机也能跑,不必为「想一下」再串一次云端生成。

为什么要两道开关。 只配了决策模型,却没有在「运行参数 → 智能提速」打开总开关和对应子功能,不会省主模型 token。总开关打开后,还要再打开需要的项:工具候选收敛、工具结果剪枝、记忆预判、长文选档等。系统必须明确知道「现在要开哪些能力」,而不是「装了模型就全开」。

匹配与决策可以共用一台 Ollama。 匹配用 bge-m3,决策用 tev1,可以挂在同一台 Ollama 上。设置中心的「匹配与决策」页把两条链路放在一起:安装进度、模型路径、自定义目录、清理,都在同一页。

国内安装路径。 Windows 装 Ollama 优先走 ModelScope 社区同步源(跟发版标签同步),失败再试其他镜像。装得上,后面的判定链路才谈得上。


六、这套组合现在的实测水位

先分清两层数字,避免把「换了判定后端」和「主模型 prompt 变短」混成一张表。

6.1 主模型变便宜:工具筛选 + 预筛

基准:37 条真实只读业务请求,横跨 3 个后台(共 390 个工具),主模型 DeepSeek-Flash。相对筛选宽度 32,默认宽度 16 时,turn-0 的 prompt tokens 约降 34%;连跑 5 轮共 185 次,运行成功率 99.5%。若对比「一轮下发全量约 390 个工具」(turn-0 约 8.5 万 prompt tokens → 约 1.4k–3.8k),则是数量级下降,远不止 34%。

这组数字主要反映工具筛选 + 预筛对主模型 prompt 的效果;语料与脚本在仓库 scripts/tool-routing-eval,可复现。它不等于「换上 System One 单独省了 34%」——筛选宽度固定时,判定后端换成 tev1,主模型 prompt 带宽应大致同级。

6.2 哪些过程从主模型改到了决策模型

决策模型单次费用往往远低于主模型(自建 tev1 时接近电费)。真正要看清的是:哪些过程不再(或少)走生成式调用。

过程未开智能提速 / 未接决策模型时接上 System One 并打开对应开关后
要不要抽记忆 常再调一次生成模型做抽取 先判定;「不值得」则整次抽取取消
这一轮偏哪些业务系统 全量 schema(或再用模型来问) 决策判定 + 预筛;主模型只看筛选后的列表
超大工具结果要不要留 常整段进后续上下文 / 摘要 先判定;无用则少喂主模型
自动路由偏轻还是偏重 启发式,或再用模型仲裁 可选由决策模型做档位建议

省预算的大头通常是:主模型少塞 schema、少吃上下文,以及整段取消的生成调用。判定后端换成更便宜的实现,是第二层账。

6.3 判定后端对比:System One vs 备用模型

同 37 条请求、筛选宽度 16、同一台机器各跑一遍(不是再扫一遍宽度表):

判定后端运行成功命中期望工具墙钟
System One(本机 tev1) 37/37 31/37 约 376 秒(约 10.2 秒/条)
备用模型(deepseek-flash) 37/37 29/37 约 556 秒(约 15.0 秒/条)

系统路由出处分别为 systemone 与 remote;主模型 prompt 同级。备用模型墙钟约 1.48 倍——接决策模型不是「多雇一个模型陪聊」,而是把高频判定从生成式调用里拆走。脚本与说明见仓库 scripts/tool-routing-eval。


七、怎么用

环境要求 Go 1.25+,或从 GitHub Releases 下预编译包(当前请用 v0.5.0)。开箱默认仍是零额外组件的标准匹配。要完整判定链路:

  • 在设置「匹配与决策」一键启用 System One(本机 Ollama 拉取 tev1,或对接 /v1/systemone);
  • 在「运行参数 → 智能提速」打开总开关,再打开需要的子功能。
  • 全文与仓库同步;细节以仓库文档为准。


    八、收束

    从确定性预筛,到可选匹配增强,再到决策模型接上一条链——白泽把高频判断从贵的地方挪到便宜的地方;挪不动或不准时,沿用原路径放行。判定可以接专用决策端;准不准、校准到什么程度,是另一笔账。欢迎用后直接反馈。

    GitHub:https://github.com/rebornace/baize 码云镜像:https://gitee.com/RebornAce/baize

    赞(0)
    未经允许不得转载:网硕互联帮助中心 » 白泽决策层:把高频判断从主模型里拆出来
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!