<?xml version="1.0" encoding="utf-8"?>
<Gradivo ID="164816" NadgradivoID="0" NRID="25392595" OceID="0" DomainUrl="https://repozitorij.uni-lj.si/" IzpisPolniUrl="https://repozitorij.uni-lj.si/IzpisGradiva.php?lang=slv&amp;id=164816" StOgledov="856" StPrenosov="284" StOcen="0" VsotaOcen="0" DatumIzvoza="2026-08-08 18:51:26" OcenaSkupna="0" StPodgradiv="0" StudijskiProgramEvsID="1000468" JeIndeksirano="0" JeVecAvtorjev="0" DovoliZahtevkeZaDostop="0">
  <PID Url="http://hdl.handle.net/20.500.12556/RUL-164816">20.500.12556/RUL-164816</PID>
  <Naslov>Aplikacija za poganjanje jezikovnih modelov na mobilnih napravah</Naslov>
  <Podnaslov></Podnaslov>
  <TujJezik_Naslov>Application for running language models on mobile devices</TujJezik_Naslov>
  <TujJezik_Podnaslov></TujJezik_Podnaslov>
  <Opis>Predstavljen je postopek izdelave aplikacije za mobilni operacijski sistem Android, ki omogoča
poganjanje modelov nevronskih mrež z arhitekturo transformer.
Vse procesiranje se odvija lokalno, kar omogoča večjo varnost naših podatkov in neodvisnost od internetne povezave.
Aplikacija je testirana z modeloma Whisper za
transkripcijo govora in Phi-2 za obdelavo naravnega jezika.

Praktični del obsega izgradnjo aplikacije za Android z ogrodjem Jetpack Compose in vključevanje obstoječih C++ knjižnic s spletišča GitHub.
Te omogočajo poganjanje umetnointeligenčnih modelov, ki sem jih natreniral v okviru te diplomske naloge.
Gre za trening STT modela Whisper-Small in LLM Phi-2 s končnim ciljem razumeti slovenski jezik.
Obsega tudi pripravo učne množice ARTUR1.0 s transkripcijami zvočnih posnetkov, prevajanje učne množice OASST1 in uporabo učnih podatkov za učenje modelov.

Omenjena modela sta v aplikaciji pognana s pomočjo knjižnic whisper.cpp in llama.cpp .
V končni verziji aplikacije lahko izrečemo vprašanje in posneti zvok se preda v obdelavo modelu Whisper, ki iz njega ustvari besedilo.
Alternativno lahko svoje vprašanje tudi natipkamo v za to vnaprej določeno polje.
Ob kliku na gumb &quot;pošlji&quot; aplikacija vnešeno besedilo preda jezikovnemu modelu.
Ta ga obdela in zatem začne ustvarjati odgovor, besedo po besedo, podobno kot vidimo v ostalih spletnih storitvah.
Generirano besedilo se pojavi kot odgovor sistema pod našim vprašanjem.

Modele sem evalviral s testnimi množicami in jih primerjal z obstoječimi spletnimi rešitvami.
Proces transkripcije govora sem natančenje primerjal z aplikacijo Govori.si.
Vnos besedila s pomočjo govora predstavlja varno alternativo tipkanju v situacijah, ki od nas zahtevajo pozornost na okolico.
Vnešeno besedilo obdela LLM Phi-2, ki sem ga primerjal z verjetno najbolj znanim LLM-om ChatGPT, pa tudi z odprtokodnim Mistralom.

Odgovarjanje sem meril na svojem lastnem telefonu, Poco F3.
Transkripcija govora je relativno počasna glede na spletno-povezljive rešitve, prav tako čas do generiranja prvega zloga v odgovoru.
Nadaljnji zlogi so generirani hitreje, s hitrostjo okoli 2,6 zloga/s.</Opis>
  <TujJezik_Opis>This thesis presents the process of developing an application for the Android mobile operating system that can run neural networks with a transformer architecture.
The application has been tested with the Whisper model for speech transcription and the Phi-2 model for natural language processing.

The practical part includes construction of the Android application using the Jetpack Compose framework
and integration of existing C++ libraries from GitHub.
Additionally, it covers the training of the Whisper-Small STT model and the Phi-2 LLM.
It also involves preparing the ARTUR1.0 dataset with audio transcription and translating
the OASST1 dataset, utilizing these datasets for model training.

The mentioned models are executed in the application using the whisper.cpp and llama.cpp libraries.
In the final version of the application, users can ask a question by speaking, with the recorded audio being processed by the Whisper model to convert it into text.
Alternatively, users can type their questions into a predefined field. Once the text is submitted,
it is processed by the language model, which generates a response.
The application then displays this response below the user&#039;s question.

I evaluated the models using test datasets and compared them with existing online solutions.
I compared the speech transcription process more precisely with the Govori.si application, developed in my mentor&#039;s laboratory.
Voice input represents a safe alternative to typing in situations that require our attention to the surroundings.
The entered text is processed by the Phi-2 LLM, which I compared with probably the most well-known LLM, ChatGPT, as well as the open-source Mistral.
I measured the response time on my own phone, a Poco F3.
Speech transcription is quite slow, as is the time to generate the first token in the response.
Subsequent tokens are generated faster, at a rate of approximately 2.6 tokens per second.</TujJezik_Opis>
  <KljucneBesede>
    <Beseda>Android</Beseda>
    <Beseda>transformer</Beseda>
    <Beseda>jezikovni model</Beseda>
    <Beseda>prepoznava govora</Beseda>
    <Beseda>aplikacija</Beseda>
  </KljucneBesede>
  <TujJezik_KljucneBesede>
    <Beseda>Android</Beseda>
    <Beseda>transformer</Beseda>
    <Beseda>language model</Beseda>
    <Beseda>speech recognition</Beseda>
    <Beseda>application</Beseda>
  </TujJezik_KljucneBesede>
  <Potrjeno>true</Potrjeno>
  <JeZaklenjeno>false</JeZaklenjeno>
  <JeRecenzirano>false</JeRecenzirano>
  <Zaloznik></Zaloznik>
  <Izvor></Izvor>
  <Jezik ID="1060" ISO639-3="slv">Slovenski jezik</Jezik>
  <TujJezik ID="1033" ISO639-3="eng">Angleški jezik</TujJezik>
  <Povezave></Povezave>
  <Pokrivanje></Pokrivanje>
  <CasovnoPokritje></CasovnoPokritje>
  <AvtorskePravice></AvtorskePravice>
  <VrstaGradiva ID="mb11" DRIVER="info:eu-repo/semantics/bachelorThesis">Diplomsko delo/naloga</VrstaGradiva>
  <DatumVstavljanja>2024-11-13 10:19:15</DatumVstavljanja>
  <DatumObjave>2024-11-13 10:19:17</DatumObjave>
  <DatumSpremembe>2024-12-30 08:39:11</DatumSpremembe>
  <DatumTrajnegaHranjenja>0000-00-00 00:00:00</DatumTrajnegaHranjenja>
  <LetoIzida>2024</LetoIzida>
  <LetoIzidaDo>0</LetoIzidaDo>
  <KrajIzida></KrajIzida>
  <LetoIzvedbe>0</LetoIzvedbe>
  <KrajIzvedbe></KrajIzvedbe>
  <Opomba></Opomba>
  <StStrani></StStrani>
  <StevilcenjeNivo1></StevilcenjeNivo1>
  <StevilcenjeNivo2></StevilcenjeNivo2>
  <Kronologija></Kronologija>
  <Patent_Stevilka></Patent_Stevilka>
  <Patent_DatumVeljavnosti>0000-00-00</Patent_DatumVeljavnosti>
  <VerzijaDokumenta>NiDoloceno</VerzijaDokumenta>
  <StatusObjaveDrugje>NiDoloceno</StatusObjaveDrugje>
  <VrstaStroskaObjave>NiDoloceno</VrstaStroskaObjave>
  <DatumPoslanoVRecenzijo>0000-00-00</DatumPoslanoVRecenzijo>
  <DatumSprejetjaClanka>0000-00-00</DatumSprejetjaClanka>
  <DatumObjaveClanka>0000-00-00</DatumObjaveClanka>
  <EmbargoDo></EmbargoDo>
  <VrstaEmbarga ID="1" Naziv="Takojšnja javna objava" OpenAIREDostop="openAccess"></VrstaEmbarga>
  <Osebe>
    <Oseba ID="136772" Ime="Samo" Priimek="Hribar" AltIme="" VlogaID="70" VlogaNaziv="Avtor" ConorID="" Afiliacija="" ArrsID="0" ORCID=""></Oseba>
    <Oseba ID="24592" Ime="Matevž" Priimek="Pesek" AltIme="" VlogaID="991" VlogaNaziv="Mentor" ConorID="214576995" Afiliacija="" ArrsID="35071" ORCID=""></Oseba>
  </Osebe>
  <Identifikatorji>
    <Identifikator ID="16" Sifra="VisID" Naziv="VisID" URL="">37235</Identifikator>
    <Identifikator ID="3" Sifra="CobissID" Naziv="COBISS_ID" URL="https://plus.cobiss.net/cobiss/si/sl/bib/207639043">207639043</Identifikator>
  </Identifikatorji>
  <Datoteke>
    <Datoteka ID="195549" DatotekaNRID="13992185" NamenDatotekeID="2" NamenDatoteke="Predstavitvena datoteka" FormatDatotekeID="2" FormatDatoteke=".pdf" MIME="application/pdf" IkonaFormata="pdf.png" IkonaFormataPolniUrl="https://repozitorij.uni-lj.si/teme/rulDev/img/fileTypes/pdf.png" VelikostDatoteke="846862" VelikostDatotekeKratko="827,01 KB" DatumVstavljanja="2024-11-13 10:19:20" JeZbrisana="false" JeJavnoVidna="true" JeIndeksirana="true" JeVidno="true" VidnoOd="01.01.1970" Zaporedje="0">
      <Naziv>Hribar_Samo_-_Aplikacija_za_poganjanje_jezikovnih_modelov_na_mobilnih_napravah.pdf</Naziv>
      <OrgNaziv>Hribar_Samo_-_Aplikacija_za_poganjanje_jezikovnih_modelov_na_mobilnih_napravah.pdf</OrgNaziv>
      <URL></URL>
      <Opis></Opis>
      <OpisTujJezik></OpisTujJezik>
      <UrlObdelave></UrlObdelave>
      <FrekvencaAzuriranjaID>1</FrekvencaAzuriranjaID>
      <Verzija></Verzija>
      <MD5>14F21ACD4FD4BC4C1421A154D01C41D9</MD5>
      <SHA256>15ce196c383dd0ac015faed31575404367aa587ef1e8e9b3f779bb836b3052db</SHA256>
      <UUID>ff5f34fe-a19f-11ef-b232-0050569b8976</UUID>
      <PID></PID>
      <PrenosPolniUrl>https://repozitorij.uni-lj.si/Dokument.php?lang=slv&amp;id=195549</PrenosPolniUrl>
      <Vsebine>
        <Vsebina TipVsebine="GoloBesedilo" JezikID="1060" Oznaka="" Dolzina="69920"></Vsebina>
      </Vsebine>
    </Datoteka>
  </Datoteke>
  <Organizacije>
    <Organizacija OrganizacijaID="25" Kratica="FRI" ZavodEvsID="0000066" Logo="" LogoPolniUrl="https://repozitorij.uni-lj.si/teme/rulDev/img/logo/">Fakulteta za računalništvo in informatiko</Organizacija>
  </Organizacije>
  <OrganizacijeVira>
  </OrganizacijeVira>
  <MetodeZbiranjaPodatkov>
  </MetodeZbiranjaPodatkov>
  <TipologijaDela ID="2.11" Koda="2.11" Naziv="Diplomsko delo" SchemaOrg="Thesis"></TipologijaDela>
  <Ostalo>
    <StIrodsDatotek>0</StIrodsDatotek>
    <StDatotekPodTrajnimEmbargom>0</StDatotekPodTrajnimEmbargom>
    <StDatotekZOmejenimDostopom>0</StDatotekZOmejenimDostopom>
  </Ostalo>
</Gradivo>
