needle

让手机和手表也能跑大模型,14MB 极速推理

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 开源模型 🍴 复刻 2
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 1
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 开源模型,MIT许可证,可免费本地部署使用,无在线服务或付费版本。

项目预览

needle 项目界面预览图
图片来源:项目官网

项目数据

分类开源模型
开发团队cactus-compute
定价模式🏷️完全免费
价格说明开源模型,MIT许可证,可免费本地部署使用,无在线服务或付费版本。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
GitHub 星标★ 1
上线时间2026-11-05 00:00:00
代码更新2026-11-05
本站数据更新2026-11-08
维护状态活跃
收录时间2026-08-09
浏览次数11

项目介绍

needle 是一个专为微型设备设计的开源基础模型,体积仅 14MB,参数量 2600 万,能在手机、可穿戴设备、智能家居和机器人上以每秒 1-6k tokens 的速度运行。它解决了传统大模型无法在资源受限设备上部署的问题,让端侧 AI 推理成为可能。核心能力包括极小的模型体积、高效的推理速度,以及针对移动端和嵌入式场景的优化。通过 Python 技术栈,开发者可以轻松集成到现有应用中,实现本地化、低延迟的智能交互,同时保护用户隐私。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1

使用教程

难度:入门 约 5 分钟 部署方式:库/依赖 4 步

环境要求

  • 可用的 Python 环境与 pip(README 未指定具体版本)
  • 首次使用需联网从 Hugging Face 拉取一次推理引擎,之后本地缓存、推理不联网
  • 如需 LoRA 微调或检查点导出,需额外安装 train 依赖
  • 设备内存可支撑约 28MB 的会话运行时(模型为单文件 14MB 二进制)

安装与启动步骤

  1. 1安装 Needle 包

    通过 pip 安装 Python 包 cactus-needle,包含推理、LoRA 微调与导出能力,无需其他构建步骤。

    pip install cactus-needle
  2. 2按需安装训练栈

    仅在需要微调或导出检查点时执行;运行时包默认不包含训练相关依赖。

    pip install "cactus-needle[train]"
  3. 3定义工具函数

    用 @needle.tool 装饰函数,函数签名的类型注解即参数类型,docstring 即工具描述,描述好坏直接影响调用准确率。

    import needle
    
    @needle.tool
    def get_weather(city: str):
        "Get the current weather for a city."
        return {"city": city, "temp_c": 27, "sky": "clear"}
  4. 4创建 Agent 并调用

    把工具列表传给 needle.Needle,run() 会自动完成“模型选调用—执行函数—回传结果—生成最终回答”的完整闭环。

    agent = needle.Needle(tools=[get_weather])
    print(agent.run("what's it like in Lagos right now?")["results"])

关键配置

配置项必填说明示例
tools是声明可供模型调用的工具函数列表,决定模型能选哪些调用tools=[get_weather]

如何确认成功

执行 agent.run(...) 后返回结果中带有 results 字段(含已执行工具的返回值),即表示安装与调用链路正常。

常见问题

Q:运行 Needle 需要多大内存和存储?

A:整个模型是单个 14MB 二进制文件,不产生额外模型文件;一次完整会话运行约占用 28MB 内存。

Q:推理时会不会联网上传数据?

A:推理本身不联网;引擎只在首次使用时从 Hugging Face 拉取并缓存。气隙/离线设备的部署方式见 doc/apis.md。

Q:怎样才能让模型更准确地调用我的工具?

A:Needle 依据工具描述决定调用哪个函数、如何填参数,所以把函数 docstring 写清楚是关键;参数类型由函数签名给出。

Q:工具很多时会不会撑爆上下文?

A:不会。内置检索头每轮只渲染最相关的 5 个工具,并把语法约束在该子集上;同时上下文为 256 token 滑动窗口。

Q:如何做微调或导出模型?

A:先执行 pip install "cactus-needle[train]" 安装训练依赖,再进行 LoRA 微调与检查点导出。

注意事项

  • 模型返回的是结构化数据:文本输入、JSON 输出,由根据你的 schema 编译的字节级语法约束每个 token。
  • 每个响应都带有一个由学习到的 head 给出的校准置信度,可设置阈值:高于阈值直接执行,低于阈值转人工或升级处理。
  • 务必只在 README 给出的 pip 包名 cactus-needle 下安装,不要自行拼装其他包名或参数。
  • 需要 LoRA 微调或导出检查点时再安装 train 额外依赖,纯推理无需训练栈。

核心亮点

  • 14MB 超小体积,2600 万参数,可直接部署在手机和嵌入式设备
  • 推理速度快,移动端每秒 1-6k tokens,满足实时交互需求
  • 支持多种微型设备场景,覆盖可穿戴、智能家居和机器人

不足之处

  • 参数量小,复杂任务能力可能受限
  • 文档/社区待观察

适用场景

  • 在手机上运行本地 AI 助手,无需联网
  • 智能家居设备中的离线语音指令处理
  • 机器人嵌入式端的实时决策与感知

替代项目

TinyLlama、MobileLLM、SmolLM

上一篇:Awesome-Code-LLM

下一篇:Eagle

同类项目推荐

MiniOneRec 开源

用最小代码跑通阿里OneRec推荐模型,快速上手统一召回排序

Minimal reproduction of OneRec

★ 1957 2026-08-09
awesome-ai 开源

一站式导航,快速找到AI学习与开发资源

A curated list of artificial intelligence resources (Courses, Tools, App, Open Sourc···

★ 557 2026-08-09
BreezeApp 开源

手机离线跑多种AI模型,开发者可轻松自建端侧应用

BreezeAPP 是一款為 Android 和 iOS 平台開發的純手機 AI 應用程式。從 App Store下載,即···

★ 245 2026-08-09
RET-CLIP 开源

用临床报告训练视网膜AI,零样本识别眼科疾病

RET-CLIP: A Retinal Image Foundation Model Pre-trained with Clinical Diagnostic Repo···

★ 73 2026-08-09
Spark-X2.5 开源

本地跑智能体大模型,离线也能调工具写代码

Spark-x2.6 open model series. Pushing the Limits of Agentic Capabilities in On-Devic···

★ 894 2026-10-01
spark-nlp 开源

在 Spark 上跑 NLP,海量文本秒级处理,生产级模型开箱即用

State of the Art Natural Language Processing

★ 4160 2026-08-09
OralGPT 开源

让 AI 看懂口腔影像,辅助诊断和报告生成

[NeurIPS'25 | CVPR'26] The official repo of OralGPT & MMOral Bench.

★ 110 2026-08-09