Przejdź do treści
👋 Witaj na grzegorz.hawalej.org
Parakeet w Google Colab

Parakeet w Google Colab

Instrukcja użytkowania notebooka parakeet_tdt_0_6b_v3_colab_workflow.ipynb

Zasada działania

Notebook uruchamia w Google Colab model mowy-na-tekst nvidia/parakeet-tdt-0.6b-v3 (framework NVIDIA NeMo) i przepuszcza przez niego wgrane pliki audio/wideo, zwracając transkrypcję tekstową oraz (opcjonalnie) napisy .srt ze znacznikami czasu.

Model:

  • ma 600 mln parametrów (architektura FastConformer + dekoder TDT),
  • automatycznie rozpoznaje język i transkrybuje w 25 językach europejskich (w tym polski),
  • sam dodaje interpunkcję i wielkie litery,
  • potrafi zwrócić znaczniki czasu na poziomie znaku / słowa / segmentu,
  • obsługuje długie nagrania: do ~24 min z pełną uwagą enkodera, do ~3 h po przełączeniu na uwagę lokalną,
  • jest dostępny na licencji CC-BY-4.0 (użycie komercyjne i niekomercyjne dozwolone, z atrybucją).

Pliki wejściowe inne niż audio 16 kHz mono (np. mp3, m4a, mp4, mkv) są automatycznie konwertowane przez ffmpeg w sposób strumieniowy (bezpieczny pamięciowo nawet dla wielogodzinnych nagrań).

Wymagania

  • Konto Google i dostęp do Google Colab.
  • Włączony akcelerator GPU (model działa też na CPU, ale znacznie wolniej).
  • Opcjonalnie: konto Google Drive, jeśli chcesz trwale zapisywać wyniki.

Krok po kroku

1. Włącz GPU

W Colabie: Runtime → Change runtime type → Hardware accelerator → T4 GPU (lub lepszy), zapisz. Uruchom pierwszą komórkę (!nvidia-smi), by potwierdzić dostępność GPU.

2. Zainstaluj NeMo

Uruchom komórki z Krokiem 1 — instalują moduł ASR biblioteki NeMo oraz soundfile/librosa. Jeśli po instalacji pojawią się błędy importu (konflikty numpy/numba/protobuf), wybierz Runtime → Restart session i uruchom komórki ponownie od tego miejsca (bez powtarzania instalacji).

3. Wczytaj model

Uruchom komórkę Kroku 2. Pierwsze uruchomienie pobierze checkpoint (~2,4 GB) z Hugging Face i zbuforuje go na czas sesji.

4. Podaj pliki audio/wideo

W Kroku 3 wybierz jedną z opcji:

  • Opcja A — pobiera gotowy plik przykładowy (po angielsku), do szybkiego testu.
  • Opcja B — pozwala wgrać własne pliki z komputera (audio: wav, flac, mp3, m4a, ogg, opus, aac; wideo: mp4, mkv, avi, mov — z wideo wyciągana jest tylko ścieżka dźwiękowa).

Następnie uruchom komórkę „Przygotowanie audio" — automatycznie skonwertuje pliki do wymaganego formatu (16 kHz, mono, wav).

5. Transkrypcja podstawowa

Uruchom Krok 4, by uzyskać czysty tekst transkrypcji dla wszystkich podanych plików naraz.

6. Transkrypcja ze znacznikami czasu i eksport

Uruchom Krok 5+6. Zwraca znaczniki czasu na poziomie segmentów i (przy EXPORT_FILES = True, ustawionym domyślnie) zapisuje dla każdego pliku:

  • .srt — plik z napisami,
  • .txt — czysty tekst transkrypcji.

Aby tylko podejrzeć znaczniki czasu bez zapisu plików, ustaw EXPORT_FILES = False przed uruchomieniem.

7. (Opcjonalnie) Długie nagrania

Jeśli plik trwa dłużej niż ~24 minuty, uruchom Krok 7 — przełącza enkoder modelu na uwagę lokalną, co pozwala przetwarzać nagrania do ~3 godzin przy niższym zużyciu VRAM. Ta zmiana jest trwała do końca sesji; aby wrócić do trybu domyślnego, wczytaj model ponownie (Krok 2).

Po zakończeniu długiego przebiegu możesz zwolnić pamięć GPU komórką „Czyszczenie pamięci GPU”.

8. Zapis wyników

Uruchom Krok 8, ustawiając wcześniej:

  • SAVE_TO_DRIVE = True — zapisuje pliki .srt/.txt na Google Drive w podfolderze Parakeet_transkrypcje (zalecane — przeżywa rozłączenie sesji Colab),
  • DOWNLOAD_ZIP = True — pakuje wyniki do transkrypcje.zip i pobiera je na dysk lokalny przez przeglądarkę.

Obie opcje można włączyć jednocześnie lub niezależnie.

Wskazówki

  • Jeśli chcesz przetworzyć kolejną partię plików w tej samej sesji, wróć do Kroku 3.
  • Streaming w czasie rzeczywistym: skrypt speech_to_text_streaming_infer_rnnt.py z repozytorium NeMo (pretrained_name="nvidia/parakeet-tdt-0.6b-v3").
  • Fine-tuning na własnych danych: skrypty speech_to_text_finetune.py w NeMo — osobny, większy workflow.

Linki