
AstrBot
AstrBot 作为一个功能强大的聊天机器人及开发框架,凭借其多语言模型支持、多平台接入、Agent 能力、插件扩展和可视化管理面板,为开发者和用户提供了极大的便利。
长期以来,Apple Silicon 芯片中的 神经引擎 (ANE, Apple Neural Engine) 被视为专为推理加速设计的“黑盒”。苹果通过 CoreML 等官方框架,严格限制其仅用于模型推断,而将训练任务完全交由 GPU (Metal) 处理。
ANE Training 的开发者通过逆向工程苹果的私有 API,成功实现了直接在 ANE 硬件上进行神经网络的反向传播训练。这意味着,无需 CoreML 训练接口,无需 Metal,甚至无需 GPU 参与计算,纯靠 ANE 即可完成训练流程。
该项目并非旨在取代现有的生产级框架(如 MLX 或 llama.cpp),而是一个概念验证 (PoC)。其核心目标非常明确:
_ANEClient 和 _ANECompiler 等未文档化的私有 API,绕过官方限制,直接下发自定义计算图。开发者声明:“这是一个研究项目,而非生产级框架。目标是证明在 NPU 上训练是可能的。许多报道夸大了其意义,目前它并不能取代 GPU 训练大型模型,但它展示了当我们给硬件一个机会时可能实现的功能。”
该项目从头开始实现了一个在 Apple Silicon ANE 上运行 Transformer 单层训练 的系统。
objc_msgSend 在运行时动态解析私有 API,构建 MIL (Model Intermediate Language) 程序文本。_ANEInMemoryModelDescriptor 将 MIL 文本和权重直接编译为 ANE 可执行程序,无需写入磁盘。为了在有限的资源下榨干性能,项目实施了多项硬核优化:
cblas (dW 梯度计算) 与 ANE 的评估过程并行运行。exec() 重启机制巧妙绕过。目前的基准测试结果显示了显著的性能提升轨迹,但也揭示了现实差距:
开发者明确表示,ANE Training 不是一个维护型的开源库,而是一个持续探索的研究代码库:







