Svaki dan tipkam tisuće riječi. E-pošte, dokumentacije, poruke u našoj aplikaciji tvrtke, komentari koda (ne toliko). Ruke su mi povrijedile ponekad.. ne stvarno.. ali ja sam i dalje uhvatio sebe govoreći na mom zaslonu dok tipkam, kao što je moj mozak želi diktirati, ali mi prsti neće dopustiti. Dakle, pokušao sam očigledne alate. Windows Prepoznavanje govora ubio moj njemački. Google Docs glasovnog tipkanja radio je u redu, ali morala sam otvoriti preglednik, a svaka riječ koja sam rekla otišla je izravno na Googleove poslužitelje. komercijalni softver za diktiranje želio je mjesečnu pretplatu za nešto što bi se moj GPU trebao nositi lokalno. Ono što sam zapravo želio: pritisnite gumb, govorite, tekst se pojavljuje upravo tamo, u bilo kojem prozoru koji koristim. Bez kartice preglednika, bez računa, bez API ključa. Samo moj glas, moj GPU i tekstovni kurzor.Nisam mogao pronaći ništa što je točno učinilo, pa sam ga izgradio. Zove se (https://github.com/TryoTrix/whisper-type), a to je jedna Python datoteka koja pretvara vaš NVIDIA GPU u lokalni diktator. Vrsta šaputanja Pritisnite tip CTRL+ALT+D, govorite, a tekst će se pojaviti u bilo kojoj aplikaciji koju koristite. Ne volim se preusmjeravati toliko, pa sam stavio CTRL+ALT+D kraticu na hipershift ključ miša Razer + klik miša Problem glasovnog diktatora 2026. godine Glasovno prepoznavanje je postalo nevjerojatno dobro. Whisper large-v3 može upravljati naglascima, pozadinskom glazbom i miješanim jezikovnim ulazima s gotovo ljudskom točnošću. Tehnologija je tu. No model isporuke je zaglavljen u 2015. Gotovo svaki alat za diktiranje ili radi u oblaku (pošiljanje vašeg zvuka na tuđi poslužitelj), zaključuje vas u određenu aplikaciju ili košta ponavljanu naknadu. U međuvremenu, GPU srednjeg ranga od 2022. može transkriptirati govor u 10x realnom vremenu. Hardver koji sjedi na vašem stolu je više nego sposoban. Softver jednostavno nije uhvaćen. Tu je i kut privatnosti. Diktiram radne e-pošte, razgovore s klijentima i osobne Što šaputanje tip čini Pritisnete 'CTRL+ALT+D'. tanka crvena traka osvjetljava se na vrhu zaslona i pojavljuje se animirana ljestvica, tako da znate da je snimanje aktivno. Govoriš. Pritisnete ključ ponovo. Pola sekunde kasnije, transkribirani tekst je umetnut u bilo koji prozor u kojem radite. Pod kapom se događa pet stvari: 1. zvučni snimak putem 'zvučnog uređaja' zapisa na NumPy array na 16kHz. Whisper large-v3 radi kroz 'faster-whisper' (CTranslate2 backend) na vašem GPU-u s 'float16' preciznošću. Filtriranje VAD (Silero Voice Activity Detection) preskače tišinu, tako da Whisper obrađuje samo segmente s stvarnim govorom. Post-obrada zamjenjuje govornu punkciju ("pitanje" postaje `?') i filtrira poznate halucinacije. Clipboard paste ubrizgava tekst u bilo koju aplikaciju koja ima fokus. Jedan Python datoteka, oko 600 linija. Tehničke odluke Zašto je brži od OpenAI-ovog Original-a OpenAI-ova referentna implementacija Whisper previše je spora za diktiranje. Vi govorite rečenicu, pričekajte nekoliko sekundi, a zatim dobijete rezultat. To zakašnjenje ubija tok posla. brži whisper koristi CTranslate2, koji pretvara model u optimizirani format zaključivanja. Isti težine, ista točnost, ali 4x brže na istom hardveru. Evo što sam izmjerio na svom RTX 4060: What I Said Audio Length Transcription Time Speed A few words 2-4s ~0.5s 4-6x real time One or two sentences 4-10s ~1s 5-10x real time A full paragraph ~55s ~5s 11x real time A long monologue 73s 7.7s 9.5x real time Nekoliko riječi 2-4 s • 0,5 s 4-6x u stvarnom vremenu Jedna ili dvije rečenice 4 – 10s 1s 5-10x u stvarnom vremenu Cijeli članak 55s 5s 11x realno vrijeme Dugački monolog 73s 7.7 Svijet 9.5x u stvarnom vremenu Za tipičnu diktaciju (jednu ili dvije rečenice), transkripcija završava prije nego što pomaknete ruku natrag na tipkovnicu. Vrsta računala, Za točnost i Dakle, šaputanje ne gubi cikluse na tišini. `float16` `beam_size=5` `vad_filter=True` Sljedeći članakThe no_speech_prob Trap To me koštalo jedno poslijepodne. Šaputanje dodjeljuje a vrijednost za svaki transkriptiran segment – ocjena pouzdanosti za to da li segment zapravo sadrži govor. Što zvuči dovoljno razumno. no_speech_prob 0.6 Osim s Njemačkom, ta je ocjena povjerenja potpuno slomljena. Imala sam jasne, glasne, dobro artikulirane rečenice koje su bile označene kao : “no speech” with 97% confidence SKIP (no_speech=0.97): Yeah, das sieht cool aus. SKIP (no_speech=0.97): Die Animation beim Mikrofon klappt auch super. SKIP (no_speech=0.97): Ich werde nun die lange Sprachnachricht probieren. Osam od devet segmenata bilo je tiho odbačeno. Uhvatio sam ga samo zato što je debug logiranje uključeno i primijetio da je izlazak sumnjivo kratak. Ispravak je bio isključiti 'no_speech_prob' filtriranje u potpunosti i oslanjati se na Silero VAD za detekciju šutnje. VAD analizira sirovi audio val, a ne samopouzdanje modela, tako da zapravo radi bez obzira na jezik. Ako gradite nešto s Whisperom za ne-engleske jezike: Umjesto toga koristite VAD. do not trust `no_speech_prob`. Halucinacijske filtre Kada Whisper dobije tišinu ili okolišnu buku koja prođe VAD, to ponekad halucinira. Klasični oni: "Hvala za gledanje!", "Prijavite se na moj kanal", "Untertitel von..." (Njemački za "Subtitles by..."). To je poznato ponašanje modela, a to je uznemirujuće kada se fantomski tekst pojavi u vašem nacrtu e-pošte. Rješenje je jednostavna blokada: pythonHALLUCINATION_PHRASES = [ "Untertitel von", "Untertitelung", "Copyright", "Abonniere", # ... more patterns] Svaka transkripcija se provjerava prema ovom popisu prije pričvršćivanja. Ne elegantno, ali učinkovito. Popis raste s vremenom dok se susrećem s novim halucinacijama u divljini. Snimanje Overlay Htio sam neosporne vizualne povratne informacije kada je mikrofon vruć. ikona sustavne pločice koja mijenja boju od zelene do crvene nije bila dovoljna, previše lako propustiti. Dakle, prekrivanje ima dva dijela: tanku crvenu traču preko gornjeg ruba svakog povezanog monitora i animirani mikrofonski orb s električnim prstenovima plazme. Prstenovi koriste 2D premještanje piksela kako bi simulirali učinak "fe DisplacementMap". Postoji sustav dvostrukog prstena gdje unutarnje jezgro pulsira bijelo vruće, a vanjski prsten orbiti vlastitim poljem buke. Svi 90 animacijskih okvira su unaprijed prikazani na pokretanju, paralelno s učitavanjem modela. Tijekom snimanja, to je samo prebacivanje kroz unaprijed izračunate slike. Je li plazma učinak strogo potreban za diktatorski alat?Ne, ali to me čini sretnim. Getting Started Potrebno vam je: Windows 10 ili 11 - NVIDIA GPU s CUDA podrškom (testirano na RTX 4060, trebalo bi raditi na RTX 3060+) Sljedeći članak Python 3.12+ - Oko 3 GB prostora na disku za model (jednostavno preuzimanje) bashgit clone https://github.com/TryoTrix/whisper-type.gitcd whisper-typeinstall.bat Instalator provjerava vaš sustav, instalira ovisnosti, preuzima Whisper large-v3, stvara skraćenicu za samostalno pokretanje i pokreće alat. Nakon toga, automatski se pokreće na svakom Windows prijavljivanju. Tri stvari koje sam naučio Razlika između "AI model radi" i "AI alat je korisno" je ogroman. Dobivanje Whisper za transkripciju zvuka potrajalo je možda sat vremena. Činjenica da se cijela stvar osjeća kao native OS značajka, instant hotkey odgovor, tray ikona, vizualni prekrivanje, autostart, oporavak grešaka, single-instance mutex, sve to je trajalo tjedane. transkripcija je možda 10% koda. Lokalni AI je doista spreman za pravi rad. GPU od 300 $ iz 2022. pokreće Whisper big-v3 brže nego u stvarnom vremenu, s točnošću koja odgovara cloud APIs. Okružni put do lokalnog GPU-a mjeri se u milisekundama. Poziv u cloud API-ju dodaje mrežnu latentnost, potencijalno zaustavljanje i metar koji radi u pozadini. Za zadatke poput diktacije, gdje trebate trenutni odgovor i proces osjetljivog teksta, lokalno je strogo bolje. Jednostavni alati se koriste, višestruki projekti se napuštaju. Whisper Type je jedna Python datoteka. Nema konfiguracije, nema strukture projekta, nema koraka izgradnje. Želite prilagoditi listu halucinacija? Otvorite datote ograničenja Samo Windows: Hotkeys, clipboard integracija, tray ikona, i preklapanje sve koriste Windows APIs. Potreban je NVIDIA GPU. Ne AMD, ne Intel, ne Apple Silicon. CUDA je tvrda ovisnost. Nema streaming u stvarnom vremenu. Snimate komad, a zatim se transkripiše. Za većinu dikta, to se osjeća trenutačno (manje od jedne sekunde za rečenicu), ali to nije kontinuirani streaming. Brojevi se ponekad formatiraju nedosljedno, kao što je "140" postaje "140.000" u njemačkom. Što je sljedeće? Koristim Whisper Type svakodnevno već nekoliko tjedana.To je jedan od tih alata koji mijenja način na koji radite kada se naviknete na to. Postoje stvari koje želim izgraditi sljedeće: Linux port (motor Whisper je spreman; to je OS integracija koja treba raditi), audio-reaktivne vizualne na orb (infrastruktura je već tamo; 'audio_level' je praćen, ali još nije povezan s animacijom), i možda način da se diktacija izravno u terminalne zapovijedi. Ako imate NVIDIA GPU i provedete svoj dan tipkanjem, probajte Whisper Type. To je MIT licencirano, potpuno besplatno, a cijela baza koda je jedna datoteka koju možete čitati preko kave. Izgrađena od Izgradim web alate i softver za produktivnost zasnovan na AI-u. Daniel Gächter