맥에서 로컬 Whisper: 필요한 것, 드는 비용, 실행하는 방법
글쓴이 Ryleigh Newman · 게시일
로컬 Whisper란 OpenAI의 Whisper 음성 모델을 사용자의 Mac에서 직접 실행해, 오디오가 어딘가의 서버가 아니라 기기에서 텍스트가 되게 하는 것입니다. Mac에서 알아둘 엔진은 whisper.cpp이고 Apple Silicon을 최우선 지원 대상으로 다룹니다. 중요한 결정은 모델 파일입니다. 큰 모델일수록 더 잘 듣지만 디스크 공간과 메모리를 더 차지합니다.
여기서는 각 부분이 어떻게 맞물리는지, whisper.cpp 자체 수치로 모델 크기마다 드는 비용이 얼마인지, 직접 실행하는 명령, 그리고 YapToText가 어디에 들어가는지를 설명합니다. 저는 기본 그대로의 Whisper Large v3 Turbo (Q5) 파일로 whisper.cpp를 실행하는 무료 앱 YapToText를 만들었으므로, 그 부분은 이 점을 감안하고 읽어 주세요. Mac용 Whisper 앱이 있는지만 알고 싶다면 Whisper Mac 앱 페이지가 답합니다.
무료로 다운로드할 수 있습니다. 계정이 필요 없고 잠긴 기능도 없습니다. Apple Silicon이 탑재된 Mac과 macOS 14 이상이 필요합니다. 소스 코드는 GitHub에 있습니다.
다른 언어로 읽기: English, العربية, Čeština, Dansk, Deutsch, Ελληνικά, Español, Suomi, Français, עברית, हिन्दी, Magyar, Bahasa Indonesia, Italiano, 日本語, Norsk, Nederlands, Polski, Português, Română, Русский, Slovenčina, Svenska, ไทย, Türkçe, Українська, Tiếng Việt, 简体中文, 繁體中文
이 페이지의 내용: 12개 항목
단계
- GitHub에서 whisper.cpp 저장소를 클론하고 터미널에서 그 폴더를 엽니다.
- 프로젝트의 download-ggml-model.sh 스크립트로 large-v3-turbo-q5_0 같은 모델을 내려받습니다.
- README의 cmake 명령 두 개로 프로젝트를 CMake로 빌드합니다.
- ffmpeg 등으로 녹음을 16비트 WAV 파일로 변환합니다.
- 모델 파일과 WAV 파일로 whisper-cli를 실행하고 터미널에서 전사문을 읽습니다.
로컬 Whisper의 세 가지 구성 요소
로컬 Whisper는 세 가지 구성 요소로 이루어지고, 셋 모두 Mac에 있습니다. 모델은 파일이고, 엔진이 그것을 실행하며, 오디오는 기기를 벗어날 필요가 없습니다.
- 모델. Whisper는 OpenAI의 음성 인식 모델이고, OpenAI는 코드와 모델 가중치를 MIT 라이선스로 공개했습니다. 모델 파일을 한 번 내려받으면 그 파일이 듣는 일을 합니다.
- 엔진. whisper.cpp는 Whisper를 순수 C와 C++로 구현한 것이며 마찬가지로 MIT 라이선스입니다. README에는 Apple Silicon이 최우선 지원 대상이며 ARM NEON, Accelerate, Metal, Core ML로 최적화되어 있고, Apple Silicon에서는 추론이 Metal을 통해 GPU에서 완전히 실행된다고 나와 있습니다. OpenAI 자체 패키지는 대신 Python에서 Whisper를 실행합니다.
- 오디오. 녹음이나 마이크가 들어가면 텍스트가 나옵니다. 인터넷이 필요한 것은 처음에 모델 파일을 내려받을 때뿐입니다.
클라우드 서비스와 다른 점이 이것입니다. 전사하려고 업로드하는 것이 없습니다. 또 Mac이 일을 하므로, 고르는 모델이 그 일에 드는 메모리와 디스크 공간을 정한다는 뜻이기도 합니다.

디스크 공간과 메모리로 모델 고르기
whisper.cpp는 모델마다 디스크와 메모리를 얼마나 쓰는지 공개하고, OpenAI는 모델마다 매개변수가 몇 개인지 공개합니다. Turbo는 OpenAI가 만든 large-v3의 더 빠른 버전이고, 5비트 파일은 large의 디스크 공간의 약 5분의 1만 차지합니다.
2026년 10월 3일에 whisper.cpp README와 모델 목록, OpenAI의 Whisper README에서 확인했습니다.
| 모델 | 매개변수 (OpenAI) | 디스크 파일 (whisper.cpp) | 메모리 (whisper.cpp) |
|---|---|---|---|
| tiny | 39 M | 75 MiB | 약 273 MB |
| base | 74 M | 142 MiB | 약 388 MB |
| small | 244 M | 466 MiB | 약 852 MB |
| medium | 769 M | 1.5 GiB | 약 2.1 GB |
| large (v1, v2, v3) | 1550 M | 2.9 GiB | 약 3.9 GB |
| large-v3, 5비트 (q5_0) | 양자화된 large-v3 | 1.1 GiB | 목록에 없음 |
| large-v3-turbo | 809 M | 1.5 GiB | 목록에 없음 |
| large-v3-turbo, 5비트 (q5_0) | 양자화된 turbo | 547 MiB | 목록에 없음 |
MiB와 GiB는 1,024 단위로 세기 때문에, whisper.cpp 목록의 547 MiB turbo 파일이 YapToText에 574 MB로 표시되는 바로 그 파일입니다. 정직한 두 페이지가 같은 파일을 547과 574로 적어도 둘 다 맞는 이유입니다. whisper.cpp의 메모리 표는 원래의 다섯 가지 크기만 다루고, turbo와 양자화된 파일의 수치는 없습니다.

두 프로젝트에서 알아둘 점이 몇 가지 더 있습니다.
- 영어 전용 모델. tiny, base, small, medium에는 같은 크기의 .en 파일도 있고 영어만 듣습니다. OpenAI는 영어에서는 특히 tiny.en과 base.en이 더 잘하는 경향이 있고, small.en과 medium.en에서는 차이가 줄어든다고 합니다.
- 양자화된 모델. q5_0으로 끝나는 파일은 양자화된 것입니다. whisper.cpp는 양자화된 모델이 메모리와 디스크 공간을 덜 쓰고, 하드웨어에 따라 더 효율적으로 처리될 수 있다고 설명합니다.
- Turbo. OpenAI는 large-v3의 최적화된 버전으로 정확도 저하를 최소화하면서 더 빠르게 전사한다고 설명하고, large의 약 8배 속도로 평가합니다. 그 비율은 Mac이 아니라 A100에서 측정한 것이고, OpenAI는 turbo가 번역용으로 학습되지 않았다고 밝힙니다.
- 언어. OpenAI는 Whisper의 성능이 언어에 따라 크게 다르다고 밝힙니다.
- OpenAI의 메모리 열. OpenAI의 README는 자사 Python 패키지가 필요로 하는 VRAM을 대신 나열합니다. tiny와 base는 약 1 GB, turbo는 약 6 GB, large는 약 10 GB입니다. whisper.cpp의 수치가 아닙니다.
제가 YapToText에 5비트 turbo 파일을 고른 이유는, 제 받아쓰기에서는 전체 모델이 들은 것과 거의 똑같이 들으면서 메모리는 3분의 1만 쓰기 때문입니다. 이것은 한 사람의 받아쓰기이지 벤치마크가 아니므로, 정하기 전에 자신의 목소리로 두 가지 크기를 써 보세요.
whisper.cpp로 직접 Whisper 실행하기
whisper.cpp를 직접 실행하려면 터미널과, README의 명령이 전제하는 두 도구 Git과 CMake가 필요합니다. 아래는 README의 명령에 모델만 5비트 turbo 파일로 바꾼 것입니다. 얻는 것은 터미널에 나오는 오디오 파일의 전사문이지, 앱에 입력되는 글자가 아닙니다.
1단계: 코드와 모델 받기
터미널: whisper.cpp를 클론하고 5비트 turbo 모델을 내려받습니다.
git clone https://github.com/ggml-org/whisper.cpp.git
cd whisper.cpp
sh ./models/download-ggml-model.sh large-v3-turbo-q5_0결과: 프로젝트가 whisper.cpp 폴더에 들어가고, 스크립트가 ggml-large-v3-turbo-q5_0.bin을 Hugging Face에서 models 폴더로 내려받습니다. 더 작게 받으려면 base.en이나 small로 바꾸세요.
2단계: 빌드하고 샘플 전사하기
터미널: whisper-cli를 빌드한 다음, 프로젝트에 들어 있는 샘플 녹음에 실행합니다.
cmake -B build
cmake --build build -j --config Release
./build/bin/whisper-cli -m models/ggml-large-v3-turbo-q5_0.bin -f samples/jfk.wav결과: CMake가 프로젝트를 빌드하고, whisper-cli가 내려받은 모델로 샘플을 전사해 터미널에 텍스트를 출력합니다.
3단계: 내 오디오를 먼저 변환하기
README에는 whisper-cli가 현재 16비트 WAV 파일에서만 동작한다고 나와 있고, 그 밖의 파일을 변환하는 ffmpeg 명령도 나와 있습니다. ffmpeg는 따로 설치해야 합니다.
터미널: MP3를 whisper-cli가 읽는 WAV 형식으로 바꿉니다.
ffmpeg -i input.mp3 -ar 16000 -ac 1 -c:a pcm_s16le output.wav결과: ffmpeg가 output.wav를 16 kHz, 모노, 16비트 오디오로 쓰고, 이것을 whisper-cli의 -f 뒤에 넘깁니다.
또는 OpenAI의 Python 패키지 쓰기
터미널: Python으로 작업하고 싶다면 OpenAI 자체 패키지를 설치합니다.
pip install -U openai-whisper결과: pip가 whisper 명령을 설치합니다. OpenAI의 README에는 코드가 Python 3.8부터 3.11에서 동작하리라 예상하고, ffmpeg가 필요하며, 기본 모델은 turbo라고 나와 있습니다.
실시간 음성에는 whisper.cpp에 whisper-stream이 들어 있고, 반 초마다 마이크를 샘플링해 계속 전사합니다. SDL2가 필요하고 README는 이것을 단순한 예제라고 부릅니다. 글자를 Mail, Slack, 편집기로 가져가는 일은 앱이 더하는 부분입니다.
터미널 없이 YapToText에서 같은 모델 쓰기
YapToText는 터미널 창 없이 같은 엔진과 같은 파일을 실행합니다. Metal과 Accelerate로 앱에 내장된 whisper.cpp 사본과, App Store 다운로드에 들어 있는 ggml-large-v3-turbo-q5_0.bin입니다. SHA-256이 Hugging Face의 파일과 일치하므로, 별도로 조정하거나 다시 학습시킨 모델이 아니라 기본 그대로의 모델입니다. 저는 손으로 타이핑하기가 어려워서, Whisper가 터미널 창에 출력하는 대신 모든 앱에 입력해 주기를 바라며 이 앱을 만들었습니다. 스크립트가 내려받는 바로 그 파일입니다. 달라지는 것은 그 주변의 모든 것입니다.

앱이 모델 주변에 더하는 것은 다음과 같습니다.
- 돌려주는 메모리. Energy 페이지의 Keep models in memory가 받아쓰기 뒤에 모델이 얼마나 오래 불러와져 있을지를 정합니다. 기본은 사용 후 2분이고, Only while dictating부터 Until quit까지 고를 수 있습니다. 더 일찍 내리면 에너지와 메모리를 아끼고, 내린 뒤의 다음 받아쓰기는 몇 초 더 걸립니다.
- macOS를 위한 여유. macOS의 메모리가 부족해지면 YapToText는 불러온 모델을 즉시 내리고, 다시 불러오기 전에 5분을 기다립니다.
- 배터리에서는 더 가벼운 모델. 기본으로 꺼져 있는 Switch models with the power source는 받아쓰기 모델과 다듬기 모델 각각에 전원 연결 시와 배터리 사용 시의 선택을 줍니다.
- 내 파일. AI Models 페이지의 Your own models 아래에서 Add Model은 어떤 whisper.cpp GGML .bin 파일이든 받으므로, 스크립트로 내려받은 모델도 쓸 수 있습니다. 앱은 파일을 읽어 무엇인지 판별하고 그 밖의 것은 거부합니다.
- 내 Mac의 수치. Energy 페이지의 This Mac 카드는 칩과 메모리를 보여 주고, 위의 표와 견줘 볼 수치가 이것입니다.
AI Models 페이지의 Dictation Model Library에는 Tiny부터 Large v3까지 Whisper 모델이 열 개 더 있고, 각각 앱이 보여 주는 크기가 있습니다. AI Models 가이드에 목록이 있고, 메모리 설정은 Energy 가이드에서 설명합니다. App Store 다운로드가 약 2.9 GB인 것은 앱의 두 모델이 모두 들어 있기 때문입니다. Homebrew 빌드는 약 12 MB이고 첫 받아쓰기 전에 음성 인식 모델을 내려받아야 합니다.
로컬 Whisper가 느리거나 잘못 들을 때
더 큰 모델을 내려받기 전에 비용이 적게 드는 해결책부터 해 보세요. 모델을 바꾸기 전에 마이크와 단어를 먼저 고치세요.
- 첫 실행을 기다립니다. 모델은 전사하기 전에 불러와져야 합니다. YapToText에서는 실행 직후 첫 받아쓰기에 잠시 걸립니다. whisper.cpp를 Core ML로 빌드했다면, README에 따르면 기기에서의 첫 실행은 Neural Engine 서비스가 모델을 컴파일하는 동안 느립니다.
- 말하는 언어를 설정합니다. YapToText의 AI Models 페이지에서 Language 선택은 Mac의 시스템 언어로 시작하고, Whisper가 쓸 수 없는 언어는 자동 감지로 돌아갑니다. 29개 언어는 모두 언어 페이지에 있습니다.
- 마이크를 고칩니다. 블루투스 마이크는 전화 수준의 음질이어서 Mac 자체 마이크가 더 잘 듣습니다. YapToText에서는 메뉴 막대 패널의 Input 선택에서 고르세요.
- 내 단어를 알려 줍니다. YapToText의 Dictionaries 페이지는 입력된 글자를 고칠 뿐 아니라 Whisper에게 이름과 용어를 미리 알려 줍니다. 방법은 사전 가이드에 있습니다.
- 영어에는 영어 전용 모델을 씁니다. 메모리가 빠듯하고 영어만 말한다면, OpenAI에 따르면 .en 버전이 특히 tiny와 base에서 더 잘하는 경향이 있습니다.
- 모델 크기를 바꿉니다. 잘못 듣고 메모리가 허락한다면 더 큰 쪽으로, 느리다면 더 작은 쪽으로 가세요. YapToText에서는 AI Models 페이지의 별점이 그 맞바꿈을 보여 주고, History의 받아쓰기마다 정지부터 텍스트까지의 시간이 나옵니다.

로컬 Whisper가 바꾸지 않는 것
Whisper를 로컬로 실행하면 일이 Mac으로 옮겨질 뿐, 그 밖의 것은 옮겨지지 않습니다. 로컬은 음성이 가는 곳을 바꾸지, 얼마나 잘 들리는지를 바꾸지 않습니다.
- 실수. 얼마나 잘 듣는지는 어디에서 실행하든 모델이 정하므로, 잘못 들은 이름에는 위치를 바꾸는 것이 아니라 사전 항목이나 더 나은 마이크가 필요합니다.
- 번역. OpenAI는 turbo가 번역용으로 학습되지 않았다고 밝히고, YapToText는 Whisper에게 전사만 시키고 번역은 시키지 않습니다.
- 다운로드 한 번. 로컬 모델도 한 번은 도착해야 합니다. whisper.cpp의 스크립트는 Hugging Face에서 받아오고, YapToText의 App Store 빌드에는 들어 있으며, Homebrew 빌드는 AI Models 페이지에서 받아옵니다.
- Intel Mac. whisper.cpp는 Intel과 Arm Mac을 지원 대상으로 나열합니다. YapToText는 Apple Silicon과 macOS 14 이상이 필요하고, Intel Mac에서 되는지는 주장하지 않습니다.
- 정확도 수치. 어떤 모델에 대해서도 정확도 백분율을 게시하지 않습니다. 별점과 직접 쌓은 History가 기준입니다.
설정이 정말 로컬인지 확인하려면 오프라인 받아쓰기 페이지에 1분 테스트가 있습니다. Wi-Fi를 끄고 받아쓰기를 해 보세요.
짧게 정리
- 로컬 Whisper. Mac에 있는 모델 파일과 엔진이고, 업로드하는 것은 없습니다.
- 모델. whisper.cpp 목록에서 547 MiB인 5비트 turbo 파일이 YapToText가 넣어 배포하는 파일입니다.
- 직접 하기. whisper.cpp를 클론하고, 모델을 내려받고, CMake로 빌드하고, 16비트 WAV 파일에 whisper-cli를 실행합니다.
- 또는 터미널 건너뛰기. YapToText는 같은 파일을 실행하고 어떤 앱에든 입력합니다. 무료입니다.
Mac의 메모리로 모델을 고르고, 그다음 자신의 목소리로 고르세요. 여기 내용이 실제 화면과 다르다면 GitHub에 이슈를 남겨 주세요(영어). 모두 읽습니다.
무료로 다운로드할 수 있습니다. 계정이 필요 없고 잠긴 기능도 없습니다. Apple Silicon이 탑재된 Mac과 macOS 14 이상이 필요합니다. 소스 코드는 GitHub에 있습니다.
가이드
다른 가이드(영어)
출처
- https://github.com/ggml-org/whisper.cpp (확인일 2026년 10월 3일)
- https://github.com/ggml-org/whisper.cpp/blob/master/models/README.md (확인일 2026년 10월 3일)
- https://github.com/openai/whisper (확인일 2026년 10월 3일)
- https://huggingface.co/ggerganov/whisper.cpp/blob/main/ggml-large-v3-turbo-q5_0.bin (확인일 2026년 10월 3일)
- https://github.com/ryleighnewman/YapToText (확인일 2026년 10월 3일)
- https://apps.apple.com/us/app/yaptotext/id6786382289 (확인일 2026년 10월 3일)
자주 묻는 질문
맥에서 Whisper를 로컬로 실행하려면 어떻게 하나요?
whisper.cpp를 쓰세요. 저장소를 클론하고, download-ggml-model.sh 스크립트로 모델을 내려받고, CMake로 빌드한 다음, 16비트 WAV 파일에 whisper-cli를 실행합니다. 또는 그것을 담은 앱을 설치하세요. YapToText는 설정 없이 Whisper Large v3 Turbo를 실행합니다.
Whisper는 메모리가 얼마나 필요한가요?
모델에 따라 다릅니다. whisper.cpp는 tiny에 약 273 MB, small에 852 MB, medium에 2.1 GB, large에 3.9 GB를 나열하고, 양자화된 모델은 더 적게 쓴다고 설명합니다. turbo의 메모리 수치는 없습니다.
가장 좋은 로컬 Whisper 모델은 무엇인가요?
저는 Large v3 Turbo부터 시작하겠고, 5비트 파일이 YapToText가 넣어 배포하는 것으로 whisper.cpp 목록에서 547 MiB입니다. 메모리가 빠듯하면 small이나 base가 훨씬 적게 쓰고, OpenAI에 따르면 가장 작은 크기에서는 영어 전용 버전이 영어에서 더 잘하는 경향이 있습니다.
Whisper Large v3 Turbo 모델은 얼마나 큰가요?
whisper.cpp 모델 목록에서는 1.5 GiB이고, 5비트 q5_0 파일은 547 MiB이며 십진 단위로 세면 574 MB입니다. OpenAI는 turbo의 매개변수를 809 M(백만 개)으로 나열합니다.
로컬 Whisper에 인터넷이 필요한가요?
모델을 한 번 내려받을 때만 필요합니다. 그 뒤에는 whisper.cpp와 YapToText가 연결 없이 전사하고, YapToText의 App Store 빌드에는 모델이 들어 있어서 그 다운로드도 건너뜁니다.
whisper.cpp 모델을 YapToText에서 쓸 수 있나요?
네. AI Models 페이지의 Your own models 아래에서 Add Model이 어떤 whisper.cpp GGML .bin 파일이든 받고, 앱이 파일 자체로 무엇인지 판별합니다.