„Whisper“ modelio panaudojimas su „Gradio“ sąsaja lietuvių kalbos atpažinimui

„Whisper“ modelio panaudojimas su „Gradio“ sąsaja lietuvių kalbos atpažinimui

Šiame straipsnyje aptarsime, kaip panaudoti „OpenAI Whisper“ dirbtinio intelekto modelį kartu su „Gradio“ biblioteka, lietuvių kalbos transkribavimui. Programinis kodas bus vykdomas „Google Colab“ aplinkoje naudojant „Python“ programavimo kalbą, kas leis lengvai išbandyti sprendimą be sudėtingos konfigūracijos kompiuteryje.

„Whisper“ yra galingas kalbos atpažinimo modelis, gebantis transkribuoti ir versti daugelį kalbų, įskaitant ir lietuvių. Jis pasižymi aukštu tikslumu ir greičiu, todėl yra puikus pasirinkimas automatiniu būdu transkribuojant ilgus garso ar vaizdo įrašus.

„Gradio“ - „Python“ programavimo kalbos biblioteka, skirta greitam ir paprastam dirbtinio intelekto modelių sąsajų kūrimui. Naudodami „Gradio“ galime sukurti intuityvią vartotojo sąsają, leidžiančią kitiems išbandyti „Whisper“ modelį. Ši biblioteka ypač naudinga demonstruojant modelio galimybes, kuriant prototipus ar integruojant modelius į esamus projektus.

Pasiruošimas

Pirmiausiai turime įdiegti „Whisper“ ir „Gradio“ bibliotekas. Tai galite padaryti naudodami pip paketų diegimo įrankį:

!pip install git+https://github.com/openai/whisper.git
!pip install gradio

Toliau savo „Python“ aplinkoje importuojame šias bibliotekas:

import whisper
import gradio as gr

Modelio užkrovimas

„Whisper“ biblioteka siūlo įvairius iš anksto apmokytus modelius, kurie skiriasi dydžiu, greitaveika ir tikslumu. Šiame pavyzdyje naudojame „large“ modelį, tačiau galite pasirinkti ir kitus variantus: „tiny“, „base“, „small“ arba „medium“. Kuo modelis didesnis, tuo jis tikslesnis.

model = whisper.load_model("large")

Transkripcijos funkcija

Sukurkime funkciją, kuri naudos „Whisper“ modelį gauto audio įrašo transkripcijai:

def transcribe(audio):
   result = model.transcribe(audio)
   return result["text"]

Gradio sąsaja

Naudodami „Gradio“ biblioteką, sukurkime paprastą vartotojo sąsają, leidžiančią įrašyti garsą naudojantis mikrofonu arba įkeliant audio failą ir gauti jo transkripciją:

iface = gr.Interface(
   fn=transcribe,
   inputs=gr.Audio(type="filepath"),
   outputs="text",
   title="Whisper transkripcija",
   description="Naudokite savo mikrofoną kalbos transkripcijai su OpenAI „Whisper" modeliu."
)
iface.launch()

Ši sąsaja turės garso įvestį ir grąžins tekstinį rezultatą. Paleidus launch() metodą, „Gradio“ sąsaja bus prieinama naršyklėje ir pasiekiama sugeneruotu unikaliu adresu.