C
ChaoBro

26M 参数的 function calling 模型:Needle 要把工具调用塞进你的树莓派

26M 参数的 function calling 模型:Needle 要把工具调用塞进你的树莓派

让 AI 模型调用外部工具——查天气、搜索数据库、发 API 请求——这个过程叫 function calling。

目前做这件事的方式是:把请求发给 GPT-4o、Claude、Gemini 这样的大模型,让它输出 JSON 格式的工具调用指令。

但调用一次大模型的成本是:网络延迟 + token 费用 + 隐私风险。

Needle 说:不需要。一个 26M 参数的小模型就够了。

26M 是什么概念

GPT-4o 大约 2000 亿参数。Claude Sonnet 几百亿。Gemini Pro 也是百亿级。

Needle 只有 2600 万参数。

小了三个数量级。 这意味着它可以在树莓派、手机、甚至嵌入式设备上跑,不需要联网,不需要 API key,不需要付钱。

它是从 Gemini 的工具调用能力蒸馏出来的。简单说:让 Gemini 做几百万次工具调用,记录它的输入和输出,然后用一个小模型去拟合这个映射关系。最终得到的模型体量是原来的千分之一,但功能几乎一样。

为什么这个方向值得关注

function calling 是 AI Agent 的核心能力之一。没有它,Agent 就是个聊天机器人,干不了实际的事。

但现在的架构有一个结构性问题:Agent 每调用一次工具,就要呼叫一次云端大模型。 一个复杂的 Agent 任务可能涉及十几次工具调用——每次都要经过网络、每次都要付 token 钱、每次都要等几秒。

Needle 的思路是:把工具调用这个步骤本地化。小模型在本地决定"该调哪个工具、参数是什么",然后把结果交给本地执行器。云端大模型只需要在需要做复杂推理的时候才介入。

这不仅是省钱,更是降低延迟和消除单点故障。

真实数据

Show HN 上 764 分、210 条评论——这是一个相当高的热度。HN 用户对"小模型"通常持怀疑态度,因为历史上太多项目号称"小模型替代大模型"但实际效果差很远。

但 Needle 的几个细节让它更有说服力:

  • 由 AntonOsika(GPT-Engineer 创始人)参与维护——这个人在 AI 编码工具圈子里有信誉
  • 5 天前发布,昨天还在更新 README——活跃度高
  • 有完整的微调数据格式文档——不是黑盒,你可以自己训练

234 次 commits 说明项目迭代很快。6 个 open issues 说明社区已经开始实际使用并反馈问题。

和竞品的对比

端侧小模型做工具调用不是新概念:

  • Hermes Pro:Nous Research 的函数调用模型系列
  • Gorilla:伯克利的 API 调用模型
  • NexusRaven:专门做 function calling 的开源模型

但 Needle 的独特之处在于:它明确对标 Gemini 的工具调用能力,并且声称通过蒸馏达到了可比的效果。 26M 的体量在同类模型中也是偏小的——大多数开源 function calling 模型在 1B-7B 范围。

我的看法

Needle 代表了一个越来越清晰的趋势:AI Agent 的"大脑"正在分化——大模型负责复杂推理,小模型负责执行调度。

这有点像人类的工作方式:你不会让一个哲学家去安排日程,也不会让一个行政秘书去做战略规划。

如果你的 Agent 工作流涉及大量工具调用,Needle 值得试用。即使你不打算在端侧部署,用它替代云端大模型做工具调用路由,也能显著降低成本和延迟。

但有一个现实问题要提醒:26M 参数的模型能处理多少种工具?它的泛化能力如何?面对没见过的新工具 schema,它还能准确输出吗?这些问题需要实际测试才能回答。


主要来源: