digimata/parrot
Swift0 / 0
Apple Silicon에서 CoreML/ANE로 로컬 음성인식을 수행하는 푸시투토크 macOS 데몬
TL;DR
parrot는 macOS 14 이상, Apple Silicon(M1 이상)에서 동작하는 초경량 푸시투토크 받아쓰기 데몬으로, AVAudioEngine으로 마이크를 캡처하고 WhisperKit을 통해 CoreML/Apple Neural Engine에서 온디바이스 트랜스크립션을 수행합니다. 설치는 curl로 제공되는 스크립트로 진행되며 parrot setup으로 권한과 모델을 내려받고 parrot install --launch-at-login으로 백그라운드 실행을 등록할 수 있습니다. 사용자는 텍스트 필드에 커서를 두고 fn 키를 누르고 말하면 release 시점에 보통 200~300ms 내에 결과가 커서에 입력되며, 인텔 Mac에서는 설치가 거부된다는 점과 빌드가 아직 서명되지 않아 설치 스크립트가 quarantine xattr을 제거한다는 사실을 반드시 확인해야 합니다.
핵심 포인트
- parrot는 macOS에서 동작하는 매우 간단한 푸시투토크 음성 받아쓰기 데몬으로, 사용자는 텍스트 필드에 커서를 둔 상태에서 fn 키를 누르고 말한 뒤 떼면 음성이 커서 위치에 자동으로 입력됩니다. 마이크 캡처는 AVAudioEngine으로 수행되고, 음성-텍스트 변환은 WhisperKit을 통해 CoreML로 실행되어 Apple Neural Engine(ANE)에서 가속됩니다. 인터페이스는 화면 하단의 작은 알림형 pill 창과 fn 키 하나만으로 구성되어 있어 별도의 녹음/전송 UI 없이 즉시 입력이 필요한 작업에 빠르게 적용할 수 있습니다.
- 시스템 요구사항과 제약이 명확하게 정해져 있으며 macOS 14 이상과 Apple Silicon(M1 이상)이 필요하고 인텔 CPU에서는 설치가 거부됩니다. README에 따르면 트랜스크립션은 ANE에서 실행되므로 성능과 호환성은 하드웨어에 의존하며, 더 큰 모델을 쓰려면 parrot --model whisper-large-v3-turbo처럼 모델 옵션을 지정할 수 있습니다. 배포된 빌드는 현재 서명되지 않아 설치 스크립트가 quarantine xattr을 제거하는 동작을 수행한다고 명시되어 있으므로 설치 전 스크립트를 검토해야 합니다.
- 설치와 운영이 단순하며 curl로 제공된 install.sh를 실행한 뒤 parrot setup으로 마이크·접근성 권한과 모델을 내려받고, parrot install --launch-at-login으로 백그라운드 런치에이전트를 등록할 수 있습니다. 실행 후에는 텍스트 입력을 원하는 위치에 커서를 두고 fn을 누르고 말하면 release 시점에 보통 200~300ms 내에 텍스트가 입력됩니다. 추가 유틸 명령으로 parrot doctor(권한 확인), parrot models list/download(모델 관리)를 제공하므로 운영 상태와 모델을 미리 체크할 수 있습니다.
- 개발 관점에서는 단일 SPM 실행 가능한 Swift 타깃으로 구성되어 있어 swift build -c release로 빌드하고 .build/release/parrot --help로 도움말을 확인할 수 있습니다. 내부 스택으로는 WhisperKit(CoreML 기반), AVAudioEngine, CGEventTap/CGEvent(글로벌 핫키와 텍스트 주입), NSWindow(경계 없는 클릭 통과형 pill)가 사용되며 docs/architecture.md에 설계 노트가 있습니다. 바이너리는 설치 시 /usr/local/bin/parrot로 배치되므로 소스 검토 후 직접 빌드하거나 설치 스크립트를 확인해 배포 방식을 결정할 수 있습니다.
1.1k
Stars
89
Forks
+204
Trending
0
조회수
1.1k watchers23 open issues
관련 토론
아직 관련 토론이 없습니다.
댓글
댓글을 작성하려면 로그인이 필요합니다.