Blaizzy/mlx-audio

A text-to-speech (TTS), speech-to-text (STT) and speech-to-speech (STS) library built on Apple's MLX framework, providing efficient speech analysis on Apple Silicon.

MLX‑Audio – Apple‑Silicon 네이티브로 빠르고 효율적인 음성 AI 라이브러리

무엇인가요 – Apple의 MLX 프레임워크에서 작동하는 최신 음성 및 음악 모델을 포괄하는 Python 패키지(옵션으로 Swift 패키지)입니다. CLI 도구, Python API, 웹 UI, OpenAI 호환 REST 엔드포인트를 제공하며 다음과 같은 기능을 지원합니다:

  • 텍스트에서 음성 생성 (TTS)
  • 음성에서 텍스트 변환 (STT / ASR)
  • 음성에서 음성 변환 / 소스 분리
  • 음성 활동 감지 및 화자 분리 (VAD / Diarization)
  • 음악 생성
  • 3~8비트 양자화를 통한 저메모리 Apple Silicon 장치용 추론

빠른 시작 (CLI)

# 패키지 설치
pip install mlx-audio   # 또는: uv tool install mlx-audio

# 짧은 TTS 클립 생성 (기본 음성: "Vivian")
mlx_audio.tts.generate \
    --model mlx-community/Qwen3-TTS-12Hz-0.6B-CustomVoice-8bit \
    --text "Hello, world!" \
    --play

--stream을 추가하면 생성 중 음성을 들을 수 있으며, --save로 디스크에 저장하거나 --join_audio로 다중 세그먼트 출력을 하나의 파일로 병합할 수 있습니다.


빠른 시작 (Python)

from mlx_audio.tts.utils import load_model

model = load_model("mlx-community/Qwen3-TTS-12Hz-0.6B-CustomVoice-8bit")
for result in model.generate(
        "Hello from MLX‑Audio!",
        voice="Vivian",
        lang_code="English",
    ):
    # result.audio는 파형을 포함하는 mx.array입니다
    print("generated", result.audio.shape[0], "samples")

STT, VAD, 다이어라이제이션 등에도 동일한 패턴이 적용되며, 해당하는 mlx_audio.stt 또는 mlx_audio.vad 모듈을 사용합니다.


핵심 기능 (README에서)

  • Apple‑Silicon 최적화 – MLX 백엔드에서 추론이 실행되어 M 시리즈 칩에서 낮은 지연 시간의 생성을 제공합니다.
  • 광범위한 모델 카탈로그 – Hugging Face에 수십 개의 사전 호스팅된 모델이 있으며 (예: Kokoro, OmniVoice, Qwen3‑TTS, Whisper, VAD, 음악 생성 모델), 대부분은 8비트, 4비트, 3비트 양자화 버전을 제공합니다.
  • 다국어 및 음성 클론 – 수십 개의 언어를 지원하며, 여러 모델(예: OmniVoice, Higgs Audio, CSM)은 참조 음성 클립으로 화자를 클론할 수 있습니다.
  • 스트리밍 및 실시간 제어 – TTS용 --stream 플래그, 스트리밍 ASR 모델(예: Nemotron 3.5‑ASR‑streaming, VibeVoice‑ASR), 풀디플렉스 VoiceChat를 지원합니다.
  • 웹 UI – 3D 오디오 시각화를 갖춘 인터랙티브 브라우저 인터페이스입니다.
  • OpenAI 호환 REST API – OpenAI의 audio/speech 엔드포인트와 즉시 교체 가능한 대체 솔루션입니다.
  • 양자화 – 3, 4, 6, 8비트(또는 MXFP 형식)를 지원하여 대규모 모델을 제한된 메모리의 노트북에 맞춥니다.
  • Swift 패키지 – iOS/macOS 네이티브 앱을 위한 선택적 통합입니다.

모델 카테고리 (요약)

카테고리 예시 모델 언어 / 비고
TTS Kokoro, OmniVoice, Qwen3‑TTS, Higgs Audio v3, Voxtral‑TTS 20개 이상 언어, 음성 클론, 속도 조절
STT / ASR Whisper‑large‑v3‑turbo, Qwen3‑ASR, VibeVoice‑ASR, Moonshine 99개 이상 언어 (Whisper), 스트리밍 버전
VAD / Diarization Silero VAD, Sortformer v1/v2.1 언어 독립적, 최대 4명의 화자
STS / Enhancement SAM‑Audio (소스 분리), DeepFilterNet, NemotronLabs VoiceChat 노이즈 제거, 풀디플렉스 음성 채팅
음악 생성 MiniMax Music 3 (계층적 AR + 플로우 매칭) 다국어 가사, 44.1 kHz 스테레오

설치 옵션

방법 명령어 사용 시기
표준 pip pip install mlx-audio 간단한 로컬 사용, 핵심 라이브러리 포함
uv (CLI 도구만) uv tool install --force mlx-audio mlx_audio.* 명령줄 유틸리티만 필요할 때
소스에서 (개발 / 서버) ```bash
git clone https://github.com/Blaizzy/mlx-audio.git
cd mlx-audio
pip install -e ".[dev, server]"

---
## 웹 UI / API 서버 실행
```bash
# "server" 추가로 설치 후
mlx_audio.server --host 0.0.0.0 --port 8000

UI는 http://localhost:8000 에서 접근 가능하며, 텍스트 입력 상자, 음성 선택기, 3D 파형 시각화 기능을 제공합니다.


라이선스 및 인용

  • 라이선스: MIT (README의 배지 참조).
  • 인용: README에 Citation 섹션이 있으며, 결과를 발표할 때 원본 모델 리포지토리(예: Qwen3‑TTS, Whisper)를 인용할 것을 권장합니다.

누구에게 적합한가요?

  • Mac 노트북에서 저지연 음성 합성 또는 인식이 필요한 음성 보조기나 멀티모달 에이전트를 개발하는 개발자.
  • 새로운 음성 모델을 프로토타이핑하는 연구자로 Apple 하드웨어에서 통합 인터페이스와 쉬운 양자화를 원하는 사람.
  • Swift 호환 음성 AI SDK를 찾는 iOS/macOS 앱 개발자.
  • 클라우드 비용 없이 로컬에서 TTS/음성 클론 파이프라인을 원하는 콘텐츠 제작자.

요약

MLX‑Audio는 수십 개의 최신 음성 및 음악 모델을 통합하고, CLI와 Python API를 제공하며, 강력한 양자화를 지원하며, 웹 UI와 OpenAI 호환 서버까지 제공하는 Apple‑Silicon 중심의 종합적인 도구 키트입니다. 대규모 음성 모델의 무거운 세계를 맥북에서 로컬로 실행할 수 있도록 만듭니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트