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

rok začiatku štúdia: 2021

# 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.




