Tamka 아이콘

Tamka

Rust로 작성한 Mac용 온디바이스 받아쓰기 앱.

Tamka(탐카)는 스와힐리어로 ‘발음하다’ 또는 ‘말하다’라는 뜻입니다.

Parakeet Ultra를 사용 중인 Tamka의 Models 설정, 최근 받아쓰기 3개가 있는 메뉴, 0:12를 표시한 듣는 중 표시기

Mac의 모든 앱에서 받아쓰기

Tamka는 음성 모델을 다운로드한 후에는 오프라인으로 작동하는 macOS용 무료 오픈 소스 받아쓰기 앱입니다.

단축키를 누르고 말한 다음 단축키를 다시 누르면 커서 위치에 텍스트가 나타납니다. 음성 인식은 NVIDIA의 Parakeet 모델로 Neural Engine에서 처리되며, 오디오는 Mac 밖으로 나가지 않습니다. M5 Max를 탑재한 MacBook Pro에서는 50초 동안 말한 뒤에도 말을 멈추고 약 0.2초 후에 텍스트가 입력됩니다.

Tamka는 텍스트를 입력하기 전에 “um”과 “uh”를 지우고, 말더듬을 정리하고, “comma”, “new line”, “open paren” 같은 음성 명령을 해당 문자로 바꿉니다. Parakeet Ultra를 불러온 상태에서 메모리를 약 0.5GB 사용하며, 대부분은 Neural Engine이 보유한 모델 가중치입니다.

받아쓰기

  1. 텍스트를 입력할 위치를 클릭합니다. 이메일, 채팅, 코드 편집기, 검색창 등 어디든 됩니다.
  2. ⌃V를 누르고 말합니다. 타이머가 있는 표시기가 나타나 Tamka가 듣고 있음을 알려 줍니다.
  3. ⌃V를 다시 누릅니다. Tamka가 말한 내용을 커서 위치에 입력하고 클립보드에도 사본을 남깁니다.

Tamka가 듣는 동안 Esc 키를 누르면 녹음을 버립니다. 기본 단축키는 ⌃V이며, Settings › General에서 ⌘, ⌃ 또는 ⌥를 포함하는 원하는 조합으로 바꿀 수 있습니다.

표시기

표시기는 입력 중인 앱의 초점을 빼앗지 않습니다. 다른 디스플레이를 포함해 원하는 곳으로 드래그하면 이후 받아쓰기 때마다 같은 위치에 나타납니다. 해당 디스플레이의 연결이 끊기면 포인터가 있는 화면의 하단 중앙으로 돌아갑니다.

듣는 중인 표시기: 빨간 점, 0:12를 가리키는 타이머, 단축키 안내 텍스트로 변환 중인 표시기

음성 모델 선택하기

앱에는 음성 모델이 포함되어 있지 않습니다. 처음 실행하면 Settings › Models가 열리고 Parakeet Ultra에 Recommended 표시가 붙어 있습니다. 모델은 다운로드한 뒤에는 오프라인으로 작동하며, 모델을 제거하면 휴지통으로 이동합니다.

크기는 다운로드 용량과 모델을 불러온 동안 사용하는 메모리를 뜻합니다. 속도는 말을 멈춘 뒤 텍스트가 나타나기까지 걸리는 시간입니다. 정확도는 일상적인 말에 대한 단어 오류율입니다. 앱에서 등급 위에 포인터를 올리면 근거가 된 측정값을 볼 수 있습니다.

Settings의 Models 탭: 크기, 속도, 정확도 등급이 매겨진 Parakeet Ultra, Phonon-2, v3, v2, Apple Speech
모델크기속도정확도적합한 용도
Parakeet Ultra(권장)BAA일상적인 받아쓰기, 문장 부호가 가장 정확함
Parakeet Phonon-2AAA−대본 없는 자연스러운 말
Parakeet v3AAA−유럽 언어 25개 중 하나로 말할 때
Parakeet v2AA+B+가장 빠른 결과
Apple SpeechA+BB별도 모델 다운로드 없음. macOS가 먼저 언어 파일을 받을 수 있음

음성 명령과 정리

명령을 말하면 Tamka가 띄어쓰기를 바로잡아 기호를 입력합니다. 예를 들어 “call foo open paren bar close paren”은 call foo (bar)가 됩니다. 아래 표는 기본 명령 112개 중 10개를 보여 줍니다.

Settings › Text에서 군더더기 말 제거와 말더듬 정리를 켜거나 끄고, 숫자·가격·날짜를 아라비아 숫자로 쓰도록 설정하고(실험적 기능), 명령을 검색·추가·편집·제거할 수 있습니다. ⌘Z로 변경 사항을 취소하고, Restore Defaults…로 원래 목록을 복원합니다.

말하기결과말하기결과
“comma”,“new line”줄바꿈
“question mark”?“new paragraph”빈 줄
“open quote” … “close quote”" … "“open paren” … “close paren”( … )
“at sign”@“em dash”—
“percent sign”%“smiley face”:)
Settings의 Text 탭: 정리 옵션과 검색 가능한 음성 명령 표

설정

Settings › General에서는 단축키, 녹음 시간 제한, 시작 및 중단 사운드, 표시기 위치, 텍스트 붙여넣기와 클립보드 보관 여부, 로그인 시 실행, 마이크 및 손쉬운 사용 권한, 활동 로그를 설정합니다.

변경 사항은 바로 적용됩니다.

Settings의 General 탭: 단축키, 녹음, 표시기, 붙여넣기, 시작, 권한, 문제 해결

정확도와 속도

M5 Max를 탑재한 MacBook Pro에서, 사람이 검수한 녹취록이 있는 낭독, 회의, 실적 발표 공개 녹음 117개(32분)로 Parakeet Ultra와 Whisper large-v3-turbo를 비교했습니다.

측정 항목Whisper large-v3-turboTamka(Parakeet Ultra)
단어 오류율, 전체 녹음9.9%7.7%
단어 오류율, 회의 녹음 제외6.9%6.2%
메모리1.2–1.6GB약 0.5GB
50초 받아쓰기 후 대기 시간471ms170ms

회의 녹음을 제외하면 정확도 차이는 오차 범위 이내입니다. 전체 벤치마크에서는 모델 구성 11가지를 비교합니다. 자신의 목소리와 어휘로 모델을 비교하려면 eval/README.md를 참고하세요.

Tamka 받기

최신 릴리스에서 zip 파일을 다운로드하세요. Apple의 서명 및 공증을 받았습니다.

다운로드

요구 사항
Apple Silicon, macOS 26 이상
다른 버전
GitHub 릴리스

사용 시

음성 모델
Parakeet Ultra, 632MB, 한 번만 다운로드
메모리
Parakeet Ultra 사용 시 약 0.5GB
macOS 26이 필요한 이유
Apple Speech 엔진이 SpeechAnalyzer를 사용하기 때문

설치

  1. Tamka-macOS-arm64.zip을 다운로드하고 압축을 풉니다.
  2. Tamka를 응용 프로그램 폴더로 드래그한 다음 엽니다.

소스에서 빌드

Xcode 26 이상과 rustup으로 설치한 최신 안정 버전 Rust 툴체인이 필요합니다.

git clone https://github.com/piedol/tamka.git
cd tamka && scripts/bundle.sh --install

스크립트가 앱과 음성 엔진을 빌드하고 둘 다 서명한 다음, Tamka.app을 /Applications에 복사하고 엽니다. TAMKA_SIGN_IDENTITY가 설정되어 있으면 그것으로, 없으면 키체인의 첫 번째 Developer ID Application 인증서로 서명합니다. 둘 다 없으면 애드혹 서명을 사용하므로 빌드할 때마다 macOS가 권한을 다시 요청합니다.

Tamka를 처음 열면

  1. Settings › Models가 열립니다. Parakeet Ultra(632MB) 옆의 Download를 클릭합니다.
  2. Tamka가 텍스트를 붙여넣을 수 있도록 손쉬운 사용을 허용합니다. 허용하지 않으면 Tamka가 텍스트를 복사만 하고 붙여넣기는 직접 해야 합니다.
  3. 처음 받아쓰기할 때 마이크 접근을 허용합니다.

Tamka에는 Dock 아이콘이 없습니다. 로그인할 때 시작하려면 Settings › General에서 Launch Tamka at login을 켭니다. 제거하려면 README의 제거 안내를 따르세요.

개인정보 보호

음성 인식은 전적으로 Mac에서 처리됩니다.

  • Tamka는 모델을 다운로드할 때만 인터넷에 연결합니다. Parakeet 모델은 Hugging Face에서, Apple Speech의 언어 파일은 Apple에서 받습니다.
  • 마이크는 받아쓰는 동안에만 켜집니다.
  • Tamka는 Transcribe Last Recording Again을 위해 마지막 녹음을 ~/Library/Caches/Tamka/last.wav에 보관합니다. 새로 받아쓸 때마다 이 파일이 교체됩니다.
  • ~/Library/Logs/Tamka.log 로그에는 이벤트와 처리 시간만 기록되며, 말한 내용은 기록되지 않습니다.

자주 묻는 질문

Tamka는 무료 오픈 소스인가요?

네. Tamka는 무료로 다운로드하고 사용할 수 있으며, 소스 코드는 GNU General Public License v3.0 이상에 따라 GitHub에 공개되어 있습니다.

Tamka는 오프라인에서 작동하나요?

네. 음성 인식은 전적으로 Mac에서 처리됩니다. Tamka는 음성 모델을 다운로드할 때만 인터넷에 연결합니다. Parakeet 모델은 Hugging Face에서, Apple Speech의 언어 파일은 Apple에서 받습니다.

Tamka는 어떤 Mac을 지원하나요?

macOS 26 이상을 사용하는 Apple Silicon Mac을 지원합니다. Apple Speech 엔진은 macOS 26에서 새로 도입된 SpeechAnalyzer를 사용합니다.

Tamka는 얼마나 정확하고 빠른가요?

M5 Max를 탑재한 MacBook Pro에서 공개 녹음 117개로 측정한 결과, Parakeet Ultra는 단어의 7.7%를 잘못 인식했고(Whisper large-v3-turbo는 9.9%), 50초 분량의 받아쓰기가 끝난 후 170ms 만에 텍스트를 반환했습니다.

Tamka는 어떻게 설치하나요?

Tamka-macOS-arm64.zip을 다운로드해 압축을 풀고, Tamka를 응용 프로그램 폴더로 드래그한 다음 엽니다. 처음 실행할 때 Parakeet Ultra(632MB)를 다운로드하고 손쉬운 사용과 마이크 접근을 허용합니다.

Tamka는 어떻게 제거하나요?

Tamka를 종료하고 Tamka.app을 휴지통으로 옮긴 다음, ~/Library/Application Support/Tamka, ~/Library/Caches/Tamka, ~/Library/Logs/Tamka.log도 휴지통으로 옮깁니다. 다운로드한 모델은 ~/Library/Application Support/FluidAudio/Models에 있습니다.

라이선스

Tamka는 GNU General Public License v3.0 이상에 따른 자유 소프트웨어입니다. GitHub에서 버그 리포트와 풀 리퀘스트를 환영합니다.

업무를 포함해 어디에서나 사용할 수 있으며, 소스 코드를 읽고, 변경하고, 공유할 수 있습니다. 수정한 버전을 배포하는 경우 같은 라이선스로 소스 코드를 공개해야 합니다.

음성 런타임: FluidAudio(Apache-2.0). 모델: NVIDIA Parakeet(CC-BY-4.0), Moondream의 Parakeet Ultra, Fermion Research의 Phonon-2. 각 모델의 라이선스는 해당 모델 제작자가 정합니다.