1作者: openfluke3 个月前原帖
嘿,HN!作者在这里。 我之所以构建这个,是因为部署机器学习模型非常痛苦。Python + pip 依赖 + Docker = 超过 5GB 的镜像。对于边缘/嵌入式/隔离系统,这种方式行不通。 LOOM 直接在 Go 中加载 HuggingFace 的 transformers。无需 Python 运行时。二进制文件约 10MB。 技术亮点: - 原生 safetensors 解析器 - 纯 Go 的 BPE 分词器(不依赖 transformers 库) - 完整的 transformer 栈(MHA、GQA、RMSNorm、SwiGLU) - 跨平台的确定性(MAE < 1e-8) - 已发布到 PyPI、npm、NuGet 权衡:仅支持 CPU,小模型的速度为 1-3 tok/s。正确性优先,速度其次。 支持 Qwen、Llama、Mistral、SmolLM。可以在所有 Go 可以运行的平台上交叉编译。 演示: [https://youtu.be/86tUjFWow60](https://youtu.be/86tUjFWow60) 接下来我应该添加哪些层类型?目前有:Dense、Conv2D、MHA、RNN、LSTM、LayerNorm、RMSNorm、SwiGLU、Softmax(10 种变体)、Residual。 欢迎提问!