技术深度解析
PhoneDiffusion 的成就源于一套精密的优化管线,它将 Stable Diffusion(一个通常需要至少 4GB VRAM 的 GPU 的模型)的计算足迹压缩到移动系统芯片的严格限制环境中。核心挑战在于三阶段推理过程:通过 CLIP 模型进行文本编码、通过 U-Net 进行迭代去噪、以及通过 VAE 进行图像解码。每个阶段都必须针对 Apple 的异构计算架构重新设计。
关键推动力是 Apple Neural Engine (ANE),这是一个在 A17 Pro 和 M 系列芯片中配备的专用 16 核神经处理单元。PhoneDiffusion 的开发者很可能使用了 Core ML 模型转换工具,特别是利用 `coremltools` 库将 PyTorch 模型转换为 ANE 兼容的 `.mlpackage` 格式。关键优化涉及将模型权重从 FP32 量化到 FP16 甚至 INT8,从而在保持输出质量的同时减少内存带宽和延迟。对于执行大部分迭代去噪的 U-Net,他们可能将模型拆分为子图,在 ANE 和 GPU 上并发运行,这种技术称为异构执行。GPU 处理注意力机制(受益于其并行矩阵乘法能力),而 ANE 处理卷积层。
另一项重要优化是使用简化步数的调度器。标准 Stable Diffusion 使用 50 个去噪步骤。PhoneDiffusion 很可能采用蒸馏调度器,如 DPM-Solver++ 或 LCM(潜在一致性模型),以在仅 4-8 步内实现高质量结果。这本身就减少了 5-10 倍的计算量。该应用同时支持 SD 1.5 和 SDXL。SDXL 拥有更大的 U-Net 和双文本编码器,本质上要求更高。在设备上运行它需要激进的模型剪枝,并可能使用更小、蒸馏后的变体。
对于对底层技术感兴趣的开发者,开源仓库 `apple/ml-stable-diffusion`(GitHub 上超过 17,000 颗星)提供了 Apple 官方的参考实现,用于转换和运行 Core ML 上的 Stable Diffusion。该仓库包含模型转换脚本、在不同 Apple 硬件上的基准测试以及示例 Swift 代码。另一个相关项目是 `huggingface/diffusers`(超过 25,000 颗星),它提供了可导出到 Core ML 的 Python 级管线。社区还出现了像 `MochiDiffusion`(macOS 应用)和 `Draw Things`(iOS 应用)这样的项目,它们率先实现了设备端扩散,但 PhoneDiffusion 似乎实现了最快的端到端延迟。
| 模型 | 平台 | 生成时间(50 步) | 生成时间(4-8 步,蒸馏) | 峰值内存使用 |
|---|---|---|---|---|
| SD 1.5 | 桌面 GPU (RTX 4090) | 2-3 秒 | <1 秒 | 4 GB |
| SD 1.5 | iPhone 15 Pro (ANE+GPU) | 15-20 秒 | 3-5 秒 | 1.5 GB |
| SDXL | 桌面 GPU (RTX 4090) | 6-8 秒 | 2-3 秒 | 8 GB |
| SDXL | iPhone 15 Pro (ANE+GPU) | 40-60 秒 | 5-8 秒 | 3 GB |
数据要点: 该表显示,虽然桌面 GPU 仍然更快,但 PhoneDiffusion 使用蒸馏调度器将移动端生成时间带入了实用范围。在 iPhone 上实现 SDXL 的 5 秒目标,相比简单移植实现了 10 倍的改进,这得益于激进的模型压缩和异构计算调度。这使得在手机上实现实时、迭代的图像生成成为切实可行的现实。
关键参与者与案例研究
PhoneDiffusion 进入了一个快速发展的竞争格局。关键参与者可分为依赖云的服务、混合方法以及现在的完全离线解决方案。
依赖云的巨头: Midjourney、OpenAI 的 DALL-E 3 和 Stability AI 自己的 DreamStudio 是现有主导者。它们提供高质量生成,但需要持续的网络连接、订阅费用和数据上传。例如,Midjourney 完全通过 Discord 运行,没有离线能力。DALL-E 3 集成在 ChatGPT 中,同样仅限云端。这些服务建立了庞大的用户群,但面临日益增长的隐私担忧,尤其是来自无法上传专有数据的企业和专业用户。
混合与早期离线参与者: Draw Things 和 MochiDiffusion 等应用是早期先驱。由独立开发者 Liu Liu 开发的 Draw Things 是首批在 iOS 上提供设备端 Stable Diffusion 的应用之一,但其性能较慢(每张图像 20-30 秒),且需要手动下载模型。它还缺乏 PhoneDiffusion 似乎已完善的优化调度器和 ANE 集成。另一个竞争对手是开源项目 `InvokeAI`,它专注于桌面端,但有一个依赖本地服务器的移动伴侣应用。
平台级动作: Apple 自身一直在大力投资设备端 AI。其 `Core ML` 框架和 `Ap