cactus-compute/needle
一个14MB的AI模型,让手机和可穿戴设备无需联网就能调用工具
Needle 2 是 Cactus Compute 打造的4500万参数模型,专门用于工具调用和从文本中提取结构化数据。整个模型压缩进单个14MB的二进制文件,运行一次会话只需约28MB内存。它被量化到2比特精度,并配有自己的轻量推理引擎,能在完全离线的小型设备上运行。
它做什么
- 做了什么:一个专注于工具调用、设备端运行和结构化提取(把文本转成JSON)的开源小型语言模型,面向手机、可穿戴设备、智能家居和机器人。
- 怎么做的:基于团队自研的'Simple Attention Network'架构(相关论文有详细说明),用团队自己的量化方法Cactus Quants压缩到2比特精度,打包进一个不依赖网络的自包含推理引擎。
- 结果:在论文提供的基准测试中,Needle 2 与 FunctionGemma 270M、LFM2.5 230M 和 Apple FM 等其他小模型互有胜负,但体积小5到70倍,精度只有2比特,而对比模型是16比特(f16)。
- 额外功能:每次回答都附带一个置信度分数,方便应用在分数低时转交给人工处理;内置的检索机制能从大量工具列表中每轮只挑出最相关的5个;256个token的滑动窗口机制让内存占用保持稳定,不会随对话变长而增长。
- 使用方式:通过pip安装后,给Python函数加个装饰器就能注册为工具,再调用agent.run()即可;开发者还可以用LoRA(只训练一个轻量附加模块而不重新训练整个基础模型的方法)在自己的数据上微调,并导出成新的紧凑模型文件。
为什么重要
在设备本地运行AI而不是依赖云端,意味着可以离线工作、保护数据隐私、还能省去服务器成本,这对经常无法联网的可穿戴设备、智能家居产品和机器人尤为重要。这个项目展示了一套把具备结构化输出能力的模型压缩到极小体积、适配受限硬件的可行方案。
本仓库术语
- LoRA · 一种轻量级微调方法,只训练附加在冻结基础模型上的小模块,而不是重新训练整个模型
- 量化/2比特(CQ2) · 把模型数值用更少的比特表示,从而缩小文件体积,但会牺牲一定精度
- 语法约束解码 · 强制模型逐个token生成时必须符合预先设定的JSON结构,避免输出无效数据
- KV锚点/滑动窗口 · 只在内存中保留固定量的对话记录,而不是让其无限增长的技术
- GQA(分组查询注意力) · 一种能降低内存占用的高效注意力机制变体,用于transformer模型
仓库简介(英文)
14MB foundation model for tiny devices; phones, wearables, smart home, and robots.
在 GitHub 打开热门仓库
- vorssaint/vorssaint-utils一个免费菜单栏应用,顶替十几款付费Mac工具
- Alishahryar1/free-claude-code一个本地代理,把编程AI助手接到49家免费或低价模型服务商,不再只能用一家付费服务
- freestylefly/awesome-gpt-image-2把532个GPT-Image2案例拆解成可复用模板的提示词工程库
- block/buzz一个让人类和AI智能体在同一空间里聊天、写代码、做审查的开源协作平台
- NousResearch/hermes-agentNous Research推出的Hermes是一款越用越聪明的AI智能体
- virgiliojr94/book-to-skill把技术类书籍PDF变成AI编程助手随时可查阅的技能包
- VoltAgent/awesome-agent-skills把上千份让AI编程助手秒变专家的操作手册集中放在一个地方
- anthropics/claude-plugins-community一个把大家做的Claude插件集中起来供安装的仓库