📌 项目:mizorewww/laya-coreml | 星数:1,284(2026-09-23) | 协议:Apache-2.0 | 语言:Python | GitHub
一句话定位:"苹果芯片上的类型化决策——Core ML、神经引擎、零生成 token。" Laya-CoreML 把 Laya 决策模型移植到 Apple Silicon 的 Core ML 和神经引擎(ANE),在 M3 Max 上单次多语言短决策只要 4.98ms P50 / 5.31ms P95,能效比编译版 MLX FP16 好 2.78 倍。
它和 Laya 原版、Laya-MLX 是同一家族的不同运行时:原版是通用实现,MLX 版走苹果 GPU,CoreML 版走神经引擎,追求的是极致能效。
项目自带一个直观的演示——一个真实的 Laya 模型在本地玩贪吃蛇,界面上可见概率、分数、长度、延迟和安全干预。GIF 是 1× 速度录制的真实 Core ML 运行。
性能数据(三次不限速 600 步回合):
项目诚实标注:这些是单问题结果,不是完整贪吃蛇帧时间;"10× 提升"的目标并未达到。这种数据诚实度在开源项目里不多见。
环境要求:Apple Silicon + macOS 15+ + Python 3.11–3.13。
# 跑贪吃蛇演示
pip install 'laya-coreml[demo]'
hf download aac6fef/laya-multilingual-coreml-ane --local-dir models/snake
laya-coreml-snake --model ./models/snake
下载一次后可离线运行,推理无需 PyTorch、Transformers 或 MLX。终端需要 104 列 × 35 行,空格暂停、↑/↓ 调速、R 重置、Q 退出。首次 Core ML 初始化可能要几十秒。
装好 laya-coreml 后,几行代码就能做类型化决策:
import laya_coreml as laya
agent = laya.load("aac6fef/laya-multilingual-coreml-ane")
result = agent.predict(
"The customer requests a refund of a duplicate payment.",
{"refund": {"type": "noul", "instructions": "Does the customer request a refund?"}}
)
print(result["answers"]["refund"])
Laya 返回 choice(选择)、ordinal score(序数评分)、boolean noul(是非)三类问题的概率,没有自回归文本生成——这正是它快的原因:只做决策,不生成 token。相比 spotifast 这类原生应用,Laya-CoreML 是原生 AI 推理的代表。
| ✅ 优点 | ⚠️ 不足 |
|---|---|
| 神经引擎推理,能效比MLX好2.78倍 | 仅Apple Silicon,无法跨平台 |
| 5ms级短决策,适合实时场景 | 需macOS 15+和较新芯片 |
| 推理无需PyTorch/Transformers/MLX | 只做决策不做文本生成 |
| 数据诚实(明确标注10×未达成) | 首次Core ML初始化慢 |
| Apache-2.0协议 | 生态工具链相对小众 |
| 支持多语言决策 |
两者都是 Laya 决策模型的运行时。MLX 版走苹果 GPU,CoreML 版走神经引擎(ANE),后者能效更高(比编译版 MLX FP16 好 2.78 倍),适合追求低功耗的实时决策场景。
不能。需要 Apple Silicon(M系列芯片)+ macOS 15+ + Python 3.11–3.13,因为依赖 Core ML 和神经引擎。
因为它不做自回归文本生成,只输出 choice/score/noul 三类问题的概率。没有 token 生成开销,加上神经引擎硬件加速,所以能达到 5ms 级。