Beenet
Technologijos praktikoje

Kaip su AI išmokiau robotą kalbėti lietuviškai

Angliškai kalbantį edukacinį robotą pritaikiau Lietuvos vaikams: Whisper, OpenAI, ElevenLabs ir FFmpeg sujungiau į vieną darbo eigą — nuo garso atpažinimo iki lietuviško įgarsinimo.

Dirbtinis intelektas AI integracijos Garso apdorojimas
Kaip su AI išmokiau robotą kalbėti lietuviškai

Ar galima angliškai kalbantį robotą išmokyti lietuvių kalbos pasitelkus dirbtinį intelektą?

Pasirodo, galima. Tačiau vien išversti tekstą tikrai neužtenka.

Neseniai susidūriau su įdomiu iššūkiu – reikėjo pritaikyti edukacinį robotą Lietuvos vaikams. Robotas jau turėjo angliškus pasakojimus, instrukcijas, melodijas ir įvairius garso efektus, tačiau lietuviškai nekalbėjo.

Iš pradžių atrodė, kad viskas gana paprasta: išversti tekstus, juos įgarsinti ir įkelti atgal į robotą. Tačiau pradėjus dirbti paaiškėjo, kad teks išspręsti gerokai daugiau problemų.

Taip gimė nedidelė sistema, sujungianti kelias skirtingas dirbtinio intelekto technologijas.

1. Kaip iš garso išgauti tekstą?

Pirmoji problema – originalūs roboto tekstai buvo saugomi garso failuose.

Žinoma, galėjau kiekvieną įrašą perklausyti ir rankiniu būdu užrašyti, kas jame sakoma. Bet kam gaišti laiką, jei šį darbą gali atlikti dirbtinis intelektas?

Pasitelkiau Whisper – AI kalbos atpažinimo technologiją (Speech-to-Text), kuri leidžia iš garso įrašų automatiškai išgauti tekstą.

Taip angliški garso failai virto tekstais, kuriuos jau buvo galima versti ir redaguoti.

2. Vertimas su OpenAI API

Kai turėjau angliškus tekstus, kitas žingsnis buvo jų vertimas į lietuvių kalbą.

Tam naudojau OpenAI API.

Tačiau norėjau ne tiesiog pažodinio vertimo. Robotas skirtas vaikams, todėl tekstai turėjo būti aiškūs, draugiški ir natūraliai skambantys.

Pavyzdžiui, angliškas sakinys gali būti gramatiškai taisyklingai išverstas, bet lietuviškai skambėti nenatūraliai arba būti per sudėtingas vaikui.

Todėl sistemoje palikau galimybę peržiūrėti ir redaguoti vertimus prieš pereinant prie įgarsinimo.

AI atliko didžiąją dalį vertimo darbo, tačiau galutinį rezultatą vis tiek galėjau kontroliuoti pati.

3. Lietuviškas balsas su ElevenLabs

Turint išverstus tekstus, reikėjo juos paversti garso įrašais.

Čia pasitelkiau ElevenLabs – AI technologiją, galinčią iš teksto sugeneruoti natūraliai skambantį balsą (Text-to-Speech).

Sistema leido sugeneruoti lietuvišką įgarsinimą, jį perklausyti ir, jei rezultatas netiko, pakoreguoti tekstą bei bandyti dar kartą.

Tačiau iškilo dar viena problema.

Originalūs ir naujieji įrašai ne visada buvo vienodo ilgio ar garsumo. O kai kuriuose originaliuose failuose kartu su balsu skambėjo ir muzika bei įvairūs garso efektai.

Vadinasi, vien pakeisti anglišką įrašą lietuvišku nepakako.

4. Kaip išsaugoti originalius garso efektus?

Čia susidūriau su dar vienu iššūkiu. Dalis roboto įrašų buvo ne tik kalba – prieš ją, po jos ar net kalbėjimo metu skambėjo muzika ir įvairūs garso efektai.

Nenorėjau jų prarasti, nes būtent šie garsai suteikia roboto pasakojimams gyvybės.

Sprendimui panaudojau Silero VAD (Voice Activity Detection) – AI technologiją, kuri nustato, kuriose garso įrašo vietose yra kalbama.

Kartu su FFmpeg galėjau automatiškai aptikti kalbos pradžią ir pabaigą, o įrašus suskaidyti ties pauzėmis. Taip buvo galima išsaugoti atskirai skambančius originalius garso efektus.

Tačiau kai kuriuose įrašuose balsas ir foniniai garsai skambėjo vienu metu. Tokiais atvejais pasirinkau kitą sprendimą – lietuvišką įgarsinimą sujungiau su naujai paruoštu garso fonu.

Kad balsas būtų aiškiai girdimas, sistema automatiškai pritildo foninius garsus tuo metu, kai kalba robotas, o kalbai pasibaigus jų garsumas vėl padidėja.

Šis garso apdorojimo būdas vadinamas audio ducking.

Taip pavyko išsaugoti pasakojimų atmosferą ir kartu užtikrinti, kad lietuviškas balsas būtų suprantamas.

5. O jei garso efektas netinka?

Dar viena įdomi galimybė – AI garso efektų generavimas.

Tam taip pat panaudojau ElevenLabs.

Jeigu originalus garsas netiko arba po apdorojimo rezultatas buvo prastos kokybės, galėjau sugeneruoti naują efektą.

Pavyzdžiui, vietoj netinkamo originalaus aplinkos garso sukurti naują, kuris geriau derėtų prie lietuviško pasakojimo.

Tai suteikė papildomos kūrybinės laisvės – nereikėjo apsiriboti vien originaliuose failuose esančiais garsais.

6. Garso apdorojimas su FFmpeg

Sugeneruoti lietuvišką balsą – tik dalis darbo. Reikėjo pasirūpinti, kad nauji įrašai skambėtų vientisai ir būtų tinkami robotui.

Tam naudojau FFmpeg, kuris padėjo automatizuoti kelias užduotis:

  • Aptiktiems kalbos segmentams pritaikyti garso apdorojimą.
  • Išsaugoti atskirai skambančius garso efektus.
  • Sujungti lietuvišką balsą su foniniais garsais.
  • Automatiškai pritildyti foną kalbėjimo metu (audio ducking).
  • Suvienodinti galutinių įrašų garsumą su originalais.
  • Paruošti robotui tinkamo formato failus.

Svarbiausia, kad šių veiksmų nereikėjo kiekvieną kartą atlikti rankiniu būdu. Sistema leido apdoroti įrašus pagal nustatytas taisykles, o man liko galimybė perklausyti rezultatą ir prireikus jį pakoreguoti.

7. Nuo atskirų AI įrankių iki vienos sistemos

Žinoma, visa tai galima būtų atlikti ir rankiniu būdu: įkelti failą į vieną įrankį, nukopijuoti rezultatą į kitą, atsisiųsti įrašą, apdoroti jį ir taip kartoti su kiekvienu garsu.

Tačiau kai failų daug, toks procesas greitai tampa varginantis.

Todėl sukūriau įrankį, kuris sujungia pagrindinius etapus į vieną darbo eigą.

Iš esmės tai buvo individualaus AI automatizavimo sprendimo kūrimas. Užuot kiekvieną įrankį naudojusi atskirai, sujungiau juos į vieną procesą, kuriame duomenys perduodami tarp skirtingų technologijų, o man lieka galimybė peržiūrėti ir koreguoti rezultatą.

Visas procesas atrodo taip:

  1. Originalus garsas – įkeliamas angliškas garso failas.
  2. Whisper – iš garso automatiškai išgaunamas tekstas.
  3. OpenAI API – tekstas išverčiamas į lietuvių kalbą.
  4. Vertimo peržiūra – prireikus tekstą galima pataisyti.
  5. ElevenLabs – sugeneruojamas lietuviškas balsas.
  6. Garso analizė – nustatomi kalbos segmentai, įvertinami foniniai garsai.
  7. Garso efektai – panaudojami išsaugoti arba AI sugeneruoti efektai.
  8. FFmpeg – sujungiami takeliai, suvienodinamas garsumas ir paruošiamas galutinis failas.

Svarbiausia, kad procesas nėra visiškai automatinis ir nekontroliuojamas.

Kiekviename etape galiu perklausyti rezultatą, pakoreguoti vertimą, sugeneruoti kitą balsą ar pakeisti garso efektą.

AI atlieka pasikartojantį darbą, o žmogus priima sprendimus dėl galutinio rezultato.

8. Paskutinis žingsnis – lietuviški garsai robote

Kai visi garso failai buvo paruošti, liko juos perkelti į patį robotą.

Tam teko susipažinti su įrenginio failų struktūra ir suprasti, kaip jis saugo bei atkuria savo garsus.

Naujieji failai turėjo atitikti įrenginio reikalavimus, kad visos funkcijos veiktų tinkamai.

Galiausiai angliški įrašai buvo pakeisti lietuviškais.

Ir smagiausia viso projekto dalis – išgirsti, kaip robotas, kuris iki tol kalbėjo angliškai, prabyla lietuviškai!

Originalas (anglų k.)
Lietuviškai

Ką parodė šis projektas?

Šis projektas buvo geras priminimas, kad dirbtinio intelekto vertė slypi ne vien atskiruose įrankiuose, bet ir gebėjime juos sujungti.

Whisper atpažįsta kalbą. OpenAI padeda išversti tekstą. ElevenLabs sukuria balsą ir garso efektus. FFmpeg leidžia viską apdoroti ir sujungti.

Kiekviena technologija sprendžia skirtingą užduotį, tačiau tik veikdamos kartu jos padėjo pasiekti norimą rezultatą.

Ar AI viską padarė už mane? Ne.

Reikėjo sugalvoti visą procesą, pasirinkti tinkamus įrankius, juos integruoti, tikrinti rezultatus ir spręsti iškilusias problemas.

Tačiau be AI šis projektas būtų pareikalavęs gerokai daugiau laiko ir rankinio darbo.

Ir tai, mano manymu, yra viena įdomiausių dirbtinio intelekto panaudojimo krypčių – ne tiesiog generuoti tekstus ar paveikslėlius, o kurti sprendimus, kurie padeda atlikti realius darbus.


Naudotos technologijos

  • Whisper (Speech-to-Text) – angliškos kalbos atpažinimui ir teksto išgavimui iš garso įrašų.
  • OpenAI API – tekstų vertimui į lietuvių kalbą.
  • ElevenLabs (Text-to-Speech) – lietuviškam įgarsinimui.
  • Silero VAD – kalbos pradžiai, pabaigai ir pauzėms garso įrašuose aptikti.
  • ElevenLabs AI Sound Effects – naujiems garso efektams generuoti.
  • FFmpeg – garso įrašų karpymui, takelių sujungimui, automatiniam foninių garsų pritildymui (audio ducking) ir garsumo suvienodinimui.
  • Integracija su įrenginiu – lietuviškų garso failų perkėlimui ir jų veikimo patikrinimui.

Turite idėją ar projektą?

Parašykite – aptarsime galimybes ir rasime tinkamiausią sprendimą.

Susisiekti