← 博客
· OLAV 团队

在小参数本地模型上构建 Agent 系统

在企业内网里,数据往往不能送到托管模型;而本地跑一个前沿级大模型又太贵。~30B 的模型是当下最实际的折中点——但它会幻觉、知识稀薄、可用上下文很短。本文讲怎么在它之上照样构建出一个真正能用的 Agent。

架构 小模型 智能体 本地大模型 NetOps

约束先行

先看数据在哪里。在企业内网中——设备配置、拓扑、路由状态、审计日志、客户环境——最有价值的数据往往也最敏感。在很多这样的环境里,你根本不能把这些数据送到托管模型。原因不是成本,而是安全与合规:数据不允许离开这栋楼。

所以模型必须跑在本地。而第二个约束随之而来。

在本地跑一个前沿级大模型很贵——不是贵在每 token,而是贵在硬件。以可用延迟运行一个 100B+ 的模型,需要相当规模的 GPU 投入,多数团队没法为每台工作站、每个站点都这样配置。从这里往下走,实际落点就是 ~30B 量级的模型。这是当前本地部署的最佳折中点:它能塞进人们真正拥有的硬件,且延迟足以支撑一个交互式 Agent。

问题在于,30B 模型不是前沿模型,而且它会不停地提醒你这一点。

30B 模型会错在哪

当你真的想在它上面构建 Agent 时,三个短板会立刻显现:

  1. 幻觉。 让它做多步骤的活儿,它会很乐意编出一个看起来合理的答案,而不是真去做——捏造一段总结、猜一个值、反复念叨”我这就去做 X”却从不真正做 X。
  2. 知识稀薄且陈旧。 它不了解你的环境、你的规范、任务领域的具体细节;它的通用知识既比前沿模型少,也比它旧。
  3. 可用上下文很短。 标称的上下文窗口不是可用的那个。实际中你面对的更接近小端 8K token、中端 32K。一旦用工具 schema 和原始数据把它填满,模型就不再推理了。

这些都不是靠换模型能解决的——那扇门已经关上了。你要在它周围的 harness 里解决。下面把每个短板对应到具体手段。

治幻觉:少给绳子,少给可编造的空间

小模型最容易幻觉的时刻,是被要求去生产本该由它计算的东西,或被要求去规划本该由它遵循的东西。

补知识:去检索它,而不是指望它

模型不了解你的世界,那就在调用时把相关的那一片喂给它。

省上下文:把预算花在刀刃上

把上下文当作硬预算,为每个 token 记账。

归纳成一个模式

以上没有一条是”模型技巧”。它们都是 harness 工程:把活儿推进确定性代码、让答案落在检索到的数据上、通过注入的 memory 来引导行为、把紧张的上下文预算刻意花在刀刃上。做到这些,一个你能在自有硬件上运行的模型——就在你自己的网络里、什么都不出这栋楼——就能干出那些”显然需要前沿模型”的活儿。

我们把它落地在哪

以上正是 OLAV 背后的设计哲学——一个面向网络运维的开源 Agent 平台,从头就是为在本地小模型上运行而构建的。上面每一条原则都是它里面的承重规则:按 tier 的上下文预算、瘦路由编排器、工具数量封顶、WHAT-not-HOW 提示、fat tool、以及基于 memory 的行为引导,全部由架构强制约束,而不是靠”自觉”。

如果你正想在自己掌控的硬件上构建一个真正能用的 Agent,OLAV 是一份”各部件如何拼装”的可运行参考。它基于 BSL-1.1 开源——欢迎访问 github.com/james-olavai/olav