# macMLX 如何在 Apple 芯片上运行模型

以 v0.6.2 证据说明 Swift 引擎、共享核心、统一内存、批处理、缓存分层与路线图边界。

## 直接回答

v0.6.2 默认引擎在 Swift 中运行，不同进程仍各自保有内存中引擎实例。已发布的资格门控连续批处理在四客户端下测得 2.5–3.2× 聚合吞吐量；最长前缀复用、推测解码与 KV 缓存量化也已发布。分页 KV、块共享、写时复制与自适应内存守卫仍在规划中。

- 规范网址：https://macmlx.app/zh/architecture/
- 最后核验：2026-07-15

## 页面事实

- **Swift 进程内推理** — 已发布; 始于 0.1.0; 最后核验 2026-07-15. 默认引擎在 Swift 进程内加载并运行 MLX 模型。 模型加载、生成、缓存与服务通过 MacMLXCore 使用 Apple MLX；默认推理路径不需要 Python 运行时。
- **Apple 芯片统一内存** — 已发布; 始于 0.1.0; 最后核验 2026-07-15. MLX 数组使用 Mac 的 CPU/GPU 共享内存系统。 统一内存减少 CPU 编排与集成 GPU 计算之间的显式传输，但模型权重、激活值和 KV 缓存仍会占用有限的物理内存。
- **共享代码，进程内各自运行** — 已发布; 始于 0.1.0; 最后核验 2026-07-15. 应用与 CLI 都导入 MacMLXCore，推理和服务由核心负责。 两个产品共享实现与行为；当应用和 CLI 分别运行在不同进程时，它们不会共享同一个内存中引擎实例。
- **默认路径无需 Python** — 已发布; 始于 0.1.0; 最后核验 2026-07-15. 已发布的默认引擎为 Swift 原生，不需要 Python 运行时。 可选兼容引擎可能使用子进程与其他运行时，因此这并不表示项目任何地方都没有 Python。
- **精确前缀 RAM 与 SSD 缓存** — 已发布; 始于 0.5.0; 最后核验 2026-07-15. 内存热层与内容寻址 SSD 冷层支持提升和降级。 v0.5.0 发布的缓存复用完整精确前缀，不包含已发布的块共享或分页 KV 分配。
- **Trie 最长前缀复用** — 已发布; 始于 0.6.0; 最后核验 2026-07-15. v0.6.0 可复用最长兼容缓存词元前缀。 多轮提示可裁剪到最长公共前缀，只增量预填充新增后缀，同时用量统计仍按完整提示计算。
- **有界模型池** — 已发布; 始于 0.5.0; 最后核验 2026-07-15. 预算、LRU 淘汰、固定、冷切换、空闲 TTL 与探针共同约束多模型使用。 模型池在 v0.5.0 发布并于 v0.5.3 加固；它不是统一自适应控制器。
- **资格门控的连续批处理** — 已发布; 始于 0.6.0; 最后核验 2026-07-15. v0.6.0 仅在真实并发下批处理符合条件的稠密文本请求，并自动回退到串行路径。 标签版 4 客户端基准测得 2.5–3.2× 聚合吞吐量；VLM、推测解码、Ollama、Anthropic 与嵌入仍保持串行。
- **固定预填充准入节流** — 已发布; 始于 0.6.0; 最后核验 2026-07-15. 固定 prefillBatchSize 限制每个调度步骤接纳的行数。 已发布的节流采用固定配置，并非规划中的自适应内存控制器。
- **推测解码** — 已发布; 始于 0.6.0; 最后核验 2026-07-15. v0.6.0 通过 API 与 GUI 交付经典草稿模型路径。 接受率遥测用于呈现草稿效率；若目标使用不可裁剪的混合或线性注意力缓存，系统会检测并回退到标准解码。
- **KV 缓存量化** — 已发布; 始于 0.6.0; 最后核验 2026-07-15. v0.6.0 为兼容请求开放 kv_bits、kv_group_size 与 quantized_kv_start。 这些参数改变 KV 缓存精度，而非模型权重精度；非正数 kv_bits 会禁用该功能，兼容矩阵会拒绝不支持的模型或请求组合。
- **分页 KV、块共享与 CoW** — 规划中; 始于 future; 最后核验 2026-07-15. 分页分配、共享块与写时复制分支处于规划阶段。 这些缓存虚拟化能力均未在 v0.6.2 发布。
- **统一自适应内存守卫** — 规划中; 始于 future; 最后核验 2026-07-15. 跨缓存、模型池与并发的反馈控制器处于规划阶段。 已发布的内存探针和模型池上限是独立机制，不能称为该守卫。

## 来源

- https://github.com/magicnight/mac-mlx/releases/tag/v0.6.2
- https://github.com/magicnight/mac-mlx/blob/v0.6.2/MacMLXCore/Sources/MacMLXCore/Engine/MLXSwiftEngine.swift
- https://ml-explore.github.io/mlx/build/html/usage/unified_memory.html
- https://github.com/magicnight/mac-mlx/blob/v0.6.2/MacMLXCore/Sources/MacMLXCore/Server/HummingbirdServer.swift
- https://github.com/magicnight/mac-mlx/blob/v0.6.2/CHANGELOG.md
- https://github.com/magicnight/mac-mlx/blob/v0.6.2/MacMLXCore/Sources/MacMLXCore/PromptCache/PromptCacheStore.swift
- https://github.com/magicnight/mac-mlx/blob/v0.6.2/MacMLXCore/Sources/MacMLXCore/PromptCache/PromptTrie.swift
- https://github.com/magicnight/mac-mlx/blob/v0.6.2/MacMLXCore/Sources/MacMLXCore/ModelPool/ModelPool.swift
- https://github.com/magicnight/mac-mlx/blob/v0.6.2/MacMLXCore/Sources/MacMLXCore/Batching/BatchScheduler.swift
- https://github.com/magicnight/mac-mlx/blob/v0.6.2/MacMLXCore/Sources/MacMLXCore/Engine/MLXSwiftEngine+BatchGenerationServing.swift
- https://github.com/magicnight/mac-mlx/blob/v0.6.2/MacMLXCore/Sources/MacMLXCore/Engine/SpeculativeDecodingUsage.swift
- https://github.com/magicnight/mac-mlx/blob/v0.6.2/MacMLXCore/Sources/MacMLXCore/Engine/GenerateRequest.swift
- https://github.com/magicnight/mac-mlx/blob/main/docs/superpowers/specs/2026-07-10-engine-scroll-story-design.md

## 相关页面

- [逐端点说明本地 API 兼容性](https://macmlx.app/zh/api-compatibility/)
- [按任务与内存选择模型](https://macmlx.app/zh/models/)
- [不混淆路线图的版本状态](https://macmlx.app/zh/releases/)
- [macMLX 与 oMLX](https://macmlx.app/zh/compare/omlx/)
