Whisper to system automatycznej transkrypcji mowy stworzony przez OpenAI — działa lokalnie, offline, i radzi sobie dobrze z polskim. W tym artykule: instalacja w środowisku wirtualnym, wybór modelu i użycie z linii poleceń oraz z poziomu Pythona.
Czym jest Whisper
Whisper to model głębokiego uczenia wytrenowany na ogromnej ilości nagrań audio, który zamienia mowę na tekst w wielu językach — w tym po polsku — i potrafi też tłumaczyć mowę bezpośrednio na angielski. Jest open-source, dostępny na GitHubie, można go uruchomić lokalnie i za darmo.
Typowe zastosowania: transkrypcja spotkań i wywiadów, tworzenie napisów do filmów, automatyzacja notatek głosowych, wsparcie dla osób z trudnościami w słyszeniu.
Instalacja w Ubuntu
Zawsze w osobnym środowisku wirtualnym Python — więcej o tym niżej.
Instalacja Whisper zalecane
Stabilne wydanie z PyPI — to jest domyślna, zalecana droga:
Instalacja bezpośrednio z GitHuba (pip install git+https://github.com/openai/whisper.git) ma sens tylko, gdy potrzebujesz konkretnej, jeszcze niewydanej poprawki — kod na gałęzi main nie zawsze jest tak stabilny jak wydanie z PyPI.
Kompatybilność Pythona: Whisper stabilnie działa na Pythonie 3.10–3.12. Python 3.13 na razie nie jest wspierany — jeśli masz nowszą wersję systemową, twórz venv na starszym interpreterze (np. python3.12 -m venv moj_projekt).
Które modele są dostępne
Większy model = wyższa dokładność, ale wolniej i więcej pamięci. Wybór zależy od tego, czy liczy się szybkość, czy jakość.
| model | parametry | uwagi |
|---|---|---|
| tiny | 39M | najszybszy, najmniej dokładny — do szybkich testów |
| base | 74M | dobry kompromis na słabszym sprzęcie |
| small | 244M | przyzwoita jakość, wciąż lekki |
| medium | 769M | wysoka jakość, zauważalnie wolniejszy |
| large-v3 | 1550M | najwyższa dokładność, w tym do tłumaczenia mowy na angielski |
| turbo | 809M | zoptymalizowana wersja large-v3 — szybka, prawie tak dokładna; nie nadaje się do tłumaczenia, tylko do transkrypcji |
Praktyczna rekomendacja: turbo do codziennej transkrypcji (szybko, dobra jakość), large-v3 gdy zależy Ci na maksymalnej dokładności albo potrzebujesz tłumaczenia na angielski.
Transkrypcja pliku audio
Będąc w katalogu z plikiem audio, wystarczy jedna komenda:
--language Polish ustawia język nagrania, --model turbo wybiera model (patrz tabela wyżej). Wynik trafia do pliku nagranie.txt w tym samym katalogu.
Whisper z poziomu Pythona
Przydaje się, gdy chcesz przetwarzać wiele plików automatycznie albo dalej analizować wynik.
Dlaczego środowisko wirtualne
Brak konfliktów między bibliotekami. Różne projekty mogą wymagać różnych wersji tych samych pakietów — venv trzyma je osobno, zamiast nadpisywać się nawzajem.
Bezpieczeństwo systemu. Instalacja globalna potrafi nadpisać pliki, na których polegają inne aplikacje korzystające z systemowego Pythona. W venv zmiany zostają w jego własnym katalogu.
Przenośność. Środowisko łatwo odtworzyć na innym komputerze przy pomocy pip freeze > requirements.txt.
Po zamknięciu terminala pamiętaj o ponownej aktywacji: source moj_projekt/bin/activate. Listę zainstalowanych pakietów sprawdzisz przez pip list.
Co poprawiłem względem pierwszej wersji notatek
- Metoda instalacji: zamiast instalacji bezpośrednio z GitHuba jako domyślnej metody — stabilne wydanie pip install -U openai-whisper z PyPI, zalecane przez samych autorów projektu. Instalację z GitHuba zostawiłem jako opcję dla bleeding-edge.
- Modele: oryginał wspominał tylko o modelu large. Dodano aktualną listę wraz z large-v3 i modelem turbo (dodanym we wrześniu 2024) — dziś to on jest najlepszym wyborem do codziennej pracy.
- Kompatybilność Pythona: dodano uwagę, że Whisper nie działa jeszcze na Pythonie 3.13 — warto to sprawdzić przed tworzeniem środowiska wirtualnego.
Źródła
- openai/whisper — oficjalne repozytorium
- Whisper — karta modelu
- openai-whisper na PyPI