343 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			343 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
---
 | 
						|
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.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 |