项目预览
项目数据
项目介绍
Star 增长趋势
本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整
数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1
使用教程
环境要求
- 可用的 Python 环境与 pip(README 未指定具体版本)
- 首次使用需联网从 Hugging Face 拉取一次推理引擎,之后本地缓存、推理不联网
- 如需 LoRA 微调或检查点导出,需额外安装 train 依赖
- 设备内存可支撑约 28MB 的会话运行时(模型为单文件 14MB 二进制)
安装与启动步骤
-
1安装 Needle 包
通过 pip 安装 Python 包 cactus-needle,包含推理、LoRA 微调与导出能力,无需其他构建步骤。
pip install cactus-needle -
2按需安装训练栈
仅在需要微调或导出检查点时执行;运行时包默认不包含训练相关依赖。
pip install "cactus-needle[train]" -
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创建 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
awesome-ai
开源
一站式导航,快速找到AI学习与开发资源
A curated list of artificial intelligence resources (Courses, Tools, App, Open Sourc···
BreezeApp
开源
手机离线跑多种AI模型,开发者可轻松自建端侧应用
BreezeAPP 是一款為 Android 和 iOS 平台開發的純手機 AI 應用程式。從 App Store下載,即···
RET-CLIP
开源
用临床报告训练视网膜AI,零样本识别眼科疾病
RET-CLIP: A Retinal Image Foundation Model Pre-trained with Clinical Diagnostic Repo···
Awesome-Resource-Efficient-LLM-P···
开源
一份清单,快速掌握大模型省资源研究全貌
a curated list of high-quality papers on resource-efficient LLMs
Awesome-Efficient-Reasoning-LLMs
开源
让大模型少想快答,推理效率提升指南
[TMLR 2025] Stop Overthinking: A Survey on Efficient Reasoning for Large Language Mo···
Spark-X2.5
开源
本地跑智能体大模型,离线也能调工具写代码
Spark-x2.6 open model series. Pushing the Limits of Agentic Capabilities in On-Devic···
spark-nlp
开源
在 Spark 上跑 NLP,海量文本秒级处理,生产级模型开箱即用
State of the Art Natural Language Processing
OralGPT
开源
让 AI 看懂口腔影像,辅助诊断和报告生成
[NeurIPS'25 | CVPR'26] The official repo of OralGPT & MMOral Bench.
