Web Analytics Made Easy - Statcounter

생각나는대로

16GB MacBook Pro M3로 Open-AI whisper 어디까지 가능?

sleepy_wug 2026. 6. 2. 13:14

나의 daily driver는 2023년에 나온 MacBook Pro M3다. 

애플에선 그렇게 그렇게 8GB면 충분하다느니 맥의 8GB는 윈도우의 16GB이상이라느니 이런 소리를 했지만, 나는 해볼게 있어서 (비켜봐 해볼게 있어) 16GB로 구입했다. 그 해볼거란 건, 별거 아니었고 이거였다↓↓ [링크].

 

음운론 연구자가 Mac에서 fairseq 쓰려고 도전

0. 이 글은 무슨 글? 이 글은 이론 음운론 연구자가 음운론적 논증을 하기 위한 과정에서 fairseq에 입문하는 과정을 묘사한다. 이 글의 교훈을 간단히 요약하자면, fairseq 모델 train하는 건 Google colab

linguisting.tistory.com

 

사용할 시스템:

  • Macbook Pro 2023 / M3 (base model) / 16GB RAM 
 

MacBook Pro (14-inch, M3 Pro or M3 Max, Nov 2023) - Tech Specs - Apple Support (CA)

MacBook Pro (14-inch, M3 Pro or M3 Max, Nov 2023) - Tech Specs

support.apple.com

 

 

출시 이후 시간이 3년 지났다. 나의 MBP 여전히 현역인가? 알기위해 Open AI의 언어 받아쓰기 모델 Whisper를 돌려보았다. 음성 녹음을 주면 그걸 받아쓰기한다. 

 

설치는 단 세줄 (물론 아나콘다🐍 는 별도로 준비하셔야 함).

conda create -n testing_whisper python=3.11 -y
conda activate testing_whisper
pip install openai-whisper

 

자 이제 한번 돌려보자. 

이 블로그를 열독하는 사람이라면 내가 어떤 음성파일을 사용할지 이미 예상할지도 모르겠다.

"수학처럼 딱딱" 음성이다.

 

 

프랏에서는 아래와 같이 생겼다.

 

이걸 그냥 음성파일만 가져다가 whisper한테 먹여보자. 얼마나 한국말을 잘하는지 보자고!ㅋㅋ

음성파일은 아래에 제공한다.

tak_tak_long.wav
0.42MB

 

tak_tak_long.wav 라고 이름을 안 바꿨다고 가정하고, whisper에서 이걸 '받아쓰기' 시키는 마법주문 커맨드는 아래와 같다.

whisper tak_tak_long --model [모델크기] --language ko

모델크기 파라미터는 base, small, medium, large, large-v3 등이다. 뒤로 갈수록 메모리 자원을 많이 요구한다. 

 

과연 MBP는 base, small, medium, large 어디까지 해낼(?) 수 있을까? 그리고 그 결과는 어떻게 나올까?

 

그 결과를 날것으로 아래에 공유한다.

 

(testing_whisper) [redacted] test % whisper tak_tak_long.wav --model base --language ko

100%|███████████████████████████████████████| 139M/139M [00:12<00:00, 11.5MiB/s]

/Users/[redacted]/miniconda3/envs/testing_whisper/lib/python3.11/site-packages/whisper/transcribe.py:132: UserWarning: FP16 is not supported on CPU; using FP32 instead

  warnings.warn("FP16 is not supported on CPU; using FP32 instead")

[00:00.000 --> 00:01.680]  음은 나온 수업을 들었는데

[00:01.680 --> 00:02.920]  꼭 수학처럼

[00:02.920 --> 00:03.920]  그게

[00:03.920 --> 00:05.880]  딱딱 떨어지는 거예요

[00:07.360 --> 00:10.000]  그래서 거기서 흥미를 느낀 것 같아요

(testing_whisper) [redacted] test % whisper tak_tak_long.wav --model small --language ko

100%|███████████████████████████████████████| 461M/461M [00:42<00:00, 11.5MiB/s]

/Users/[redacted]/miniconda3/envs/testing_whisper/lib/python3.11/site-packages/whisper/transcribe.py:132: UserWarning: FP16 is not supported on CPU; using FP32 instead

  warnings.warn("FP16 is not supported on CPU; using FP32 instead")

[00:00.000 --> 00:07.320]  음은 넘은 수업을 들었는데 꼭 수학처럼 그게 딱딱 떨어지는 거예요.

[00:07.320 --> 00:11.560]  그래서 거기서 흥미를 느낀 것 같아요.

(testing_whisper) [redacted] test % whisper tak_tak_long.wav --model medium --language ko

100%|█████████████████████████████████████| 1.42G/1.42G [02:13<00:00, 11.4MiB/s]

/Users/[redacted]/miniconda3/envs/testing_whisper/lib/python3.11/site-packages/whisper/transcribe.py:132: UserWarning: FP16 is not supported on CPU; using FP32 instead

  warnings.warn("FP16 is not supported on CPU; using FP32 instead")

[00:00.000 --> 00:10.000]  음은로운 수업을 들었는데 꼭 수학처럼 그게 딱딱 떨어지는 거예요. 그래서 거기서 흥미를 느낀 것 같아요.

(testing_whisper) [redacted] test % whisper tak_tak_long.wav --model large --language ko

100%|█████████████████████████████████████| 2.88G/2.88G [04:46<00:00, 10.8MiB/s]

/Users/[redacted]/miniconda3/envs/testing_whisper/lib/python3.11/site-packages/whisper/transcribe.py:132: UserWarning: FP16 is not supported on CPU; using FP32 instead

  warnings.warn("FP16 is not supported on CPU; using FP32 instead")

[00:00.000 --> 00:09.980]  의문넘은 수업을 들었는데 꼭 수학처럼 그게 딱딱 떨어지는 거예요 그래서 거기서 흥미를 느낀 것 같아요

 

해석:

아주 시시하게도 2023년 산 MacBook Pro M3에서는 whisper가 large 모델까지 너무나 가볍게 돌아갔다. 심지어 나의 스킬 이슈로 GPU 안쓰고 돌렸는데도 무리가 없었다. 메모리도 large model 쓸때 그냥 쬐끔 들썩(?) 했을 따름이다.

 

퀄리티는 "음운론"이라는 빈도 낮은 어휘만 제외하고는 너무나 훌륭하다. 각 모델의 받아쓰기 결과를 아래에 요약한다.

참고로 정답은 "음운론 수업을 들었는데 꼭 수학처럼 그게 딱딱 떨어지는 거예요. 그래서 거기서 흥미를 느낀 것 같아요."

모델명 받아쓰기 결과
base 음은 나온 수업을 들었는데 꼭 수학처럼 그게 딱딱 떨어지는 거예요 그래서 거기서 흥미를 느낀 것 같아요
small 음은 넘은 수업을 들었는데 꼭 수학처럼 그게 딱딱 떨어지는 거예요. 그래서 거기서 흥미를 느낀 것 같아요.
medium 음은로운 수업을 들었는데 꼭 수학처럼 그게 딱딱 떨어지는 거예요. 그래서 거기서 흥미를 느낀 것 같아요.
large 의문넘은 수업을 들었는데 꼭 수학처럼 그게 딱딱 떨어지는 거예요 그래서 거기서 흥미를 느낀 것 같아요

 

명확하게 드러나는 건, 이 task 자체가 모델한테 너무 쉬운 것이었고 (이 여성화자가 상당히 표준적인 한국어를 또박또박 구사했다), 유일하게 어려웠던 부분은 "음운론 수업" 정도였다는 것이다.

 

large는 모델 크기만 3GB가까이로 엄청 크면서 퀄리티는 medium보다 못한 것같다. 물론 이 음성파일 한정.

 

근데 사실 '음운론'이라는 단어를 모르는 한국어 화자한테 받아쓰기를 시켰을 때는 large model처럼 할 것 같기도 하다. 아무래도 모델 사이즈 차이는 음향모델 차이라기보다는 음운론 외적 language modeling에 달려있다. 애매한 "음운론" 부분이 어떻게 처리되었느냐에 따라, base model과 small model은 한국어야 어찌됐든 음향 그자체를 충실히 받아쓰기하는 모습을 보였고, medium model, 특히 large model에서는 음향 그자체의 묘사에서는 멀어지더라도 한국어 문장 그자체로서 말이 되는 문장을 만드는 모습을 보여준다.

 

다시 말해서 base model의 아웃풋인 '음은 나온 수업'은 음향신호에는 가까웠을 수 있어도 한국어 문장 그자체로서는 말이 안 된다.

small model이 내놓은 '음은 넘은 수업'은 조금 말이 된다. 어떤 수업이 있었는데 그 수업이 다른 건 못 넘었지만 '음'은 넘었다. (음이란게 대체 뭔진 애매하지만)

large model에서, '의문넘은 수업'이란 어떤 수업인데 그 수업이 의문을 넘어버린 것일...까?ㅋㅋㅋㅋ

 

whisper와 부모가 같은 ChatGPT한테 물어보니 Apple Silicon에서 GPU를 활용해 whisper를 돌리려면 mlx-whisperwhisper.cpp 쪽을 해보란다. 나중에 기회가 되면 해봐야겠다. 물론 동일한 모델이기 때문에 속도 차이 말고 품질에서 차이는 없을 것이다.

 

 

 


이어서 어떤 글을 읽을 건가요?

 


  • 글이 유익했다면 후원해주세요 (최소100원). 투네이션 || BuyMeACoffee (해외카드필요)
  • 아래 댓글창이 열려있습니다. 로그인 없이도 댓글 다실 수 있습니다.
  • 글과 관련된 것, 혹은 글을 읽고 궁금한 것이라면 무엇이든 댓글을 달아주세요.
  • 반박이나 오류 수정을 특히 환영합니다.
  • 로그인 없이 비밀글을 다시면, 거기에 답변이 달려도 보실 수 없습니다. 답변을 받기 원하시는 이메일 주소 등을 비밀글로 남겨주시면 이메일로 답변드리겠습니다.