251 lines
		
	
	
		
			6.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			251 lines
		
	
	
		
			6.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
---
 | 
						|
title: Samuel Horáni
 | 
						|
published: true
 | 
						|
taxonomy:
 | 
						|
    category: [vp2021,bp2022]
 | 
						|
    tag: [chatbot,rasa,dialog,nlp]
 | 
						|
    author: Daniel Hladek
 | 
						|
---
 | 
						|
 | 
						|
rok začiatku štúdia: 2019
 | 
						|
 | 
						|
Návrh na zadanie BP:
 | 
						|
 | 
						|
1. Vypracujte teroretický úvod do modelovania dialógu a povedzte ake metódy sa aktuálne používajú.
 | 
						|
2. Navrhnite a vytvorte dialógový systém komunikujúci v slovenskom jazyku pre úlohu objednania jedla z donáškovej služby.
 | 
						|
3. Vykonajte sadu experimentov a dialógovým systémom a identifikujte miesta pre zlepšenie.
 | 
						|
 | 
						|
 | 
						|
Nápady na balakársku prácu:
 | 
						|
 | 
						|
- chatbot pre objednanie jedla.
 | 
						|
- chatbot s informáciami pre cestovateľov.
 | 
						|
- Urobenie web rozhrania.
 | 
						|
- dá sa dorobiť aj rečové rozhranie.
 | 
						|
- dá sa to prepojiť aj na QA systém.
 | 
						|
 | 
						|
Výsledky:
 | 
						|
 | 
						|
- [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ársky projekt 2021
 | 
						|
 | 
						|
Ciele:
 | 
						|
 | 
						|
- Vypracovať draft B. práce.
 | 
						|
- Mať funkčné demo vo forme nasadenej webovej aplikácie.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
6.1.2022
 | 
						|
 | 
						|
- Chatbot vie "rezervovať" stôl - rozpoznať entitu s názvom stola.
 | 
						|
- Urobený Dockerfile pre Rasa bot
 | 
						|
 | 
						|
Úlohy:
 | 
						|
 | 
						|
- Dorobiť Dockerfile pre Flask App
 | 
						|
- Skúsiť urobiť docker-compose.yaml (Swarm Mode Docker)
 | 
						|
- Pre deployment je dobré zmeniť databázu na Postgres. Postgres sa robí "jednoducho" cez compose. 
 | 
						|
- Upraviť konfiguráciu do podoby vhodnej na nasadenie. Nasadenie aplikácia bude mať inú konfiguráciu (napr. databázu) ako aplikácia vo vývoji.
 | 
						|
- Naučte robota hovoriť o aktuálnom jedálnom lístku. 
 | 
						|
    - čo mi ponúknete na obed?
 | 
						|
    - Aké máte menu na pondelok?
 | 
						|
    - čo obsahuje "čiernohorský rezeň"?
 | 
						|
- Naučte robota hiečo o reštaurácii.
 | 
						|
    - Ako sa tam dostanem?
 | 
						|
- Naučte robota aby vedel pomôcť človeku. 
 | 
						|
    - Čo vieš urobiť?
 | 
						|
- Pracujte na prezentácii.
 | 
						|
- Pracujte na písomnej časti.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
Stretnutie 17.12.2021
 | 
						|
 | 
						|
Stav:
 | 
						|
 | 
						|
- Pridané testy na RASA test, urobené vyhodnotenie pomocou konfúznej matice.
 | 
						|
 | 
						|
Úlohy:
 | 
						|
 | 
						|
- [x] Pridajte schopnosť rozlišovať pomenované entity typu LOC. Spacy model by to mal vedieť. 
 | 
						|
- [ ] Vylepšite chatbota do prvej funkčnej verzie.
 | 
						|
- [x] Pripravte deployment pomocou Docker.
 | 
						|
- [ ] Dajte vyskúšať chatbota tretej osobe a zapíšte si story.
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
Stretnutie 10.12.
 | 
						|
 | 
						|
- Naštudujte si https://rasa.com/docs/rasa/testing-your-assistant
 | 
						|
- Pokračujte v otvorených úlohách.
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
Stretnutie 3.12.2021
 | 
						|
 | 
						|
Stav: 
 | 
						|
 | 
						|
- Teoretická čast BP je v celkom dobrom stave. Prebehlo viacero stretnutí k BP.
 | 
						|
 | 
						|
Ulohy:
 | 
						|
 | 
						|
1. [x] Navrhnite a napíšte intenty a utterance pre chatbota
 | 
						|
2. [x] Natrénujte model, výskúšajte ho, opravte ho.
 | 
						|
3. [x] Vytvorte testovacie stories a vyhonotte model.
 | 
						|
4. [x] Kódy dajte na GIT
 | 
						|
5. [x] Pripravte deployment pomocou Docker.
 | 
						|
 | 
						|
 | 
						|
- - -
 | 
						|
 | 
						|
Stretnutie 12.11.2021
 | 
						|
 | 
						|
Vyhodnotenie zatiaľ nefunguje.
 | 
						|
 | 
						|
Úlohy:
 | 
						|
 | 
						|
- [x] Pokračovať v písaní práce.
 | 
						|
- [x] Dokončiť web demo.
 | 
						|
- [x] Vytvorte dockerfile.
 | 
						|
 | 
						|
Zásobník úloh:
 | 
						|
 | 
						|
- Vyhdonotiť NLU (úlohy z 12.10.)
 | 
						|
 | 
						|
Stretnutie 22.10.2021
 | 
						|
 | 
						|
- Urobené webové rozhranie pre analýzu konverzácií.
 | 
						|
 | 
						|
Pokračovať v otvorených úlohách.
 | 
						|
 | 
						|
Stretnutie 12.10.
 | 
						|
 | 
						|
Stav:
 | 
						|
 | 
						|
- Vytvorené prepojenie s databázou a RASA pre uchovanie logov z konverzácií.
 | 
						|
- Rozpracovaná knižnica pre prácu s databázou konverzácií.
 | 
						|
- Vyskúšaný nový Spacy jazykový model.
 | 
						|
- Vypracovaný report pre odovzdanie v 4. týždni - šablóna, osnova, krátky článok.
 | 
						|
 | 
						|
Úlohy:
 | 
						|
 | 
						|
- [x] Vyhodnotiť NLU model. 
 | 
						|
- [x] Pripraviť sadu na vyhodnotenie NLU a spôsob ako ju v skripte vykonať. Vytvoriť niekoľko modelových situácií a sledovať, ako "dobre" bude chatbot reagovať. 
 | 
						|
- [x] Zistiť z odbornej literatúry akým spôsobom sa zvyčajne vyhodnocuje NLU úloha. Prečítajte si článok o NLU a napíšte ako sa vyhodnocuje NLU model. Nájdite anglickú databázu na vyhdonotenie NLU a pozrite sa ako vyzerá. [blog rasa](https://rasa.com/blog/evaluating-rasa-nlu-models-in-jupyter/).
 | 
						|
 | 
						|
 | 
						|
Zásobník úloh:
 | 
						|
 | 
						|
- [x] Analyzovať logy z konverzácií. Pripraviť export konverzácií v JSON pre spracovanie a HTML formáte pre zobrazenie.
 | 
						|
 | 
						|
- - -
 | 
						|
 | 
						|
Stretnutie 1.10.
 | 
						|
 | 
						|
Stav:
 | 
						|
 | 
						|
- Minulé úlohy dokončené: Osnova, 
 | 
						|
- flask aplikácia je rozpracovaná a komunikuje s RASA.
 | 
						|
 | 
						|
 | 
						|
Úlohy:
 | 
						|
 | 
						|
- [x] Vytvoriť Word s osnovou práce a do neho zapísať relevantné texty.
 | 
						|
- [x] Pokračujte na Flask aplikácii
 | 
						|
- [x] Zistite čo je to Dockerfile.
 | 
						|
 | 
						|
 | 
						|
 | 
						|
- - -
 | 
						|
 | 
						|
Stretnutie 24.9.
 | 
						|
 | 
						|
Stav: 
 | 
						|
 | 
						|
- Rozpracovaná flask aplikácia pre napojenie sa na RASA chatbota
 | 
						|
- Veľmi základná ale funkčná verzia RASA bota
 | 
						|
- Odovzdaný nový jazykový model Spacy.
 | 
						|
 | 
						|
Úlohy:
 | 
						|
 | 
						|
- [x] Dorobiť komunikáciu Flask a RASA s novým jazykovým modelom. Zdrojáky na GIT.
 | 
						|
- [x] Vytvorte draft práce, napíšte osnovu a pridajte tam relevantné texty ktoré máte.
 | 
						|
- [x] Nájdite aspoň jeden vedecký článok na tému "dialogue management" a napíšte čo ste sa dozvedeli.
 | 
						|
 | 
						|
- - -
 | 
						|
 | 
						|
## Vedecký projekt 2021
 | 
						|
 | 
						|
Dialógový systém pomocou RASA framework
 | 
						|
 | 
						|
Cieľom projektu je naučiť sa niečo o dialógových systémoch a oboznámiť sa so základnými nástrojmi.
 | 
						|
 | 
						|
- Nainštalujte a oboznámte sa s RASA frameworkom. Pri inštalácii využite systém Anaconda.
 | 
						|
- Vyberte a prejdite najmenej jeden tutoriál pre prácu s RASA frameworkom.
 | 
						|
- Napíšte krátky report na 2 strany kde napíšete čo ste urobili a čo ste sa dozvedeli.
 | 
						|
- Výstup je tu https://git.kemt.fei.tuke.sk/sh662er/Rasa
 | 
						|
- - -
 | 
						|
Stretnutie 16.6.2021
 | 
						|
 | 
						|
Stav:
 | 
						|
 | 
						|
- Stránka s UI je vo Flask
 | 
						|
- Problém je so stavom spojenia s RASA servrom.
 | 
						|
- - -
 | 
						|
Stretnutie 6.5.2021
 | 
						|
 | 
						|
- prebehla aj Komunikácia  cez teams a email.
 | 
						|
- Vyskúšaný TUKE spacy model, ide v poriadku pre všetky intenty.
 | 
						|
 | 
						|
Úlohy:
 | 
						|
 | 
						|
- [x] podmienky na zápočet sú splnené - ale poprosím dokumentáciu konvertovať do Markdown a nahrať na GIT.
 | 
						|
- - -
 | 
						|
Stretnutie 9.4.2021
 | 
						|
 | 
						|
Stav:
 | 
						|
 | 
						|
- Vypracovaná dokumentácia.
 | 
						|
- Podarilo sa modifikovať systém tak že vie využiť slovenský fasttext word embedding model.
 | 
						|
- modifikácia využíva všeobecný spacy pipeline. Bolo potrebné anlyzovať zdrojové kódy spacy aby to išlo. 
 | 
						|
 | 
						|
Úlohy:
 | 
						|
 | 
						|
- [x] Vyskúšať slovenský spacy model od vedúceho.
 | 
						|
- - -
 | 
						|
Stretnutie 26.3.2021
 | 
						|
 | 
						|
Stav:
 | 
						|
 | 
						|
- Preklad jazykového modelu z angličity do slovenčiny
 | 
						|
- Napísané pravidlá "ako sa volám".
 | 
						|
 | 
						|
Úlohy:
 | 
						|
 | 
						|
- [x] Fast tex model implememntovať
 | 
						|
- [x] napísať dokumentáciu
 | 
						|
- - -
 | 
						|
Stretnutie 19.3.2021
 | 
						|
 | 
						|
Zásobník úloh:
 | 
						|
 | 
						|
- [x] Doplniť podporu slovenčiny do fr. RASA
 | 
						|
 | 
						|
Stav:
 | 
						|
 | 
						|
- Je nainštalovaný fr. RASA pomcou Anaconda
 | 
						|
- Je vytvorený základný jazykový model - v anglickom jazyku.
 | 
						|
- Prezretý video kanál s [RASA tutoriálom](https://www.youtube.com/watch?v=rlAQWbhwqLA&list=PL75e0qA87dlHQny7z43NduZHPo6qd-cRc)
 | 
						|
 | 
						|
Úlohy:
 | 
						|
 | 
						|
- [x] Skúsiť vytvoriť agenta ktorý komunikuje po slovensky. Najprv by sa preložili trénovacie príklady.
 | 
						|
- [x] Zistiť ako doplniť podporu slovenčiny do RASA. Komponenty ktoré máme k dispozícii sú: spacy model, fastext a glove word embedding model, BERT model (fresh and secret).
 |