在 Arm CPU 上的实时 AI 声音生成
设备端 AI 音频生成用于创意工作流
Arm 展示了一款个人声音生成应用,可直接在基于 Arm 的 CPU 上通过文本提示创建可用于工作室的音频。通过利用开源生成式 AI 模型和高效的设备端推理,该工具使音乐制作人能够在几秒钟内生成独特的 .wav 文件,而无需依赖云资源或专用 GPU。
技术架构与模型集成
声音生成引擎基于开源框架与优化的硬件执行相结合构建。系统使用以下核心组件:
- Model: 由 Stability AI 提供的 Stable Audio Open 模型,通过 Hugging Face 获取。
- Inference Frameworks: 使用 PyTorch 和 TorchAudio 进行模型推理和音频信号处理。
- Hardware Execution: 管道在基于 Arm 的 CPU 上原生运行,利用优化的多线程执行以在扩散过程保持响应性。
虽然系统针对 Arm CPU 进行了优化,但仍保持设备灵活性,可通过在代码中调整设备目标,在 Metal(Apple Silicon)或 CUDA(NVIDIA)上运行。
针对 Arm CPU 的性能优化
为在基于 CPU 的硬件上实现实时性能,实施采用了特定的优化策略以降低延迟和内存开销:
线程利用
为最大化 Arm CPU 的计算能力,应用使用以下 PyTorch 命令启用全部线程利用:
torch.set_num_threads(os.cpu_count())
内存管理
为防止内存泄漏并在多次生成过程中保持稳定,系统会定期触发垃圾回收:
if gen_count % 3 == 0:
gc.collect()
推理调优
通过减少扩散过程的步数来调优生成循环以提升速度,这在加速推理的同时不牺牲声音效果所需的质量:
output = generate_diffusion_cond(
model,
steps=7, # Reduced step count for faster inference
cfg_scale=1,
# ... other parameters
sampler_type="dpmpp-3m-sde",
device=device
)
与数字音频工作站 (DAW) 的集成
该工具旨在通过将生成的 .wav 文件输出到 Ableton Live 监控的项目文件夹,直接集成到音乐制作工作流中。这使创作者能够输入提示(例如 “analog bassline” 或 “cinematic riser”)和节奏,并立即在 Ableton 浏览器中看到生成的音频文件,以便进一步编排和调制。
对设备端 AI 的意义
该原型展示了在 Arm CPU 上进行高计算创意任务的高效、设备端 AI 推理的可行性。这种方法的主要优势包括:
- Reduced Latency: 消除云推理,去除网络请求相关的等待时间。
- Privacy and Ownership: 设备端生成确保数据保持本地,创作者拥有输出的完整所有权。
- Edge Deployment: 在 Arm CPU 上运行这些模型的能力将生成式 AI 能力扩展到边缘设备,并直接进入专业创意软件界面。