Apple Silicon에서 Swift/MLX로 구동한 Nvidia PersonaPlex 7B, 실시간 음성 에이전트에 한 걸음 더 다가가다
Original: Nvidia PersonaPlex 7B on Apple Silicon: Full-Duplex Speech-to-Speech in Swift View original →
Hacker News 토론: https://news.ycombinator.com/item?id=47258801
원문: Ivan Campos의 PersonaPlex 7B 포팅기
이번 HN 글은 단순한 benchmark 차트보다 더 실용적인 실험을 가리킨다. NVIDIA Research의 PersonaPlex 7B speech-to-speech 스택을 MLX를 통해 Apple Silicon 위에서 native Swift로 돌리는 작업이다. PersonaPlex가 흥미로운 이유는 그것이 단순한 speech-to-text + text-to-speech 연결이 아니라 full-duplex 음성 상호작용을 겨냥한 모델이기 때문이다. 그리고 이 글이 더 유용한 이유는, 그 구성을 로컬 머신에서 실제로 쓸 만하게 만들기 위해 무엇을 바꿨는지에 초점을 맞추기 때문이다.
포팅에서 바뀐 점
- 0.5초마다 오디오를 내보내는 heartbeat chunking을 넣어 dead air와 문장 끝 반복을 줄였다.
- passthrough mode와 realtime preview를 추가해 assistant 음성이 바로 들리기 시작하고 interruption도 가능하게 했다.
- audio stack을 ring buffer, dynamic chunk dropping, session 관리 중심으로 다시 짜 multi-user·multi-agent 구성까지 염두에 두었다.
작성자에 따르면 초기 포트는 3~4초 수준의 latency에 묶여 있어 자연스러운 turn-taking에는 너무 느렸다. 파이프라인을 손본 뒤에는 M4 Pro 데모에서 1.5B encoder 단계부터 incremental audio output까지 약 1.3x real time, 사용자 발화 종료 시점부터 assistant 음성 시작까지는 대략 0.4 latency factor 수준에 도달했다고 한다. 남은 약점은 turn detection이다. 기존 Python reference 환경에서 쓰던 voice activity logic을 Swift 쪽에서 더 다듬을 필요가 있다는 설명이다.
AI 빌더 관점에서 중요한 이유는 분명하다. 로컬 voice agent가 이제 “데모에서는 된다” 수준에서 “대화에 쓸 만하다”는 쪽으로 이동하고 있기 때문이다. 이 글은 speech-to-speech 시스템의 난점이 모델 품질만이 아니라 streaming, buffering, interruption, 그리고 전체 audio loop의 사용감에 있다는 점을 잘 보여준다.
Related Articles
LocalLLaMA의 한 구현 보고는 Apple Silicon용 native MLX DFlash runtime으로 Qwen 계열 inference를 2배에서 3배 이상 가속했다고 주장한다. 중요한 점은 speedup뿐 아니라 greedy baseline과 bit-for-bit identical output을 유지했다고 설명한 부분이다.
r/LocalLLaMA에서 주목받은 March 28, 2026 게시물은 TurboQuant KV cache compression을 MLX와 custom Metal kernel에 이식한 구현 기록이다. 작성자는 Qwen2.5-32B on M4 Pro 48GB에서 4.6x compression과 0.98x FP16 speed를 주장했지만, repo README의 7B 수치는 더 보수적이어서 실제 이득이 model과 integration 방식에 크게 좌우된다는 점도 함께 드러난다.
LocalLLaMA에서는 Apple Silicon에서 Qwen3.5 추론을 4배 안팎까지 끌어올린 MLX용 DFlash 구현이, 과장된 demo가 아니라 baseline을 다시 잡고 open source로 공개한 engineering 작업이라는 점 때문에 주목받았다. 2026년 4월 13일 글 작성자는 stock MLX 기준으로 Qwen3.5-9B 2048 tokens에서 30.96 tok/s를 127.07 tok/s로 높였고 acceptance는 89.36%라고 공개했다.