Voxtral Mini 4B Realtime (Rust/WASM 구현)

개요

Mistral의 ‘Voxtral Mini 4B Realtime’ 음성 인식 모델을 Rust의 Burn ML 프레임워크로 재구현한 프로젝트입니다. WASM과 WebGPU를 활용해 브라우저 탭에서 실시간 스트리밍 음성 인식(Speech-to-Text)을 완벽하게 클라이언트 측(Client-side)에서 수행합니다.

  • 출처: TrevorS (2026 초반)
  • 핵심 기술: Rust, Burn ML, WASM, WebGPU, GGUF 양자화
  • 특징: 서버 통신 없이 100% 로컬(브라우저/네이티브) 동작으로 프라이버시 및 실시간성 보장.

1. 주요 기술적 아키텍처

추론 경로 (Inference Path)

  • Native: SafeTensors 기반 F32 모델 (약 9GB)
  • Browser: GGUF Q4_0 양자화 모델 (약 2.5GB)

브라우저 환경 제약 해결 기술

브라우저의 엄격한 리소스 제한 내에서 4B 파라미터 모델을 돌리기 위한 엔지니어링 기법:

  1. ShardedCursor: 2GB 메모리 할당 제한을 극복하기 위한 다중 버퍼 읽기 기술.
  2. 2단계 로딩: 4GB 주소 공간 제한 내에서 모델 파싱 후 리더(Reader)를 해제하여 메모리 점유 최적화.
  3. 하이브리드 임베딩: GPU Q4 임베딩 + CPU 행(Row) 조회를 결합하여 1.5GiB 규모의 테이블 처리.
  4. 비동기 텐서 처리: GPU 동기 읽기 금지 정책을 우회하기 위한 into_data_async().await 구현.
  5. 워크그룹 제한 해결: cubecl-wgpu 패치를 통한 GPU 커널 크기 최적화.

2. 품질 개선: 패딩 보정

  • 문제: 기본 mistral-common은 오디오를 32개 무음 토큰으로 패딩하지만, 실제 디코더는 38개의 프리픽스가 필요하여 음성 시작부에서 오류 발생.
  • 해결: 패딩을 76 토큰으로 확장하여 전체 프리픽스를 무음 처리함으로써 음성 인식 안정성 확보.

3. 개발 및 빌드 환경

  • 프레임워크: Burn ML (Rust 기반 딥러닝 프레임워크)
  • 빌드: wasm-pack을 사용하여 브라우저용 WASM 타겟으로 빌드.
  • 테스트: GPU 환경에서 Playwright를 활용한 E2E(End-to-End) 테스트 수행.
  • 배포: HuggingFace Spaces를 통해 브라우저 실시간 데모 제공.

4. 시사점

  • 엣지 AI의 진화: 서버 의존 없이 브라우저 내에서 직접 고성능 음성 인식 모델(4B)을 실행할 수 있게 됨으로써, 고도의 프라이버시가 요구되는 음성 데이터 처리에 획기적인 변화를 가져옴.
  • Rust와 Burn ML의 잠재력: 복잡한 머신러닝 워크로드를 하드웨어 제약이 많은 브라우저 환경까지 확장하는 데 Rust 기반 생태계가 강력한 대안으로 부상.
  • 엔지니어링의 중요성: 모델 자체의 성능만큼이나, 브라우저의 제한된 환경에서 모델을 구동하기 위한 ‘샤딩’, ‘메모리 관리’ 등 저수준 엔지니어링 능력이 모델 상용화의 핵심 요소임.

관련 항목