Swift Transformers 1.0 发布说明 / 新功能
Hugging Face 已发布 Swift Transformers 1.0,这是其库的稳定版本,旨在降低开发者在 Apple Silicon 平台(包括 iPhone)上集成本地大型语言模型(LLM)的难度。此发布标志着库进入稳定阶段,提供了与 Core ML 和 MLX 互补的分词、模型下载和推理等关键基础设施。
Swift Transformers 的核心组件
Swift Transformers 提供了三个主要模块,填补了 Apple Silicon 机器学习生态系统中的空白:
- Tokenizers:一个高性能的 Swift 分词实现,处理输入准备、聊天模板和代理用例,体现了 Hugging Face 的 Python 和 Rust 库的使用体验。
- Hub:一个 Swift 接口,用于访问 Hugging Face Hub,能够下载并本地缓存开源模型。它支持离线模式和后台可恢复下载,但目前不支持上传。
- Models and Generation:针对已转换为 Core ML 格式的 LLM 的包装器,简化了转换完成后进行推理的过程。
版本 1.0 的关键更新
版本 1.0 引入了多项架构改进和稳定性更新,以支持生产应用的开发:
模块化架构与依赖精简
Tokenizers 和 Hub 现在是一级顶层模块,开发者可以仅导入所需的特定组件,而无需整个包。为降低开销并防止版本冲突,库已移除示例 CLI 目标以及 swift-argument-parser 依赖。
性能与 API 增强
- Swift Jinja 集成:与 John Mai 合作,库现在使用新版
swift-jinja,据称在处理复杂聊天模板时快了数个数量级。 - 现代 Core ML API:通过 Apple 的贡献,库现在支持有状态模型(便于更轻松的 KV 缓存)和表达式化的
MLTensorAPI,省去了数千行自定义张量数学代码。 - Swift 6 支持:库现已完全兼容 Swift 6。
- API 精炼:公共 API 表面已被简化,以降低认知负担,并为所有公共 API 添加了文档注释。
社区采纳与集成
Swift Transformers 目前被多个高影响力的 Apple Silicon 项目使用:
- mlx-swift-examples (Apple):通过 MLX 使用该库运行 LLM 和 VLM(视觉语言模型)。
- WhisperKit (argmax):一个优化的开源语音识别框架,依赖
Hub和Tokenizers模块。 - FastVLM (Apple):一个视觉语言模型演示,以及 Hugging Face 自己的 SmolVLM2 原生应用。
未来路线图
Hugging Face 计划将未来的开发重点放在两个主要方向上:
- MLX 集成:提升 MLX 体验的流畅度,特别是通过更好地与
mlx-swift-examples集成,以在频繁的前后处理操作中支持 LLM 和 VLM。 - 代理工作流:探索代理用例和模型上下文协议(MCP),以实现系统资源向本地工作流的暴露。