上周我看到一个数据的时候差点从椅子上弹起来——6000 tokens/秒的prefill速度1200 tokens/秒的decode速度来自一个只有26M参数的模型。要知道我手机上跑的微信都比这大。一句话结论Needle证明了当你愿意把模型的能力边界缩到只做一件事的时候参数效率能做到让人瞠目结舌的程度。这不是技术秀肌肉这是一条可能改变边缘设备AI格局的路线。为什么要搞这么小的模型做AI应用的都有个体会function calling工具调用这个东西说起来简单做起来要命。你的App想让AI帮忙调个API、查个天气、发个消息流程是这样的——用户输入进来了你得把这个自然语言请求路由到云端大模型大模型解析出要调什么函数、参数是什么返回给你你再执行。整个链路的延迟乐观估计也得200-500ms其中网络往返就吃掉了一大半。更要命的是场景。你在地铁上信号不好的时候想语音控制手表发条消息或者在开车的时候想让眼镜帮你查个导航这时候网络延迟直接起飞。而function calling这个动作本身逻辑上并不复杂——就是把自然语言映射成一个结构化的函数调用。用一个拥有几百亿参数的大模型来做这件事就像开着重型卡车去便利店买瓶水。Cactus Compute团队显然也这么觉得。他们的Needle项目就是奔着这个问题去的能不能造一个超级迷你的模型专门只做function calling这一件事小到能在手机、手表甚至眼镜上本地跑答案是能。26M参数大概就是一张高清照片的大小。技术拆解能砍的全砍了Needle的架构叫Simple Attention Network本质是一个从Gemini 3.1蒸馏过来的定制化Transformer变体。为什么这么素因为手表的内存可能就几百MB眼镜的NPU算力更有限。26M参数INT4量化之后模型文件大概就十几MB加载到内存里几乎无感。目标设备决定了你不能塞花活进去。具体配置长这样——8层Decoder 12层Encoder隐藏维度5128个注意力头、4个KV头做了GQABPE词表8192。这个配置放到2024年都算复古的很多小模型早就上了RoPE、SwiGLU、Flash AttentionNeedle全没用只留了最核心的attention机制。我的感觉是这种克制本身就是一种设计能力——知道什么该砍比知道什么该加更难。蒸馏分两步走。预训练阶段用16个TPU v6e吃了200B tokens的数据跑了27小时后训练阶段专门喂了2B tokens的function call数据45分钟搞定。整个训练成本基本可以忽略——用云上A100跑估计也就几百刀。这里有个很关键的决策Needle只做单次function calling。不是对话不是多轮工具调用就是一次输入、一次输出、一个函数调用。这个约束大幅缩小了问题空间也让26M参数成为可能。就好比你不造通用搜索引擎你只造一个地址解析器——输入北京市海淀区中关村大街1号输出结构化地址。范围小了模型就能极致压缩。性能对比蚂蚁干翻大象Needle在单次function calling任务上在项目公开的benchmark中超过了FunctionGemma-270MGoogle出的专用小模型参数是Needle的10倍、Qwen-0.6B阿里的通用小模型23倍参数、Granite-350MIBM的enterprise小模型、LFM2.5-350MLiquid AI的新架构小模型。26M参数超过270M、350M甚至600M的模型听起来很炸裂。但得冷静想一下——那些对比的模型大部分是通用型的被设计来处理对话、问答、代码生成等各种任务function calling只是其中之一。拿一个专用模型跟通用模型在单项任务上比赢了并不意外就像你拿专业短跑运动员和十项全能选手比100米一样。Needle的蒸馏源是Gemini 3.1Google现在的旗舰这个背景很重要。等于说Google花了天价训练出来的知识被Cactus团队用蒸馏的方式压缩到了26M参数里。这不是从零开始的奇迹这是站在巨人肩膀上的工程。但即使考虑到这些因素结果依然有意义。它说明function calling这个任务不需要太多世界知识核心能力就是结构化理解加格式输出这种能力可以被高度压缩。推理性能方面在Cactus引擎上跑出6000 tok/s prefill、1200 tok/s decode。用户说帮我订明天早上9点的会议室从语音识别完成到function call输出整个模型推理可能只需要几十毫秒体验就像本地规则匹配一样即时。我的判断Needle的意义不在于它本身有多强——说实话单次function calling的天花板不高。它的意义在于验证了一个假设当你把AI模型的能力边界缩得足够窄参数效率可以提升一到两个数量级。过去两年的行业主旋律是通用化——GPT-4、Gemini、Claude越来越大越来越全能。这条路逻辑通顺但代价也明显GPT-4级别的模型不可能跑在你的手表上。Needle代表的是另一条路——把AI能力拆成一个个极小的专用模块按需部署。你的手表上跑一个Needle做function calling跑一个whisper-tiny做语音识别跑一个微型NLU做意图分类。每个模块都很小加起来可能还不如一个Gemma-270M大但每个模块在自己的任务上都是最优解。我的判断是这两条路线会分层共存。云端继续跑大而全的模型处理复杂推理和长上下文端侧部署小而专的模型矩阵负责低延迟、高频率、隐私敏感的任务。中间用云回退机制串联——简单的事本地秒回复杂的事无缝交给云端。对于做端侧AI的团队来说Needle是一个重要信号。别再想着把通用大模型塞进手机了那条路的天花板很明显。正确的做法是识别出你的产品里哪些AI任务是高频的、确定性的、对延迟敏感的然后为这些任务各造一个Needle级别的小模型。训练成本不高——后训练只要45分钟和2B tokens。维护成本也不高——专用模型迭代周期短验证也简单。收益却很直接用户体验从等待AI思考变成瞬间响应。Needle有几个明显的局限需要知道只做单次function calling多轮工具调用搞不定需要大模型做编排26M参数容量有限遇到训练数据覆盖不到的function schema可能急剧下降实际产品中需要云端大模型兜底。但这些局限恰恰是专用化路线的正确用法——Needle不需要解决所有问题它只需要在自己的领域做到足够快、足够准、足够省。Cactus这家公司值得关注。YC背景专注端侧AI推理从引擎到模型到工具链全栈自研本质是在为AI无处不在这个未来铺设最后一公里的基础设施。他们还支持在本地Mac/PC上微调Needle——你可以用自己的function schema数据定制专属版本不需要任何云端依赖。对于有隐私要求或私有化部署需求的团队来说这是实打实的价值。