Unë shkruaj mijëra fjalë çdo ditë. Email, dokumentacion, mesazhe në aplikacionin e kompanisë sonë, komente kod (jo aq shumë). Duart e mia dhembin nganjëherë.. jo me të vërtetë.. por unë vazhdoj të kap veten duke folur në ekranin tim ndërsa shkruaj, si truri im dëshiron të diktojë, por gishtat e mi nuk do ta lejojnë atë. Kështu që unë u përpoqa mjetet e dukshme. Windows Recognition Speech mashtroi gjuhën time gjermane. Google Docs shkruajtja e zërit punoi mirë, por unë duhej të hapja një shfletues, dhe çdo fjalë që thashë shkoi drejt serverave të Google. Ajo që unë me të vërtetë donte: shtypni një buton, flisni, teksti shfaqet atje, në çfarëdo dritare që unë jam duke përdorur. Asnjë tab shfletues, asnjë llogari, asnjë çelës API. Vetëm zëri im, GPU im, dhe një kursor teksti.Unë nuk mund të gjej asgjë që bëri pikërisht këtë, kështu që e ndërtova atë. Është quajtur (https://github.com/TryoTrix/whisper-type), dhe është një skedar i vetëm Python që shndërron GPU tuaj NVIDIA në një motor diktimi lokal. Tipi i pëshpëritjes Për të përdorur tipin Whisper: Shtypni CTRL + ALT + D, flisni dhe teksti shfaqet në çfarëdo aplikacioni që përdorni. Nuk më pëlqen të lëviz aq shumë, kështu që vura shkurtesën CTRL+ALT+D në hipershift-key+Mouse-scroll-click të miut Razer Problemi me diktaturën e zërit në vitin 2026 Njohja e zërit është bërë jashtëzakonisht e mirë. Whisper i madh-v3 mund të trajtojë akcentet, muzikën e sfondit dhe hyrjen e gjuhës së përzier me saktësi pothuajse njerëzore. Teknologjia është atje. Por modeli i dorëzimit është i bllokuar në vitin 2015. Pothuajse çdo mjet i diktimit ose shkon në re (duke dërguar audio tuaj në serverin e dikujt tjetër), ju bllokon në një aplikacion të veçantë, ose kushton një tarifë të përsëritur. Ndërkohë, një GPU mesatare nga 2022 mund të transkriptojë fjalën në 10x kohë reale. Hardware ulur në tavolinën tuaj është më shumë se i aftë. Vetëm softueri nuk ka kapur. Ka edhe këndin e privatësisë. Unë Çfarë bën lloji i whisper Ju shtypni 'CTRL+ALT+D'.Një varg i hollë i kuq ndizet në krye të ekranit tuaj, dhe një orb i animuar shfaqet, kështu që ju e dini se regjistrimi është aktiv. Ju flisni. Ju shtypni sërish çelësin e nxehtë. Një gjysmë sekonde më vonë, teksti i transkriptuar është ngjitur në çdo dritare në të cilën jeni duke punuar. Nën kapak, ndodhin pesë gjëra: Kapja e zërit nëpërmjet regjistrimeve të pajisjes së zërit në një array NumPy në 16kHz. asnjë skedar WAV godet disk. Whisper large-v3 shkon nëpërmjet `faster-whisper` (CTranslate2 backend) në GPU tuaj me `float16` saktësi. Filtrimi VAD (Silero Voice Activity Detection) kalon heshtjen, kështu që Whisper vetëm përpunon segmente me fjalimin aktual. Pas-përpunimi zëvendëson pikturimin e folur ("shenja e pyetjes" bëhet `?') dhe filtron halucinacionet e njohura. Clipboard paste injekton tekstin në çfarëdo app ka fokus. Një skedar Python, rreth 600 rreshta. Vendimet teknike Pse më shpejtë-whisper mbi OpenAI origjinale Implementimi i referencës Whisper i OpenAI është shumë i ngadalshëm për të diktuar. Ju flisni një fjali, prisni disa sekonda, pastaj merrni rezultatin. Kjo vonesë vret rrjedhën e punës. më i shpejtë-whisper përdor CTranslate2, i cili konverton modelin në një format të optimizuar të inferencës. Të njëjtat peshë, të njëjtën saktësi, por 4x më të shpejtë në të njëjtin hardware. Ja çfarë kam matur në RTX 4060 tim: 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 Disa fjalë 2-4 herë ~ 5s 4-6x në kohë reale Një ose dy fjali 4 – 10 të 1s 5-10x në kohë reale Një paragraf i plotë 55s 5s 11x në kohë reale Monolog i gjatë 73 të 7.7 të 9.5x në kohë reale Për diktimin tipik (një fjali ose dy), transkripti përfundon para se të keni lëvizur dorën tuaj përsëri në tastierë. Lloji i kompjuterit, për saktësi dhe kështu që pëshpëritja nuk e humb ciklin në heshtje. `float16` `beam_size=5` `vad_filter=True` The no_speech_prob Trap Përgjigje Kjo më kushtoi një pasdite. Shkëndija i jep a vlerë për çdo segment të transkriptuar – një pikë besimi për nëse segmenti në të vërtetë përmban fjalim. Kjo tingëllon mjaft e arsyeshme. no_speech_prob 0.6 Me përjashtim të Gjermanisë, ky rezultat i besimit është thyer plotësisht. Unë kisha fraza të qarta, të zhurmshme, të artikuluara mirë duke u shënuar si : “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. Tetë nga nëntë segmente u hodhën në heshtje. Unë e kapur atë vetëm për shkak se kam debug logging aktivizuar dhe vërejti output ishte dyshimisht e shkurtër. korrigjimi ishte për të çaktivizuar `no_speech_prob` filtër plotësisht dhe të mbështetet në Silero VAD për zbulimin e heshtjes. VAD analizon formën e valës së papërpunuar audio, jo besimin e modelit, kështu që në fakt punon pavarësisht nga gjuha. Nëse jeni duke ndërtuar diçka me Whisper për gjuhë jo angleze: Përdorni VAD në vend. do not trust `no_speech_prob`. Halucinacionet e filtrimit Kur Whisper merr heshtje ose zhurmë ambientale që kalon përtej VAD, ajo nganjëherë hallucinates. ato klasike: "Faleminderit për shikimin!", "Subscribe to my channel", "Untertitel von..." (Gjermanisht për "Subtitles by..."). Zgjidhja është një bllokim i thjeshtë: pythonHALLUCINATION_PHRASES = [ "Untertitel von", "Untertitelung", "Copyright", "Abonniere", # ... more patterns] Çdo transkriptim kontrollohet kundër kësaj liste para ngjitjes.Jo elegante, por efektive.Lista rritet me kalimin e kohës ndërsa takohem me halucinacione të reja në natyrë. Regjistrimi Overlay Një ikonë e çantës së sistemit që ndryshon ngjyrën nga e gjelbër në e kuqe nuk ishte e mjaftueshme, shumë e lehtë për të humbur. Pra, mbulesa ka dy pjesë: një shufër e hollë e kuqe mbi skajin e sipërm të çdo monitori të lidhur, dhe një orb mikrofon i animuar me unaza elektrike të plazmës. unazat përdorin zhvendosjen e pikselëve 2D për të simuluar një efekt 'fe DisplacementMap'.Ka një sistem të dyfishtë unazash ku bërthama e brendshme pulson me të bardhë të nxehtë dhe unaza e jashtme orbiton me fushën e vet të zhurmës. Të gjitha 90 kornizat e animacionit janë para-renderuar në nisje, paralelisht me ngarkimin e modelit. Gjatë regjistrimit, ajo është thjesht duke u kthyer përmes imazheve të para-kompjutuara. A ishte efekti i plazmës i domosdoshëm për një mjet diktimi?Jo, por më bën të lumtur. Getting Started Ju duhet: Windows 10 dhe 11 GPU NVIDIA me mbështetje CUDA (i testuar në RTX 4060, duhet të punojë në RTX 3060+) Python 3.12 dhe më shumë - Rreth 3 GB hapësirë disk për modelin (shkarko një herë) bashgit clone https://github.com/TryoTrix/whisper-type.gitcd whisper-typeinstall.bat Instalatori kontrollon sistemin tuaj, instalon varësitë, shkarkon Whisper large-v3, krijon një shkurtesë për të nisur automatikisht dhe lëshon mjetin. Pas kësaj, fillon automatikisht në çdo hyrje të Windows. Ikona e tavanit kthehet jeshile kur modeli është ngarkuar dhe gati. Tre gjërat që mësova Dallimi midis "modelit të AI-së funksionon" dhe "mjetit të AI-së është i përdorshëm" është i madh. Merrja e Whisper për të transkriptuar audio mori ndoshta një orë. Bëja e tërë gjëje të ndjehet si një tipar i OS-it të lindur, përgjigje e menjëhershme e çelësave të nxehta, ikonë tray, mbivendosje vizuale, autostart, rikuperim i gabimeve, mutex i një instance të vetme, e gjithë kjo mori javë. transkriptimi është ndoshta 10% e kodit. 90% e tjera po e bëjnë atë të zhduket në rrjedhën tuaj të punës. AI lokale është me të vërtetë gati për punë reale. Një GPU 300 $ nga 2022 shkon Whisper i madh-v3 më shpejt se në kohë reale, me saktësi që përputhet me API-të cloud. Udhëtimi i rrumbullakët në një GPU lokal matet në milisekonda. Një thirrje në cloud API shton vonesën e rrjetit, kohën e mundshme të ndërprerjes dhe një metër që funksionon në sfond. Për detyra të tilla si diktimi, ku keni nevojë për përgjigje të menjëhershme dhe përpunim të tekstit të ndjeshëm, lokal është rreptësisht më i mirë. Mjetet e një dosjeje përdoren, projektet e shumëfishta hiqen. Lloji i Whisper është një skedar Python. Nuk ka konfigurim, nuk ka strukturë të projektit, nuk ka hap Kufizimet Vetëm Windows: Çelësat e nxehtë, integrimi i clipboard, ikona e tavanit dhe mbivendosja përdorin të gjitha API-t e Windows. NVIDIA GPU kërkohet. As AMD, as Intel, as Apple Silicon. CUDA është një varësi e vështirë. Nuk ka transmetim në kohë reale. Ju regjistroni një copë, pastaj ajo transkriptohet. Për shumicën e diktimit, kjo duket e menjëhershme (më pak se një sekondë për një fjali), por nuk është transmetim i vazhdueshëm. Numrat nganjëherë bëhen të formatuar në mënyrë të paqëndrueshme, si "140" duke u bërë "140.000" në gjermanisht. Këto janë çështje të modelit të përparuar, jo diçka që unë mund të rregulloj në pas-përpunimin. Çfarë është e radhës? Unë kam qenë duke përdorur Whisper Type çdo ditë për disa javë tani. është një nga ato mjete që ndryshon mënyrën se si ju punoni sapo të mësoheni me të. Ka gjëra që dua të ndërtoj më pas: një port Linux (motori Whisper është gati; është integrimi i OS-it që ka nevojë për punë), pamjet audio-reaktive në orb (infrastruktura është tashmë atje; 'audio_level' gjurmohet, por nuk është ende i lidhur në animacion), dhe ndoshta një mënyrë për të tubuar diktimin direkt në komandat e terminalit. Nëse keni një GPU NVIDIA dhe kaloni ditën tuaj duke shkruajtur, jepni Whisper Type një provë. ndërtuar nga në Zvicër. unë ndërtoj mjete web dhe softuer produktiviteti të fuqishëm nga AI. Daniel Gjergji