Swift 🧨Diffusers – 快速稳定的Mac扩散
Swift 🧨Diffusers - 快速稳定的Mac扩散
使用 Diffusers for Mac,您可以轻松将文本转换为令人惊叹的图像。这是一个原生应用程序,由最先进的扩散模型驱动。它利用了由社区贡献给 Hugging Face Hub 并转换为 Core ML 的最新文本到图像模型,以实现极快的性能。我们的最新版本 1.1 现已在 Mac App Store 上发布,具有显著的性能提升和用户友好的界面调整。它是未来功能更新的坚实基础。此外,该应用程序是完全开源的,并具有宽松的许可证,因此您也可以在其基础上构建!更多信息,请访问我们的 GitHub 存储库,网址为 https://github.com/huggingface/swift-coreml-diffusers。
🧨Diffusers for Mac 究竟是什么?
Diffusers 应用程序(App Store,源代码)是我们 🧨diffusers 库的 Mac 对应物。该库使用 Python 和 PyTorch 编写,并使用模块化设计来训练和运行扩散模型。它支持许多不同的模型和任务,并且高度可配置和优化。它也可以在 Mac 上运行,使用 PyTorch 的 mps 加速器,这是 Apple Silicon 上的 cuda 的替代品。
为什么要运行原生的 Mac 应用程序呢?有很多原因:
- 它使用 Core ML 模型,而不是原始的 PyTorch 模型。这很重要,因为它们允许进行与 Apple 硬件特定的附加优化,并且 Core ML 模型可以同时在系统中的所有计算设备上运行:CPU、GPU 和神经引擎。Core ML 框架将决定在每个设备上运行模型的哪些部分,以使其尽可能快速。PyTorch 的 mps 设备无法使用神经引擎。
- 它是一个 Mac 应用程序!我们努力遵循 Apple 的设计语言和指南,以使其在您的 Mac 上感觉如同家一样。无需使用命令行、创建虚拟环境或解决依赖关系。
- 它是本地和私密的。您不需要在线服务的积分,也不会遇到长时间的等待队列-只需生成所有您想要的图像,并将其用于娱乐或工作。隐私得到保证:您的提示和图像属于您自己,永远不会离开您的计算机(除非您选择共享)。
- 它是开源的,并且使用 Swift、Swift UI 和最新的 Mac 和 iOS 开发语言和技术。如果您有技术倾向,可以使用 Xcode 对代码进行扩展。我们也欢迎您的贡献!
性能基准
简而言之:根据您的计算机不同,文本到图像生成在 Diffusers 1.1 上可以快上两倍。⚡️
我们在几台 Mac 上进行了大量测试,以确定产生最佳性能的计算设备组合。对于某些计算机来说,最好使用 GPU,而对于其他计算机来说,当启用神经引擎(ANE)时效果更好。
欢迎查看我们的基准测试。所有组合都使用 CPU,以及 GPU 或 ANE。
我们发现内存的大小似乎对性能没有太大影响,但 CPU 和 GPU 核心数量有影响。例如,在 M1 Max 笔记本电脑上,使用 GPU 的生成速度比使用 ANE 快得多。这很可能是因为它的 GPU 核心数量是标准 M1 处理器的 4 倍(CPU 性能核心数量也是两倍),而神经引擎核心数量相同。相反,在 Mac Mini 中,使用 ANE 的速度比使用 GPU 快两倍。有趣的是,我们测试了同时使用 GPU 和 ANE 加速器,发现这并不会改善性能,相对于只使用其中一个获得的最佳结果。切换点似乎在 M1 Pro 芯片的硬件特性(8 个性能核心,14 或 16 个 GPU 核心)附近,目前我们无法访问。
🧨Diffusers 版本 1.1 会根据应用程序运行的计算机自动选择最佳加速器。某些设备配置(如“Pro”变体)在我们所知的任何云服务中都不提供,因此我们对它们的启发式算法可能还有改进的空间。如果您愿意帮助我们收集数据,以改进我们应用程序的开箱即用体验,继续阅读!
社区征集基准数据
我们有兴趣在 Mac 设备上进行更全面的性能基准测试。如果您愿意帮助,我们已经创建了这个 GitHub 问题,在这里您可以发布您的测试结果。我们将使用这些结果来优化即将发布的应用程序的性能。我们特别关注 M1 Pro、M2 Pro 和 M2 Max 架构 🤗
版本 1.1 的其他改进
除了性能优化和修复一些错误外,我们着重添加了新功能,同时努力保持用户界面的简洁和清爽。其中大部分功能都是明显的(引导比例、可选禁用安全检查器、允许取消生成)。我们最喜欢的功能是模型下载指示器,以及从先前生成中重新使用种子来调整生成参数的快捷方式。
版本 1.1 还包括关于不同生成设置的附加信息。我们希望 🧨Diffusers for Mac 能够让所有 Mac 用户,而不仅仅是技术人员,都能够轻松接触到图像生成。
下一步计划
我们相信,在 Apple 生态系统中有很多未开发的图像生成潜力。在未来的更新中,我们希望专注于以下内容:
- 便捷访问 Hub 中的其他模型。以 Mac 的方式在应用程序中运行任何 Dreambooth 或精调模型。
- 发布 iOS 和 iPadOS 版本。
我们还在考虑许多其他想法。如果您想提出自己的想法,欢迎在我们的 GitHub 存储库中提出。