Whisper chạy trên máy Mac: cần gì, tốn bao nhiêu và cách chạy

Chạy Whisper trên máy nghĩa là chạy mô hình giọng nói Whisper của OpenAI ngay trên máy Mac của bạn, để âm thanh của bạn thành chữ trên chính máy chứ không phải trên một máy chủ nào đó. Trên máy Mac, công cụ cần biết là whisper.cpp, xem chip Apple là đối tượng được ưu tiên hàng đầu, và quyết định quan trọng là tệp mô hình: mô hình càng lớn càng nghe tốt hơn và tốn nhiều dung lượng đĩa cùng bộ nhớ hơn.

Tôi trình bày các phần khớp với nhau thế nào, mỗi cỡ mô hình tốn bao nhiêu theo số liệu của chính whisper.cpp, các lệnh để tự chạy, và YapToText nằm ở đâu. Tôi phát triển YapToText, một ứng dụng miễn phí chạy whisper.cpp với tệp Whisper Large v3 Turbo (Q5) nguyên bản, nên hãy cân nhắc phần đó với điều ấy trong đầu. Nếu bạn chỉ muốn biết có ứng dụng Whisper nào cho Mac không, trang ứng dụng Whisper cho Mac trả lời điều đó.

Tải YapToText trên Mac App StoreTải về miễn phí. Không cần tài khoản, không có tính năng bị khóa, dành cho macOS 14 trở lên trên máy Mac có chip Apple. Mã nguồn trên GitHub.

Trong trang này: 12 phần
  1. Các bước
  2. Hiểu ba phần của Whisper chạy trên máy
  3. Chọn mô hình theo dung lượng đĩa và bộ nhớ
  4. Tự chạy Whisper bằng whisper.cpp
    1. Bước 1: Lấy mã nguồn và một mô hình
    2. Bước 2: Biên dịch và chép lời tệp mẫu
    3. Bước 3: Chuyển đổi âm thanh của riêng bạn trước
    4. Hoặc dùng gói Python của OpenAI
  5. Dùng cùng mô hình đó trong YapToText mà không cần Terminal
  6. Nếu Whisper chạy trên máy chậm hoặc nghe sai
  7. Những điều Whisper chạy trên máy không thay đổi
  8. Tóm tắt
  9. Hướng dẫn
  10. Hướng dẫn khác, bằng tiếng Anh
  11. Nguồn
  12. Câu hỏi

Các bước

  1. Sao chép kho whisper.cpp từ GitHub và mở thư mục của nó trong Terminal.
  2. Tải một mô hình bằng tập lệnh download-ggml-model.sh của dự án, chẳng hạn large-v3-turbo-q5_0.
  3. Biên dịch dự án bằng CMake, dùng hai lệnh cmake trong README của nó.
  4. Chuyển bản ghi của bạn sang tệp WAV 16-bit, chẳng hạn bằng ffmpeg.
  5. Chạy whisper-cli với tệp mô hình và tệp WAV của bạn, rồi đọc bản chép lời trong Terminal.

Hiểu ba phần của Whisper chạy trên máy

Whisper chạy trên máy có ba phần, và cả ba đều nằm trên máy Mac của bạn. Mô hình là một tệp, công cụ chạy nó, và âm thanh của bạn không bao giờ phải rời khỏi máy.

  • Mô hình. Whisper là mô hình nhận dạng giọng nói của OpenAI, và OpenAI đã phát hành mã nguồn cùng trọng số mô hình theo giấy phép MIT. Bạn tải một tệp mô hình một lần, và tệp đó làm việc nghe.
  • Công cụ. whisper.cpp là bản triển khai Whisper bằng C và C++ thuần, cũng theo giấy phép MIT. README của nó gọi chip Apple là đối tượng được ưu tiên hàng đầu, được tối ưu qua ARM NEON, Accelerate, Metal và Core ML, và nói rằng trên chip Apple, việc suy luận chạy hoàn toàn trên GPU qua Metal. Gói của chính OpenAI thì chạy Whisper từ Python.
  • Âm thanh của bạn. Một bản ghi hoặc micrô của bạn đi vào, và chữ đi ra. Internet chỉ cần để tải tệp mô hình lúc ban đầu.

Đó là điều tách nó khỏi một dịch vụ đám mây: không có gì được tải lên để chép lời. Nó cũng có nghĩa là máy Mac của bạn làm việc, nên mô hình bạn chọn quyết định công việc đó tốn bao nhiêu bộ nhớ và dung lượng đĩa.

Poster trên App Store với dòng chữ Nothing leaves your Mac, phía trên là trang AI Models của YapToText, cả hai mô hình đều được đánh dấu Included.
Hình 1. Mô hình và công cụ trên cùng một dòng trong YapToText: Whisper Large v3 Turbo (Q5), của OpenAI, do whisper.cpp chạy, 574 MB và được đánh dấu Included.

Chọn mô hình theo dung lượng đĩa và bộ nhớ

whisper.cpp công bố mỗi mô hình tốn bao nhiêu trên đĩa và trong bộ nhớ, và OpenAI công bố mỗi mô hình có bao nhiêu tham số. Turbo là phiên bản nhanh hơn của large-v3 do OpenAI làm ra, và tệp 5-bit của nó chiếm khoảng một phần năm dung lượng đĩa của large.

Kiểm tra ngày 3 tháng 10 năm 2026, trong README và danh sách mô hình của whisper.cpp cùng README Whisper của OpenAI.

Mô hìnhTham số (OpenAI)Tệp trên đĩa (whisper.cpp)Bộ nhớ (whisper.cpp)
tiny39 M75 MiBKhoảng 273 MB
base74 M142 MiBKhoảng 388 MB
small244 M466 MiBKhoảng 852 MB
medium769 M1,5 GiBKhoảng 2,1 GB
large (v1, v2 hoặc v3)1550 M2,9 GiBKhoảng 3,9 GB
large-v3, 5-bit (q5_0)large-v3 đã lượng tử hóa1,1 GiBKhông được liệt kê
large-v3-turbo809 M1,5 GiBKhông được liệt kê
large-v3-turbo, 5-bit (q5_0)turbo đã lượng tử hóa547 MiBKhông được liệt kê

MiB và GiB đếm theo bước 1.024, nên tệp turbo 547 MiB trong danh sách của whisper.cpp chính là tệp mà YapToText hiển thị là 574 MB. Đó là cách hai trang trung thực có thể ghi cùng một tệp là 547 và 574 mà cả hai đều đúng. Bảng bộ nhớ của whisper.cpp bao gồm năm cỡ gốc và không đưa con số nào cho turbo hay cho các tệp đã lượng tử hóa.

Trang AI Models trong YapToText: Whisper Large v3 Turbo (Q5) và Phi-3.5 Mini Instruct được đánh dấu Included, thư viện mô hình ở bên dưới.
Hình 2. YapToText hiển thị dung lượng theo MB, nên tệp turbo mà whisper.cpp liệt kê là 547 MiB hiện ra là 574 MB ở đây, với các mô hình Whisper khác được liệt kê bên dưới nó.

Thêm vài ghi chú từ hai dự án:

  • Mô hình chỉ có tiếng Anh. tiny, base, small và medium còn có bản tệp .en cùng dung lượng chỉ nghe được tiếng Anh. OpenAI nói chúng có xu hướng làm tốt hơn cho tiếng Anh, nhất là tiny.en và base.en, và sự khác biệt thu hẹp với small.en và medium.en.
  • Mô hình lượng tử hóa. Các tệp kết thúc bằng q5_0 là đã lượng tử hóa. whisper.cpp nói các mô hình lượng tử hóa cần ít bộ nhớ và dung lượng đĩa hơn và, tùy phần cứng, có thể được xử lý hiệu quả hơn.
  • Turbo. OpenAI gọi nó là phiên bản tối ưu của large-v3 với chép lời nhanh hơn và độ chính xác giảm không đáng kể, và xếp nó ở tốc độ khoảng 8 lần so với large. Tỷ lệ đó được đo trên A100, không phải trên máy Mac, và OpenAI nói turbo không được huấn luyện để dịch.
  • Ngôn ngữ. OpenAI nói hiệu suất của Whisper thay đổi rất nhiều tùy ngôn ngữ.
  • Cột bộ nhớ của OpenAI. README của OpenAI thay vào đó liệt kê VRAM cần cho gói Python của họ: khoảng 1 GB cho tiny và base, khoảng 6 GB cho turbo và khoảng 10 GB cho large. Đó không phải là số liệu của whisper.cpp.

Tôi chọn tệp turbo 5-bit cho YapToText vì, với các lần đọc chính tả của chính tôi, nó nghe gần như đúng những gì mô hình đầy đủ nghe được, với một phần ba bộ nhớ. Đó là các lần đọc chính tả của một người, không phải một bài đo chuẩn, nên hãy thử hai cỡ trên giọng của chính bạn trước khi quyết định.

Tự chạy Whisper bằng whisper.cpp

Tự chạy whisper.cpp cần Terminal và hai công cụ mà các lệnh trong README của nó giả định, Git và CMake. Đây là các lệnh của chính README, với mô hình được đổi sang tệp turbo 5-bit. Thứ bạn nhận được là bản chép lời của một tệp âm thanh trong Terminal, không phải chữ được gõ vào các ứng dụng của bạn.

Bước 1: Lấy mã nguồn và một mô hình

Terminal: Sao chép whisper.cpp và tải mô hình turbo 5-bit.

git clone https://github.com/ggml-org/whisper.cpp.git
cd whisper.cpp
sh ./models/download-ggml-model.sh large-v3-turbo-q5_0

Điều xảy ra: Dự án nằm vào một thư mục whisper.cpp, và tập lệnh tải ggml-large-v3-turbo-q5_0.bin từ Hugging Face vào thư mục models của nó. Hãy đổi sang base.en hoặc small để tải ít hơn.

Bước 2: Biên dịch và chép lời tệp mẫu

Terminal: Biên dịch whisper-cli, rồi chạy nó trên bản ghi mẫu đi kèm dự án.

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

Điều xảy ra: CMake biên dịch dự án, và whisper-cli chép lời tệp mẫu bằng mô hình bạn đã tải rồi in chữ trong Terminal.

Bước 3: Chuyển đổi âm thanh của riêng bạn trước

README nói whisper-cli hiện chỉ chạy với tệp WAV 16-bit, và đưa một lệnh ffmpeg để chuyển đổi mọi thứ khác. ffmpeg là một phần cài đặt riêng.

Terminal: Biến một tệp MP3 thành định dạng WAV mà whisper-cli đọc được.

ffmpeg -i input.mp3 -ar 16000 -ac 1 -c:a pcm_s16le output.wav

Điều xảy ra: ffmpeg ghi output.wav thành âm thanh 16 kHz, đơn âm, 16-bit, mà sau đó bạn đưa cho whisper-cli sau -f.

Hoặc dùng gói Python của OpenAI

Terminal: Cài gói của chính OpenAI, nếu bạn thích làm việc trong Python hơn.

pip install -U openai-whisper

Điều xảy ra: pip cài lệnh whisper. README của OpenAI nói mã được kỳ vọng hoạt động với Python 3.8 đến 3.11, nó cần ffmpeg, và mô hình mặc định của nó là turbo.

Với giọng nói trực tiếp, whisper.cpp có whisper-stream, lấy mẫu micrô của bạn mỗi nửa giây và chép lời liên tục. Nó cần SDL2, và README gọi nó là một ví dụ sơ khai. Đưa chữ vào Mail, Slack hay trình soạn thảo của bạn là phần mà một ứng dụng thêm vào.

Dùng cùng mô hình đó trong YapToText mà không cần Terminal

YapToText chạy cùng công cụ và cùng tệp, không cần cửa sổ Terminal: một bản whisper.cpp được tích hợp trong ứng dụng với Metal và Accelerate, và ggml-large-v3-turbo-q5_0.bin nằm trong bản tải từ App Store. SHA-256 của nó khớp với tệp trên Hugging Face, nên đó là mô hình nguyên bản, không phải bản tinh chỉnh hay huấn luyện lại. Tôi phát triển ứng dụng vì tôi gặp khó khăn khi gõ bằng tay, và tôi muốn Whisper gõ chữ vào mọi ứng dụng thay vì in ra trong cửa sổ Terminal. Nó là tệp mà tập lệnh tải về. Điều thay đổi là mọi thứ xung quanh nó.

Poster trên App Store với dòng chữ Yap it. Bam. It's typed. phía trên là cửa sổ Home của YapToText và ba kiểu bố cục bảng nổi.
Hình 3. Cùng tệp Whisper không cần Terminal: chữ hiện dần trong bảng nổi khi bạn nói và vào vị trí con trỏ trong ứng dụng nào đang ở phía trước.

Đây là những gì ứng dụng thêm quanh mô hình:

  • Bộ nhớ nó trả lại. Ở trang Energy, Keep models in memory quyết định một mô hình ở lại trong bộ nhớ bao lâu sau một lần đọc chính tả: mặc định là 2 minutes after use, với các lựa chọn từ Only while dictating đến Until quit. Gỡ sớm hơn tiết kiệm năng lượng và bộ nhớ, và lần đọc chính tả sau một lần gỡ mất thêm vài giây.
  • Chỗ cho macOS. Khi macOS thiếu bộ nhớ, YapToText gỡ ngay các mô hình đang nạp và chờ năm phút trước khi nạp lại.
  • Mô hình nhẹ hơn khi dùng pin. Switch models with the power source, mặc định tắt, cho mô hình đọc chính tả và mô hình chỉnh sửa mỗi loại một lựa chọn khi cắm điện và một lựa chọn khi dùng pin.
  • Tệp của riêng bạn. Dưới Your own models ở trang AI Models, Add Model nhận mọi tệp whisper.cpp GGML .bin, nên một mô hình bạn tải bằng tập lệnh cũng dùng được. Ứng dụng đọc tệp để biết nó là gì và từ chối mọi thứ khác.
  • Số liệu máy Mac của bạn. Thẻ This Mac ở trang Energy hiển thị chip và bộ nhớ của bạn, là con số để đặt cạnh bảng ở trên.

Dictation Model Library ở trang AI Models có thêm mười mô hình Whisper, từ Tiny đến Large v3, mỗi mô hình kèm dung lượng mà ứng dụng hiển thị. Hướng dẫn mô hình AI liệt kê chúng, và hướng dẫn năng lượng giải thích các cài đặt bộ nhớ. Bản tải từ App Store nặng khoảng 2,9 GB vì cả hai mô hình của ứng dụng đều nằm trong đó. Bản Homebrew nặng khoảng 12 MB và cần tải một mô hình giọng nói trước lần đọc chính tả đầu tiên.

Nếu Whisper chạy trên máy chậm hoặc nghe sai

Hãy bắt đầu với những cách sửa rẻ trước khi tải một mô hình lớn hơn. Sửa micrô và các từ trước khi đổi mô hình.

  1. Chờ qua lần chạy đầu tiên. Một mô hình phải được nạp trước khi chép lời. Trong YapToText, lần đọc chính tả đầu tiên sau khi mở ứng dụng mất một lúc. Nếu bạn biên dịch whisper.cpp với Core ML, README của nó nói lần chạy đầu tiên trên một thiết bị rất chậm trong lúc dịch vụ Neural Engine biên dịch mô hình.
  2. Đặt ngôn ngữ bạn nói. Bộ chọn Language của YapToText ở trang AI Models bắt đầu ở ngôn ngữ hệ thống của máy Mac, và một ngôn ngữ mà Whisper không dùng được sẽ quay về tự động phát hiện. Trang ngôn ngữ liệt kê cả 29 ngôn ngữ.
  3. Sửa micrô. Micrô Bluetooth có chất lượng như điện thoại, nên micrô của chính máy Mac nghe tốt hơn. Trong YapToText, hãy chọn nó ở bộ chọn Input của bảng thanh menu.
  4. Dạy nó các từ của bạn. Trang Dictionaries của YapToText mồi cho Whisper bằng tên và thuật ngữ của bạn, không chỉ sửa những gì nó gõ. Hướng dẫn từ điển chỉ cách làm.
  5. Dùng mô hình chỉ có tiếng Anh cho tiếng Anh. Nếu bộ nhớ eo hẹp và bạn chỉ nói tiếng Anh, OpenAI nói các bản .en có xu hướng làm tốt hơn, nhất là ở tiny và base.
  6. Đổi cỡ mô hình. Chọn lớn hơn nếu nó nghe sai và bộ nhớ của bạn cho phép, hoặc nhỏ hơn nếu nó chậm. Trong YapToText, số sao ở trang AI Models cho thấy sự đánh đổi, và mỗi lần đọc chính tả trong History hiển thị thời gian từ lúc dừng đến lúc có chữ của riêng nó.
Một mục History của YapToText với chi tiết quy trình đang mở: bản chép lời thô, bản chép lời đã chỉnh, chế độ, cách gửi, ứng dụng đích và thời gian xử lý.
Hình 4. Mỗi lần đọc chính tả trong History mang thời gian của riêng nó: bạn đã nói bao lâu, và thời gian từ lúc dừng đến lúc có chữ chia thành chép lời, chỉnh sửa bằng AI và gửi chữ.

Những điều Whisper chạy trên máy không thay đổi

Chạy Whisper trên máy chuyển công việc sang máy Mac của bạn, và chỉ có thế. Chạy trên máy đổi nơi giọng nói của bạn đi tới, không đổi mức độ nghe được tốt.

  • Lỗi. Mô hình quyết định nó nghe tốt đến đâu, dù chạy ở đâu, nên một cái tên nó nghe sai cần một mục từ điển hoặc một micrô tốt hơn, không phải một nơi chạy khác.
  • Dịch. OpenAI nói turbo không được huấn luyện để dịch, và YapToText chỉ bao giờ yêu cầu Whisper chép lời, không bao giờ dịch.
  • Một lần tải. Một mô hình chạy trên máy vẫn phải đến máy một lần. Tập lệnh của whisper.cpp lấy nó từ Hugging Face, bản App Store của YapToText có sẵn nó bên trong, và bản Homebrew lấy nó từ trang AI Models.
  • Máy Mac Intel. whisper.cpp liệt kê máy Mac Intel và Arm là được hỗ trợ. YapToText cần chip Apple và macOS 14 trở lên, và tôi không khẳng định gì về máy Mac Intel.
  • Số liệu độ chính xác. Tôi không công bố tỷ lệ chính xác cho bất kỳ mô hình nào. Số sao và History của chính bạn là kim chỉ nam.

Để chứng minh một thiết lập thực sự chạy trên máy, trang đọc chính tả offline có bài thử một phút: tắt Wi-Fi và đọc chính tả.

Tóm tắt

  • Whisper chạy trên máy. Là một tệp mô hình và một công cụ trên máy Mac của bạn, không có gì được tải lên.
  • Mô hình. Tệp turbo 5-bit, 547 MiB trong danh sách của whisper.cpp, là tệp mà YapToText kèm theo.
  • Tự làm. Sao chép whisper.cpp, tải một mô hình, biên dịch bằng CMake, và chạy whisper-cli trên một tệp WAV 16-bit.
  • Hoặc bỏ qua Terminal. YapToText chạy cùng tệp đó và gõ vào mọi ứng dụng, miễn phí.

Chọn mô hình theo bộ nhớ của máy Mac, rồi theo giọng của chính bạn. Nếu điều gì ở đây không khớp với những gì bạn thấy, hãy mở một issue trên GitHub. Tôi đọc tất cả.

Tải YapToText trên Mac App StoreTải về miễn phí. Không cần tài khoản, không có tính năng bị khóa, dành cho macOS 14 trở lên trên máy Mac có chip Apple. Mã nguồn trên GitHub.

Về người viết. Ryleigh Newman phát triển phần mềm, gặp khó khăn khi gõ phím và mỗi ngày đều đọc chính tả bằng YapToText, ứng dụng mà trang web này giới thiệu. Trang này được dịch từ tiếng Anh. Giao diện ứng dụng và các trang còn lại của trang web bằng tiếng Anh. Tìm hiểu thêm về dự án, bằng tiếng Anh.

Hướng dẫn

Hướng dẫn khác, bằng tiếng Anh

Nguồn

Câu hỏi

Làm sao chạy Whisper trên máy Mac?

Dùng whisper.cpp: sao chép kho mã, tải một mô hình bằng tập lệnh download-ggml-model.sh của nó, biên dịch bằng CMake, và chạy whisper-cli trên một tệp WAV 16-bit. Hoặc cài một ứng dụng đã kèm sẵn nó, như YapToText, chạy Whisper Large v3 Turbo mà không cần thiết lập.

Whisper cần bao nhiêu bộ nhớ?

Còn tùy mô hình. whisper.cpp liệt kê khoảng 273 MB cho tiny, 852 MB cho small, 2,1 GB cho medium và 3,9 GB cho large, và nói các mô hình lượng tử hóa cần ít hơn. Nó không đưa con số bộ nhớ nào cho turbo.

Mô hình Whisper chạy trên máy nào tốt nhất?

Large v3 Turbo là nơi tôi sẽ bắt đầu, và tệp 5-bit của nó là tệp mà YapToText kèm theo: 547 MiB trong danh sách của whisper.cpp. Nếu bộ nhớ eo hẹp, small hoặc base dùng ít hơn nhiều, và OpenAI nói các bản chỉ có tiếng Anh có xu hướng làm tốt hơn cho tiếng Anh ở các cỡ nhỏ nhất.

Mô hình Whisper Large v3 Turbo nặng bao nhiêu?

1,5 GiB trong danh sách mô hình của whisper.cpp, hoặc 547 MiB với tệp 5-bit q5_0, tức 574 MB khi tính theo đơn vị thập phân. OpenAI liệt kê turbo ở mức 809 triệu tham số.

Whisper chạy trên máy có cần internet không?

Chỉ để tải mô hình một lần. Sau đó, whisper.cpp và YapToText chép lời mà không cần kết nối, và bản App Store của YapToText có sẵn mô hình bên trong, nên bỏ qua cả lần tải đó.

Có dùng mô hình whisper.cpp trong YapToText được không?

Được. Dưới Your own models ở trang AI Models, Add Model nhận mọi tệp whisper.cpp GGML .bin, và ứng dụng biết nó là gì từ chính tệp.