Automaattitunnistus arvaa väärin: kiinnitä kielesi
Sanelu taas väärällä kielellä? Automaattitunnistus heittelehtii kaksikielisessä puheessa rakenteensa takia. Kiinnitä kieli kerran, niin se pysyy.
Jos sanelet useammalla kuin yhdellä kielellä, olet nähnyt tämän epäonnistumisen. Sanot lauseen romaniaksi ja litterointi palaa foneettisesti runneltuna englantina — oikeita sanoja, ei yhtäkään sinun. Tai se kääntyy kesken lauseen: ensimmäinen puolisko oikealla kielellä, toinen puolisko jollain, johon malli päätti sinun vaihtaneen. Tai, henkilökohtainen suosikkini, sekaaakkoskeitto — latinalaisia kirjaimia ja muutama kyrillinen ripoteltuna sekaan, ikään kuin malli hajauttaisi riskiään kirjain kerrallaan.
Tämä ei ole valitus yhdestä tuotteesta. Se on automaattisen kielentunnistuksen ennustettava vikatila, Keebyen englantiin viritetty oletus mukaan lukien. Se osuu niihin, joilla on aksentti englannissa, ja jokaiseen joka vaihtaa kieltä pitkin päivää. Kaksikielinen kehittäjä, jonka Slack on puolaksi ja commit-viestit englanniksi, antaa automaattitunnistukselle täsmälleen niitä sekasignaaleja, joita se käsittelee huonoimmin.
Valituksen toinen puolisko on hiljaisempi mutta yhtä todellinen: kun kieliasetus on olemassa, se on usein haudattu. Kolme valikkoa syvällä, moottorivalitsimen takana, sellaisen kytkimen jälkeen jonka nimessä ei edes mainita kieltä. Jos vaihdat kieltä kaksikymmentä kertaa päivässä, haudattu asetus ei käytännössä ole asetus lainkaan.
Haluan selittää miksi heittelehtimistä tapahtuu — käyttäen oman tuotteeni sotatarinaa, koska Keebyellä oli tämä ongelma ennen kuin sillä oli korjaus — ja näyttää sitten miltä oikea ratkaisu näyttää.
Miksi automaattitunnistus heittelehtii (eikä se aivan ole bugi)
Tässä on rehellinen mekaniikka. Nykyaikaiset puhemallit tekevät kielentunnistusta äänettömästi osana dekoodausta. Malli kuuntelee, muodostaa sisäisen arvion siitä mitä kieltä se kuulee ja dekoodaa sitä arviota vasten. Kun ääni on puhdasta, aksentitonta ja yksikielistä, tämä toimii niin hyvin ettet koskaan ajattele sitä.
Syötä sille nyt oikeaa puhetta. Aksentti siirtää vokaaleja toisen kielen foneemeja kohti. Lauseessa on kolme englanninkielistä lainasanaa — jokaisessa teknisessä keskustelussa on. Taustalla on lapsi, tai puhut kannettavan mikrofoniin. Jokainen näistä tekee mallin sisäisestä kieliarviosta epävarmemman, ja epävarma arvio voi kääntyä kehysten välillä. Kun se kääntyy, dekoodaus kääntyy sen mukana, ja saat litteroinnin, joka vaihtaa kieltä kesken ajatuksen.
Ratkaiseva osa: useimmissa työkaluissa mikään ei ankkuroi tuota arviota. Malli päättää, äänettömästi, lausahdus kerrallaan, eikä sinulla ole ohitusta. Se ei ole bugi missään yksittäisessä sovelluksessa — se on äänetöntä automaattitunnistusta. Malli tekee harkintapäätöksen, jota et voi korjata.
Tunnen tämän läheltä, koska Keebyen oletusmoottorilla on täsmälleen tämä ominaisuus. Parakeet, englantiin viritetty oletuksemme, ohittaa kaikki kielivihjeet dekoodauskerroksessa — et voi kertoa sille mitä olet aikeissa puhua. Selkeällä englannilla se on erinomainen, ja siksi se on oletus. Epäselvällä äänellä se voi heittelehtiä kielten välillä kuten kaikki muukin tässä kategoriassa. Kerron tämän omasta tuotteestani ensin, koska korjaus käy järkeen vasta kun hyväksyt, että ongelma asuu arkkitehtuurissa eikä jonkun kilpailijan huolimattomuudessa.
Mitä kielen kiinnittäminen oikeasti tekee?
Korjaus on lakata pyytämästä mallia arvaamaan. Keebyessä on toinen laitteella toimiva moottori — NVIDIAn Canary 1B v2, kvantisoituna int8:aan — joka kattaa tasan 25 kieltä: bulgaria, englanti, espanja, hollanti, italia, kreikka, kroatia, latvia, liettua, malta, portugali, puola, ranska, romania, ruotsi, saksa, slovakki, sloveeni, suomi, tanska, tšekki, ukraina, unkari, venäjä ja viro. Toisin kuin oletusmoottori, Canary ottaa vastaan kieliohjeen ja noudattaa sitä.
Keebye tarjoaa sen kiinnityksenä: eksplisiittisenä kieliasetuksena, joka välitetään Canary-moottorille jokaista lausahdusta varten. Kiinnitä romania, niin dekooderi käyttää romaniaa sen sijaan että tekisi automaattisen kielivalinnan. Tunnistus voi silti mennä väärin, erityisesti lainasanojen ja meluisan äänen kohdalla, mutta kielivalinta ei ole enää tarkistamaton arvaus.
Asetus luetaan livenä, sanelu kerrallaan. Vaihda se, ja seuraava pidä-ja-puhu käyttää uutta kieltä ilman sovelluksen uudelleenkäynnistystä. Sillä on enemmän väliä kuin miltä kuulostaa: kielisäädin on paljon hyödyllisempi, kun sen vaihtaminen ei keskeytä työtä.
Ja koska Canary toimii laitteella kuten kaikki muukin Keebyessä, kiinnitys ei maksa sinulle yksityisyystarinaa. Malli on noin 1,3 Gt, ladattuna kerran; sen jälkeen romaniasi, puolasi, ukrainasi ei koskaan poistu koneelta. (Miksi ylipäätään pidämme paikallista monikielistä sanelua tärkeänä, on oma artikkelinsa — kehittäjien sanelun ei pitäisi olla vain englanniksi. Tämä on sen käytännön jatko-osa: se artikkeli puolustaa kieliä, tämä tekee niistä oikeasti käyttökelpoisia.)
Kaksi klikkausta, ei kolmea valikkoa syvällä
Kiinnitys, johon et ylety, on kiinnitys jota et käytä, joten vaihto asuu valikkopalkissa. Keebyen valikkopalkin kuvakkeessa on ”Dictation Language” -valikko, jossa on kuratoitu 11 kielen lyhytlista — englanti, romania, ranska, saksa, espanja, italia, portugali, hollanti, puola, venäjä, ukraina. Kaksi klikkausta mistä tahansa sovelluksesta: klikkaa valikkopalkkia, klikkaa kieltä. Et avaa asetuksia etkä poistu ikkunasta, jossa olit työskentelemässä.
Täysi 25 kielen lista asuu asetuksissa niitä kieliä varten, jotka jäävät lyhytlistan ulkopuolelle. Mutta lyhytlista kattaa useimman kaksikielisen työn arjen: kirjoitat tiimillesi yhdellä kielellä ja asiakkaalle tai tekoälyagentille toisella, ja tarvitset vaihdon, joka ei maksa mitään.
Yksi vaihtoehto on vielä tuntemisen arvoinen, koska se muuttaa joidenkin ihmisten tavan käyttää kiinnitystä täysin: käännä englanniksi -kytkin. Puhut omaa kieltäsi, ja englanti laskeutuu kursoriin — sama moottori, sama laitteella tapahtuva suoritus. Jos sisäinen monologisi kulkee romaniaksi mutta tuotoksesi pitää olla englanniksi (commit-viestit, promptit koodausagentille, vastaukset kansainväliselle tiimille), tämä romahduttaa sen käännösvaiheen, jota teit päässäsi. Käytän sitä enemmän kuin odotin.
Mitä kiinnitys maksaa
25 kieltä on 25 kieltä. Pilvipohjaiset sanelutyökalut listaavat paljon enemmän, koska äänen lähettäminen suureen palvelinpuolen malliin on halpa tapa lisätä kieliä. Se on laitteella toimimisen todellinen kompromissi: malli, joka mahtuu Macillesi, kattaa vähemmän maailmaa kuin malli, joka täyttää konesalin. Jos kielesi ei ole tuolla 25:n listalla, Keebyen monikielinen moottori ei kata sinua tänään, ja sanon sen mieluummin kuin pyöristän ylöspäin.
Kiinnitys tarkoittaa kiinnitystä. Tämä on determinismin kääntöpuoli, ja haluan olla siitä suora: jos kiinnität romanian ja puhut sitten englantia, Keebye dekoodaa englantisi uskollisesti väärin romaniaksi kunnes vaihdat. Moottori tekee täsmälleen sen, mitä käskit. Automaattitunnistuksen koko viehätys oli siinä, ettei sinun tarvitsisi koskaan ajatella tätä — kiinnitys vaihtaa tuon mukavuuden ennustettavuuteen. Kokemukseni mukaan vaihtokauppa kannattaa, koska väärä arvaus jota et voi hallita on pahempi kuin väärä asetus jonka korjaat kahdella klikkauksella. Mutta se on vaihtokauppa, ei ilmainen lounas.
Valikkopalkin lyhytlista on 11 kieltä, ei 25. Jos päivittäiseen kielipariisi kuuluu vaikkapa suomi tai kreikka, käyt asetusten kautta sen toisen puolen osalta. Kuratointi tarkoittaa, että jonkun kieli ei mahtunut pikavalikkoon.
Mihin tämä jättää valituksen
Kategorian tason valitus — ”saneluni tulee jatkuvasti ulos väärällä kielellä” — on oikeastaan valitus äänettömistä päätöksistä. Malli arvasi, arvaus oli väärä, eikä ollut mitään keinoa kertoa sille toisin. Jokainen korjaus, joka säilyttää arvaamisen (parempi tunnistus, pidemmät ääni-ikkunat, luottamuskynnykset), tekee viasta vain harvinaisemman ja oudomman. Korjaus, joka oikeasti lopettaa valituksen, on päätöksen antaminen takaisin käyttäjälle.
Jos elät tätä parhaillaan jonkin toisen työkalun kanssa, vertailusivumme ovat rehellisiä siitä mihin kukin työkalu sopii — sekä Keebye vs Superwhisper että Keebye vs Wispr Flow käsittelevät muun muassa kielikysymystä. Kokeillaksesi itse kiinnitystä aloita ilmainen kokeilu alta, toista se romanian- tai puolankielinen lause tämän artikkelin alusta ja katso, kuinka paljon heittelehtimisestä tuli tarkistamattomasta arvauksesta eikä aksentistasi.
Kiinnitä se kieli, jota oikeasti käytät
Aloita ilmainen kokeilu ja toista yksi äidinkielinen vastaus, jonka automaattitunnistus aiemmin runteli.
Start free trialEarly access: we'll email you the moment the macOS build is ready — your 14 days start when you first sign in from the app.
Jatka lukemista
Sanele koodikatselmoinnit omalla kielelläsi
Koodi on englantia. Katselmointikommenttiesi ei tarvitse olla. Näin sanelet palautetta yhdellä 25 kielestä laitteella — ja miksi kielen kiinnitys ratkaisee.
Promptien sanelu rinnakkaisagenteille, kaista kerrallaan
Kahden tai kolmen koodausagentin ajaminen tekee promptaamisesta pullonkaulan. Työnkulku rinnakkaiskaistojen syöttämiseen poistumatta siitä, jolla olet.
Claude Code äänellä: rakentamista rinnakkaiskaistoilla
AI-koodiagentit tekivät näppäilystä pullonkaulan. Työnkulku promptien, katselmointien ja suunnanmuutosten saneluun rinnakkaisille agenteille macOS:llä.