---
title: Martin Šarišský
published: true
taxonomy:
    category: [vp2023,bp2024,dp2026]
    tag: [chatbot,rasa,dialog,nlp]
    author: Daniel Hladek
---

rok začiatku štúdia: 2021

# Diplomová praca 2026


Ciele:

- Vytvoriť systém pre spracovanie právnych informácií. Systém by mal vedieť vyhľadávať v rozsudkoch, zákonoch a vyhláškac
, odpovedať na otázky a sumarizovať dokumenty. Je možné , že riešenie úlohy si vyžiada viac krokov.
- Vytvoriť sadu vzorových úloh pre vyhodnotenie takéhoto systému.
- Zlepšiť generovanie odpovedí pre úlohy vyžadujúce viac krokov.

Príprava:

- Zopakujte si Python. 
- Vyskúšajte si prácu s veľkými jazykovými modelmi. Nainštalujte si oollama. 
- Oboznámte sa s framewworkom LangChain. 
- pozrite si LangChain Transformers Agents. 
- Ako funguje FunctionCalling - AgentTools?. 
- Zistite ako funguje REACT (Reasoning and Acting) Agent - nájdite článok na Scholar.
- Zistite ako funguje dotrénovnaie veľkých jazykových modelov. Zistite čo je to PEFT (LORA, QLORA) a čo je to kvantizácia.  Zisite čo je to "few shot" prompting.  
- Čo je to inferenčný server. Zistite čo je to VLLM, na čo je to dobré. Pozri si LocalAI.

## Diplomový projekt 2025

Stretnutie 14.5.2025

Stav:

- Zaindexované zákony a vyhlášky vyhlásené v roku 2022 pomocou FAISS a SlovakBert-mnlr
- Urobené gradio demo pomocou langchain, ktoré ku dotazu nájde a zobrazí 3 najlepšie dokumenty.

Úlohy:

- Zlepšite skript pre predspracovanie dát. Pridajte ďalšie dáta, identifikujte a opravte nedostatky. Chceme mať k dispozícii právne kompletné právne predpisy v súčasnom znení.
- Preštudujte si knižnicu LangGraph a "function calling". 
- Zistite, ako "znalostný graf - knowledge graph" dokáže vylepšiť výsledky vyhľadávania v zákonoch. Graph RAG.


Zásobník úloh:

- Vyjadrite vnútorné a vzájomné vzťahy medzi právnymi predpismi.
- Vytvorte "pekné" webové rozhranie a príslušné Docker skripty pre nasadenie dema.
- Vytvorte agenta, ktorý bude vedioeť riešiť právne problémy.
- Zostaviť testovacie dáta. Vzorovú množinu otázok, odpovedí a relevantných dokumentov. Pomocou tejto množiny vyhodnotiť systém. Vyhodnotneie sa skladá z dvoch častí - vyhdonotenie vyhľadávania a vyhodnotenie automatických odpovedí.
- Inšpirovať sa stránkou https://aipravnik.sk/
- Natrénujte model pre úlohu sumarizácie súdnych rozhodnutí (nízka priorita).


Stretnutie 10.3.2025

Úlohy:

- [x] Preštudovať - ako zostaviť RAG systém pomocou LangChain
- [-] Vytvoriť databázu právnych informácií - texty zákonov, vyhlášok a rozsudkov spolu s metainformáciami. Vedúci pridelí prístup na QUADRO. (úloha Šarišský)
- [-] Zistiť ako fungujú agentové systémy na báze LLM - React. A volanie "nástrojov" function calling pomocou LLM.
- Získajte prístup na QUADRO. V adresári  /mnt/sharedhome/hladek/corpora/slovak_law/ sú dáta. Dáta premente do JSON.
Extrahujte text, vytiahnite metainformácie. Na extrakciu textu využite vhodnú knižnicu. Napr. Apache TIKA.
- [-] Vytvoriť RAG systém pre spracovanie tejto databázy. Pozrite si: Inšpirácia prácou Valerii Kutsenko, Yevhenii Leonov,  [Oleh Poiasnik](/students/2022/oleh_poiasnik). Môžete sa inšpirovať [GIT BP Poiasnik](https://git.kemt.fei.tuke.sk/op405wm/Bakalarska_praca) (úloha Ščišľak)

Myšlienkový postup pre ZP:

1. Zadefinujete úlohu a pojmy.
2. Vysvetlíte, ako sa táto úloha rieši vo svete.
3. Napíšete, ako ste túto plohu riešlili Vy a prečo. 
4. Vyhodnottíte Vaše riešenie. Porováte výsledky so svetom a identifikujete miesta na zlepšenie.

Zásobník úloh:

- [x] Dáta sa vložia do databázy a zaindexujú vhodným SBERT modelom.
- [ ] Vyhľadať na internete množinu vzorových právnych otázok a vyhodnotiť systém (Šarišský)






# Bakalárska práca 2024


[Git repo](https://git.kemt.fei.tuke.sk/ms058bd/vp2023)

Súvisiace materiály:

- [Projektová stránka](/topics/chatbot)
- [Repozitár s webovou aplikáciou](https://git.kemt.fei.tuke.sk/sh662er/rasa-flask-website)
- [Repozitár s chatbotom](https://git.kemt.fei.tuke.sk/sh662er/Rasa)
- Bakalárska práca [Samuel Horáni](/students/2019/samuel_horani)
- video kanál s [RASA tutoriálom](https://www.youtube.com/watch?v=rlAQWbhwqLA&list=PL75e0qA87dlHQny7z43NduZHPo6qd-cRc)
- Slovenský Spacy model https://github.com/hladek/spacy-skmodel

Návrh na zadanie BP:

Dialógový systém pre zodpovedanie najčastejšie kladených otázok

1. Vypracujte prehľad metód dialógových systémov s použitím pravidiel a jazykových modelov. 
2. Navrhnite a overte bázu pravidiel pre dialógový systém pre pomoc pri komunikácii občana s mestským magistrátom.
3. Vytvorte webové demo pre chatbota.
4. Identifikujte slabé miesta a navrhnite zlepšenia dialógového systému.



Nápady na balakársku prácu:

- chatbot pre komunikáciu s mestom
- vytvorenie NLU databázy.
- Urobenie web rozhrania.
- dá sa to prepojiť aj na QA systém.

Stretnutie 23.02.2024

Stav:

- Práca na text aj na pravidlách.

Stretnutie 9.2.2024

Stav:

- Urobené nové testovacie scenáre a vyhodnotenie modelu.
- Pridané pravidlá pre FAQ a chitchat.
- Vyskúšané PrivateGPT.


Úlohy:

- Vytvorte Dockerfile na nasadenie aplikácie.
- Podľa výsledkov vyhodnotenia zlepšite bázu pravidiel.
- Pracujte na texte

Zásobník úloh:

- Ďalej skúšajte PrivateGPT. Zmente "prompt" pre vyhľadávanie. Prompt zmente na slovenský. Napr. "Si asistent pre vyhľadávanie a hovoríš po slovensky."  Model nastavte na LLAMA 7B 4bit. Na embedingy skúste SlovakBERT-MNLR.


Stretnutie 4.1.2024

Stav:

- Splnené úlohy z minulého stretnutia.

Úlohy:

- Vypracujte prezentáciu s výsledkami zo semestra.
- Pokračujte v písaní. 
- Vytvorte nové testovacie scenáre, vyhodnotte model a doplnte výslekdy do práce.
- Do chatbota doplňte pravidlá pre [FAQ](https://rasa.com/docs/rasa/chitchat-faqs/)
- Zdrojové kódy dajte na GIT.

Zásobník úloh:

- Rozbehať PrivateGPT a integrovať ho do RASA.

Stretnutie 8.12.

Stav:

- Práca na databáze pravidiel pre dialóg. Pravidlá obsahujú najčastejšie otázky týkajúce sa digitálnych služieb.


Úlohy:

- [x] Vedúci finalizuje zadanie.
- [x] Pokračujte v písomnej práci.
- [x] Pokračujte v tvorbe webovej aplikácie - integrujte pravidlá od kolegu Ščišľaka-
- [x] Zistite ako pracujú veľké jazykové modely a napíšte si poznánmky.
- [x] Zistite, čo je to "Retrieval Augumented Generation", ako to funguje a na čo je to dobré.
- [x] Oboznámte sa so softvérom PrivateGPT. Zistite ako funguje, napíšte is poznámky-
- [x] Pridajte kapitolu o Získavaníí dokumentov pre použitie v dialógových systémoch.

Zásobník úloh:

- [-] Na školský server alebo na vlastnú M1 nainštalujte PrivateGPT.


Stretnutie 10.11.2023

Stav:

- Web app funguje.  Frontend je HTML, CSS, Javascrip - axios.
- Zdrojáky sú na https://git.kemt.fei.tuke.sk/ms058bd/vp2023. 

Úlohy:

- Pokračujte
- Vedúci sa pozrie na build - Dockerfile.

Stretnutie 27.10.2023

- Pokračuje písomná príprava.
- Pokračuje práca na stránke. 

Úlohy:

- Pokračujte v otvorených úlohách.
- Preskúmajte možnosti vytvorenia vlastného frontentu pre RASA chatbota. Zistite viaceré alternatívy.

Stretnutie 6.10.2023

Stav:

- Dockerfile in progress
- Teoretická a písomná príprava in progress

Úlohy:

- Pokračujte


Stretnutie 29.9.2023

Stav:

- Ten istý ako pri minulom stretnutí, kódy sú na KEMT GITe. 
- Momentálne vie chatbot poskytnúť kontakt na človeka, ktorý sa zaoberá danou agendou.

Úlohy:

- [-]  Dokončiť demo do podoby vhodnej na nasadenie. Dokončiť Dockerfile, dokončiť pravidlá. Vedúci pomôže so zverejnením.
- [-] Zistite, akým spôsobom sa vyhodnocuje-testuje chatbot. Napíšte, ktoré scenáre chatbota sú implementované a ku nim napíšte "testovacie dialógy".
- [-] Začnite písať baklársku prácu a pripravte "draft". V práci vysvetlite, čo je to NLU, ako sa robí. Ako príklad uveďte Vášho četbota. Do práce uvedte aj priebeh a výsledky testovania.

Zásobník úloh:

- Je potrebné aby chatbot sa vedel "učiť", resp. upraviť svoje pravidlá podľa meniacich sa skutočností. Je potrebné vymyslieť webovú aplikáciu pre úpravu bázy pravidiel aj zamestnancami magistrátu.
- Identifikuje, aké ďalšie úlohy by mohol riešiť chatbot.
- Zlepšite chatbota aby spolupracoval s kognitívnym vyhľadávaním, práca [Kristián Sopkovič](/students/2019/kristian_sopkovic).


## Vedecký projekt 2023


Ciele:

- Napísať krátku písomnú správu
- Oboznámiť sa s technológiou RASA a so súvisiacimi technológiami NLP
- Vytvoriť jednoduchého chatbota ktorý bude komunikovať po slovensky.

Stretnutie 5.5

Stav:

- Draft písomnej správy
- Začiatok práce s Dockerfile


Úlohy:

- Prepracujte "blog" na uverejnenie na stránke.
- [-] Zlepšiť bázu pravidiel chatbota a dať na git
- [-] Identifikovať slabé miesta, porozmýšľať ako by sa to dalo zlepšiť.
 


Stretnutie 21.4.

Stav:

- Chatbot funguje pre vybrané časti agendy mesta
- Funguje aj lokálne demo pomocou RasaWebWidget. Používa sa Websocket
- Rozpracovaný písomný report

Úlohy:

- [x] Dať zdrojové kódy na GIT
- [-]  Dokončiť písomnú správu. Cieľ je mať blog, ktorý oboznámi študenta o možnostiach a práci s RASA.


Zásobník úloh:

- [-] Dorobiť Dockerfile.
- [ ] Zverejniť demo na K8s (pre vedúceho).
- [ ] Zverejniť blog vo formáte Markdown.
- [-] Zlepšiť bázu pravidiel chatbota.
- [-] Identifikovať slabé miesta, porozmýšľať ako by sa to dalo zlepšiť.

Stretnutie 12.4.2023

Stav:

- Robot komunikuje po slovensky pre jedoduchú úlohu súvisiacu s esluzby mesta Košice.
- Zdrojáky sú na gite https://git.kemt.fei.tuke.sk/ms058bd/vp2023
- Napísaný krátky report, draft

Úlohy:

- Zlepšiť štylistiku reportu.
- Pripraviť jednoduchú webovú aplikáciu na demo s chatbotom. Inšpirujte sa prácou S. Horáni. alebo použite Flask,  Streamlit alebo Rasa ChatWidget https://rasa.com/docs/rasa/connectors/your-own-website/ .

Zásobník úloh:

- Zlepšite bázu pravidiel chatbota pre esluzby.
  - Zistenie kontaktnej osoby pre agendu.
  - Najčastejšie otázky.
  - Riešenie problémov.
- Vymyslieť postup ktorý by umožnil pretrénovať chatbota aj pracovníkom magistrátu. Editovanie pravidiel vo webovej aplikácii.

Stretnutie 27.3.2023

Stav:

- Chatbot funguje po anglicky cez Anaconda.
- Napísané niektoré reporty.
- Pripravené niektoré testovacie konverzácie.

Úlohy:

- [x] Pozrite si stránku https://www.esluzbykosice.sk/, navrhnite chatbbota ktorý bude informovať o dostupných e-službách pre košický magistrát.
- [x] Zdrojáky dajte na KEMT GIT, repozitár nazvite vp2023
- [-] Pokračujte v otvorených úlohách.

Zásobník úloh:

- [x] Preštudujte si ako sa vyhodnocuje RASA chatbot

Úlohy:

- [x] Nainštalujte a oboznámte sa s RASA frameworkom. Pri inštalácii využite systém Anaconda.
- [x] Vyberte a prejdite najmenej jeden tutoriál pre prácu s RASA frameworkom.
- [x] Napíšte krátky report na 2 strany kde napíšete čo ste urobili a čo ste sa dozvedeli.
- [x] Vytvorte chatbota, ktorý sa bude vedieť predstaviť a odpovedať koľko je hodín.
- [x] Zistite čo je to NLU a napíšte o tom krátku správu.
- [-] Prečítajte si Horániho BP.
- [-] Zistite ako pracuje RASA a napíšte o tom krátku správu. Zistite, aké neurónové siete sa tam používajú.

Zásobník úloh:

- Rozbehajte Horániho chatbota.
- Pridajte podporu slovenčiny do Vášho chatbota.




