Arm CPU에서 실시간 AI 사운드 생성

창의적 워크플로우를 위한 온디바이스 AI 오디오 생성

Arm은 텍스트 프롬프트를 통해 스튜디오 수준의 사운드를 Arm 기반 CPU에서 직접 생성할 수 있는 개인 사운드 생성 애플리케이션을 시연했습니다. 오픈소스 생성 AI 모델과 효율적인 온디바이스 추론을 활용함으로써, 이 도구는 음악 프로듀서가 클라우드 리소스나 전용 GPU에 의존하지 않고도 몇 초 안에 고유한 .wav 파일을 생성할 수 있게 합니다.

기술 아키텍처 및 모델 통합

사운드 생성 엔진은 오픈소스 프레임워크와 최적화된 하드웨어 실행을 결합하여 구축되었습니다. 시스템은 다음 핵심 구성 요소를 사용합니다:

  • 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 기능을 엣지 디바이스와 전문 창작 소프트웨어 인터페이스에 직접 확장합니다.

Sources