<?xml version="1.0" encoding="utf-8"?>
<Gradivo ID="158958" NadgradivoID="0" NRID="24473629" OceID="0" DomainUrl="https://repozitorij.uni-lj.si/" IzpisPolniUrl="https://repozitorij.uni-lj.si/IzpisGradiva.php?lang=slv&amp;id=158958" StOgledov="1743" StPrenosov="354" StOcen="0" VsotaOcen="0" DatumIzvoza="2026-09-16 01:18:41" OcenaSkupna="0" StPodgradiv="0" StudijskiProgramEvsID="0" JeIndeksirano="0" JeVecAvtorjev="0" DovoliZahtevkeZaDostop="0">
  <PID Url="http://hdl.handle.net/20.500.12556/RUL-158958">20.500.12556/RUL-158958</PID>
  <Naslov>S poizvedovanjem obogateno dopolnjevanje programske kode za lokalne projekte z velikimi jezikovnimi modeli</Naslov>
  <Podnaslov>magistrsko delo</Podnaslov>
  <TujJezik_Naslov>Retrieval-augmented code completion for local projects using large language models</TujJezik_Naslov>
  <TujJezik_Podnaslov></TujJezik_Podnaslov>
  <Opis>Programiranje s pomočjo velikih jezikovnih modelov postaja vse bolj razširjeno. Pojavljajo se pomisleki glede zasebnosti kode pri uporabi komercialnih rešitev. Težava je tudi vse močnejša strojna oprema, potrebna za izvajanje velikih modelov. V delu se zato osredotočimo na uporabo modelov velikosti 160 milijonov parametrov, ki so primerni za lokalno izvajanje, in jih obogatimo z uporabo poizvedovanja iz lokalnih projektov. Na odprtokodnih Python datotekah učimo modela GPT-2 in RETRO, ju eksperimentalno primerjamo in potrdimo korist poizvedovanja na podlagi vektorskih vložitev. Uspešnost modelov izboljšamo s kontekstnim poizvedovanjem, ki primerne kontekste izbere na podlagi Jaccardovega koeficienta podobnosti žetonov. Doprinos kontekstnega poizvedovanja preverimo na večjih modelih in ugotovimo, da je pristop kljub enostavnosti koristnejši od arhitekture RETRO. Izpostavimo tudi ključno vlogo primerne tokenizacije za doseganje dobrih rezultatov velikih jezikovnih modelov.</Opis>
  <TujJezik_Opis>The use of large language models is becoming increasingly widespread among developers. However, privacy and computational requirements are problematic with commercial solutions and the use of large models. In this work, we focus on using large language models with 160 million parameters that are suitable for local execution and augmentation with retrieval from local projects. We train GPT-2 and RETRO models on open-source Python files, experimentally compare them and confirm the benefits of vector embedding based retrieval. Additionally, we improve our models&#039; performance with in-context retrieval, which retrieves the context based on the Jaccard similarity of tokens. We further evaluate in-context retrieval on larger models and conclude that, despite its simplicity, the approach is better than using the RETRO architecture. We highlight the key role of proper tokenization in achieving the full potential of large language models.</TujJezik_Opis>
  <KljucneBesede>
    <Beseda>veliki jezikovni modeli</Beseda>
    <Beseda>dopolnjevanje kode</Beseda>
    <Beseda>s poizvedovanjem obogateno dopolnjevanje</Beseda>
    <Beseda>kontekstno poizvedovanje</Beseda>
  </KljucneBesede>
  <TujJezik_KljucneBesede>
    <Beseda>large language models</Beseda>
    <Beseda>code completion</Beseda>
    <Beseda>retrieval-augmented generation</Beseda>
    <Beseda>in-context retrieval</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="mb22" DRIVER="info:eu-repo/semantics/masterThesis">Magistrsko delo/naloga</VrstaGradiva>
  <DatumVstavljanja>2024-06-23 08:15:07</DatumVstavljanja>
  <DatumObjave>2024-06-23 08:15:11</DatumObjave>
  <DatumSpremembe>2024-07-07 03:19:35</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="106365" Ime="Marko" Priimek="Hostnik" AltIme="" VlogaID="70" VlogaNaziv="Avtor" ConorID="" Afiliacija="" ArrsID="0" ORCID=""></Oseba>
    <Oseba ID="126192" Ime="Marko" Priimek="Robnik Šikonja" AltIme="" VlogaID="991" VlogaNaziv="Mentor" ConorID="" Afiliacija="" ArrsID="0" ORCID=""></Oseba>
  </Osebe>
  <Identifikatorji>
    <Identifikator ID="4" Sifra="UDK" Naziv="UDK" URL="">004.42</Identifikator>
    <Identifikator ID="16" Sifra="VisID" Naziv="VisID" URL="">139849</Identifikator>
    <Identifikator ID="3" Sifra="CobissID" Naziv="COBISS_ID" URL="https://plus.cobiss.net/cobiss/si/sl/bib/200036099">200036099</Identifikator>
  </Identifikatorji>
  <Datoteke>
    <Datoteka ID="186689" DatotekaNRID="13834881" 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="1343882" VelikostDatotekeKratko="1,28 MB" DatumVstavljanja="2024-06-23 08:15:11" JeZbrisana="false" JeJavnoVidna="true" JeIndeksirana="true" JeVidno="true" VidnoOd="01.01.1970" Zaporedje="0">
      <Naziv>12100.pdf</Naziv>
      <OrgNaziv>12100.pdf</OrgNaziv>
      <URL></URL>
      <Opis></Opis>
      <OpisTujJezik></OpisTujJezik>
      <UrlObdelave></UrlObdelave>
      <FrekvencaAzuriranjaID>1</FrekvencaAzuriranjaID>
      <Verzija></Verzija>
      <MD5>3CECA9D8B05BF4E03E75046B29E2A1B0</MD5>
      <SHA256>155ec577bbaf2f92355d7ff04b4ab62137ad080debbe5344c152a73702a4aabf</SHA256>
      <UUID>f281b32e-3127-11ef-8779-0050569b8976</UUID>
      <PID></PID>
      <PrenosPolniUrl>https://repozitorij.uni-lj.si/Dokument.php?lang=slv&amp;id=186689</PrenosPolniUrl>
      <Vsebine>
        <Vsebina TipVsebine="GoloBesedilo" JezikID="1060" Oznaka="" Dolzina="131504"></Vsebina>
      </Vsebine>
    </Datoteka>
  </Datoteke>
  <Organizacije>
    <Organizacija OrganizacijaID="11" Kratica="FMF" ZavodEvsID="0000064" Logo="" LogoPolniUrl="https://repozitorij.uni-lj.si/teme/rulDev/img/logo/">Fakulteta za matematiko in fiziko </Organizacija>
  </Organizacije>
  <OrganizacijeVira>
  </OrganizacijeVira>
  <MetodeZbiranjaPodatkov>
  </MetodeZbiranjaPodatkov>
  <TipologijaDela ID="2.09" Koda="2.09" Naziv="Magistrsko delo" SchemaOrg="Thesis"></TipologijaDela>
  <Ostalo>
    <StIrodsDatotek>0</StIrodsDatotek>
    <StDatotekPodTrajnimEmbargom>0</StDatotekPodTrajnimEmbargom>
    <StDatotekZOmejenimDostopom>0</StDatotekZOmejenimDostopom>
  </Ostalo>
</Gradivo>
