Stable Diffusion的魅力:苹果亲自下场优化,iPad、Mac上快速出图( 二 )


这次发布的版本包括一个Python包 , 用于使用diffusers和coremltools将StableDiffusion模型从PyTorch转换到CoreML , 以及一个Swift包来部署模型 。 请访问CoreMLStableDiffusion代码存储库以启动 , 并获取关于基准测试和部署的详细说明 。
Stable Diffusion的魅力:苹果亲自下场优化,iPad、Mac上快速出图
文章图片
项目地址:https://github.com/apple/ml-stable-diffusion
项目介绍
整个代码库包括:python_coreml_stable_diffusion , 一个Python包 , 用于将PyTorch模型转换为CoreML格式 , 并使用Python版的HuggingFacediffusers执行图像生成;StableDiffusion , 一个Swift包 , 开发者可以把它作为依赖包添加到他们的Xcode项目中 , 在他们的应用程序中部署图像生成功能 。 Swift包依赖于python_coreml_stable_diffusion生成的CoreML模型文件 。
将模型转换为CoreML版本
步骤1:创建Python环境并安装依赖包:
Stable Diffusion的魅力:苹果亲自下场优化,iPad、Mac上快速出图
文章图片
步骤2:登录或注册HuggingFace账户 , 生成用户访问令牌 , 并使用令牌通过在终端窗口运行huggingface-clilogin来设置HuggingFaceAPI访问 。
步骤3:找到想在HuggingFaceHub上使用的StableDiffusion版本 , 接受使用条款 。 默认型号版本为“CompVis/stable-diffusion-v1-4” 。
步骤4:从终端执行以下命令生成CoreML模型文件(.mlpackage)
python-mpython_coreml_stable_diffusion.torch2coreml--convert-unet--convert-text-encoder--convert-vae-decoder--convert-safety-checker-o
M1MacBookPro一般需要15-20分钟 。 成功执行后 , 构成StableDiffusion的4个神经网络模型将从PyTorch转换为CoreML版(.mlpackage) , 并保存到指定的<output-mlpackages-directory>.
用Python生成图像
使用基于diffusers的示例Python管道运行文本到图像生成 。
python-mpython_coreml_stable_diffusion.pipeline--prompt"aphotoofanastronautridingahorseonmars"-i-o--compute-unitALL--seed93
使用Swift生成图像
构建Swift项目需要:macOS13或更新版本安装了命令行工具的Xcode14.1或更新版本 。 CoreML模型和tokenization资源 。
如果将此模型部署到:iPhone:iOS16.2及以上版本和iPhone12及以上版本iPad:iPadOS16.2或更新版本和M1或更新版本Mac:macOS13.1或更新版本和M1或更新版本
Swift包包含两个产品:StableDiffusion库和StableDiffusionSample命令行工具 。 这两个产品都需要提供CoreML模型和tokenization资源 。
性能基准测试
标准CompVis/stable-diffusion-v1-4基准 。 该基准测试由苹果公司在2022年11月使用iOS16.2、iPadOS16.2和macOS13.1的公开测试版进行 。
针对macOS设备 , 执行的程序是python_coreml_stable_diffusion 。 对于iOS和ipad设备 , 有一个建立在StableDiffusionSwift包上的最小Swift测试应用程序 。
图像生成过程遵循标准配置:
50个推理步骤 , 512x512输出图像分辨率 , 77文本token序列长度 , 无分类器引导(unet批大小为2) 。
Stable Diffusion的魅力:苹果亲自下场优化,iPad、Mac上快速出图
文章图片
参考文章:https://machinelearning.apple.com/research/stable-diffusion-coreml-apple-silicon返回搜狐 , 查看更多
责任编辑: