Qwen Scribe v0.1.0-beta.1 – Apple Silicon을 위한 로컬 전사 및 받아쓰기

개요 및 핵심 요약

Qwen Scribe v0.1.0-beta.1은 Qwen3-ASR을 완전히 온디바이스로 실행하여 Apple Silicon Mac을 위한 프라이빗한 로컬 전사 및 받아쓰기 기능을 제공합니다. 이 애플리케이션은 소스 코드로만 배포됩니다. 사용자는 make app을 사용하여 로컬에서 앱을 빌드해야 합니다. 계정, API 키 또는 클라우드 서비스가 필요하지 않으며, 오디오 및 전사 텍스트는 Mac에 그대로 유지됩니다.

기능 및 역량

Qwen Scribe는 드래그 앤 드롭 미디어 전사, 오른쪽 Command 키를 통한 실시간 받아쓰기, 언어 감지 기능이 포함된 다국어 지원, 그리고 로컬 전사 기록을 제공합니다. 사용자는 집중형 웹 인터페이스에 오디오 또는 비디오 파일을 드롭하고, 정확도를 위한 1.7B 모델과 속도를 위한 0.6B 모델 중 하나를 선택할 수 있으며, 자동 언어 감지, 선택적 강제 언어 설정, 어휘 힌트, 단어 타임스탬프 및 SRT 내보내기 기능을 사용할 수 있습니다. 받아쓰기는 모든 텍스트 필드에서 오른쪽 Command 키를 누르고 있으면 활성화됩니다. 말을 하면 키가 해제되면서 로컬에서 전사하고 결과를 커서 위치에 붙여넣습니다. 포커스를 뺏지 않는 HUD를 통해 듣는 중(Listening), 전사 중(Transcribing), 성공(success), 실패(failure) 상태를 확인할 수 있습니다. 모든 전사 내용은 JSON 형식으로 로컬에 저장되며, 개별적으로 다시 열거나 삭제하거나 전체를 삭제할 수 있습니다.

시스템 요구 사항 및 설치

Qwen Scribe를 실행하려면 macOS 14 이상이 설치된 Apple Silicon Mac, Python 3.12, ffmpeg, 그리고 Xcode 커맨드 라인 도구가 필요하며, 이후 make app을 통해 소스에서 앱을 빌드합니다. 1.7B 모델은 약 3.4GB의 통합 메모리가 필요하며, 0.6B 모델은 약 1.2GB가 필요합니다(일반적인 애플리케이션 오버헤드 별도). 모델 가중치는 번들로 제공되지 않으며, 처음 실행할 때 cache/huggingface/hub로 다운로드됩니다.

빌드 후, dist/Qwen Scribe.app은 서버와 받아쓰기 도우미를 시작하고, dist/Stop Qwen Scribe.app은 Qwen Scribe에 의해 실행된 프로세스만 중지합니다.

아키텍처 및 데이터 흐름

이 애플리케이션은 브라우저 기반 UI, FastAPI 작업 큐, MLX 가속 Qwen3-ASR을 분리하여 제공하며, 네이티브 macOS 도우미가 받아쓰기 단축키를 처리합니다.

UI는 localhost 전용 FastAPI 서버와 통신하며, 이 서버는 메모리 경합을 피하기 위해 GPU 작업을 직렬화합니다. 미디어 파일은 임의의 임시 이름으로 스테이징된 후 처리가 완료되면 제거됩니다. 받아쓰기의 경우, 네이티브 arm64 번들 실행 파일(native/DictationHelper.m)이 오른쪽 Command 이벤트를 모니터링하고, 임시 WAV 파일을 생성하여 동일한 작업 큐로 전송한 뒤, 전사 내용을 수신하고, 클립보드 스냅샷을 찍은 후, Command-V로 텍스트를 붙여넣고, 변경 사항이 없으면 이전 클립보드 내용을 복구합니다.

사용법: 파일 전사 및 받아쓰기

사용자는 http://127.0.0.1:8990의 웹 인터페이스를 통해 로컬 오디오/비디오 파일을 전사하거나, 모든 텍스트 필드에서 오른쪽 Command 키를 눌러 받아쓰기를 호출할 수 있습니다.

파일 전사: 로컬 서버 URL을 열고, 파일을 드롭하고, 모델 크기와 옵션을 선택한 다음, 전사 내용 또는 SRT를 다운로드합니다. 받아쓰기: 시스템 설정 → 개인정보 보호 및 보안에서 마이크, 입력 모니터링, 손쉬운 사용 권한을 허용합니다. 오른쪽 Command를 누른 상태에서 말을 한 뒤 키를 떼면 텍스트가 삽입됩니다. 손쉬운 사용 권한이 거부된 경우, 도우미는 성공했다고 보고하는 대신 전사 내용을 클립보드에 남기고 실패를 보고합니다.

성능 및 커뮤니티 비교

초기 커뮤니티 피드백에 따르면 Qwen Scribe는 M1 Mac에서 실시간 대비 약 2배 속도로 실행된다고 합니다. 일부 사용자는 벤치마크 데이터 없이 Whisper, Parakeet 및 기타 도구와 비교하기도 합니다.

"이것은 M1에서 실시간 대비 2배 속도입니다. parakeet를 사용한 fluidaudio의 60배와 비교하면 말이죠." — @foobarqux

저장소에는 공식적인 지연 시간이나 정확도 수치가 제공되지 않습니다. 위의 성능 주장은 인용된 댓글에서만 나온 것입니다.

개인정보 보호, 권한 및 데이터 처리

Qwen Scribe는 모든 오디오 및 전사 데이터를 Mac에 유지합니다. 받아쓰기를 위해 마이크, 입력 모니터링 및 손쉬운 사용 권한이 필요하며, 전사 내용은 애플리케이션 지원(Application Support) 폴더에 암호화되지 않은 JSON으로 저장됩니다.

저장된 전사 내용은 ~/Library/Application Support/Qwen Scribe/transcripts에 읽기 가능한 JSON 형식으로 저장됩니다. 프라이빗 런타임 및 진단 로그도 그 옆에 저장됩니다. 모델 가중치는 ~/.cache/huggingface/hub에 캐시됩니다. 전사 내용이 암호화되지 않으므로 로컬 백업이나 파일 시스템 삭제 시 복사본이 남아 있을 수 있습니다. 애플리케이션에서 보안 삭제(secure erasure)는 수행되지 않습니다.

개발, 빌드 프로세스 및 로드맵

이 프로젝트는 가상 환경 설정, 테스트 실행, ad-hoc 서명 앱 빌드 및 베타 릴리스 패키지 생성을 위한 Makefile 기반 워크플로를 제공하며, v0.2에서 Developer ID 서명 및 공증(notarized)된 바이너리를 제공할 계획입니다.

make setup.venv를 생성하고 고정된 종속성 락(lock)을 설치합니다. make test는 모델 가중치 없이 가벼운 API/history 테스트를 실행합니다. make check는 소스 컴파일 및 배포 위생 검사를 추가합니다. make app은 네이티브 DictationHelper를 arm64 번들로 컴파일하고, 서버 실행기와 추적된 소스를 서명된 리소스로 포함하며, property list를 검증하고, 결과물을 서명 및 확인합니다. make packagedist/에 베타 릴리스 zip 파일을 생성합니다.

CODESIGN_IDENTITY를 Developer ID ID로 설정하면 릴리스 빌드 서명이 활성화됩니다. 공증은 v0.2를 위해 계획된 별도의 단계입니다.

커뮤니티 질문 및 통찰

Hacker News의 댓글 작성자들은 언어 지원, Whisper 및 기타 받아쓰기 도구와의 비교, mlx-swift 대신 Python을 선택한 이유, 그리고 ffmpeg 설치 방법에 대해 질문했습니다.

"oai의 whisper보다 나은가요?" — @yuraoak

"출시를 축하합니다! 1. python을 사용하는 것을 보았는데, mlx-swift를 사용할 계획은 없었는지 궁금합니다. 그냥 고려해 보셨는지 궁금해서요. 2. 지금까지 qwen ASR은 대부분의 받아쓰기 애플리케이션에서 parakeet나 whisper보다 지원이 덜 되는 것 같습니다 (voxtral도 이 점에서는 비슷합니다). 왜 그렇다고 생각하시나요? 감사합니다. 로드맵에 행운을 빕니다!" — @jiehong

"handy.computer 및 whisprflow의 모델과 비교하면 어떤가요?" — @dandaka

"어떤 언어를 지원하나요?" — @abdullahkhalids

"naive macports 사용자로서 질문입니다. 어느 정도 brew는 macports와 별개입니다. macports로 설치된 ffmpeg에 연결하는 쉬운 방법이 있을까요? 감사합니다." — @dmwood

"이런 종류의 도구는 의사들이 환자 데이터를 어디에 있는지 모르는 AI 기록기에게 쏘아 올리는 대신 사용해야 합니다. 이것이 불법일 것이라고 확신하지만 여전히 일어나고 있고, FHE 해결을 촉구하는 이유 중 하나라고 확신합니다... 하지만 그냥 로컬에서 처리하는 것이 훨씬 더 실용적이고 프라이빗합니다." — @smalltorch

"@claude가 기여자인가요? 믿기 어렵네요." — @1-6

이 질문들에 대한 답변은 소스 자료에 포함되어 있지 않으며, 게시물은 문의 사항만을 보고합니다.

Sources