forked from KEMT/zpwiki
		
	
		
			
				
	
	
		
			284 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			284 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | |
| title: Matej Ščišľak
 | |
| published: true
 | |
| taxonomy:
 | |
|     category: [bp2024, dp2026]
 | |
|     tag: [chatbot,rasa,dialog,nlp]
 | |
|     author: Daniel Hladek
 | |
| ---
 | |
| 
 | |
| rok začiatku štúdia: 2021
 | |
| 
 | |
| Ciele:
 | |
| 
 | |
| - Zlepšiť generovanie odpovedí pre úlohy vyžadujúce viac krokov pomocou znalostných grafov
 | |
| 
 | |
| Stretnutie 10.10.2025
 | |
| 
 | |
| Stav:
 | |
| 
 | |
| - Rozbehaný agent na báze ollama.
 | |
| - naštudované RAG, function calling, retrieval, evaluation. 
 | |
| 
 | |
| Úlohy:
 | |
| 
 | |
| - zistite, čo je to znalostný graf.  Študujte "graph retrieval augmented generation" na google scholar.
 | |
| - Oboznámte sa s databázou Neo4J - zistite ako ju využiť spolu s langchain.
 | |
| - Zistite, ako vieme vylepšiť RAG pomocou znalostného grafu.
 | |
| - Oboznámte sa s tezaurom slovenského práva. Konvertujte PDF s tezaurom do JSON. Použite docling alebo ollama s gpt-oss.
 | |
| a skúste to zaindexovať (do Neo4J).
 | |
| - Navrhnite prompt ktorý konvertuje otázku na Neo4J dopyt pre získanie relevantných dokumentov.
 | |
| - skripty dávajte na GIT.
 | |
| 
 | |
| 
 | |
| Letná 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á práca 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.
 | |
| 
 | |
| # Diplomový projekt 1 2025
 | |
| 
 | |
| Stretnutie 14.5.2025
 | |
| 
 | |
| Stav:
 | |
| 
 | |
| - Naštudovaný REACT
 | |
| - Vytvorený RAG - vektory do FAISS. Model Mistral - ollama inferenčný server.
 | |
| - Vyskúšané generatívne modely OLLAMA. 
 | |
| - Problém s "pridávaním súborov na QUADRO".
 | |
| 
 | |
| 
 | |
| Úlohy:
 | |
| 
 | |
| - Pridajte skripty na git.
 | |
| - Pre prácu s lepšími modelmi (väčšie generatívne modely, me5 embeddingy) použite server QUADRO - identifikujte problémy. 
 | |
| - Prečítajte si články o agentových jazykových modeloch pre právne informácie a urobte si poznámky.
 | |
| - identifikujte možné zdroje dát pre riešenie právnych problémov.
 | |
| - Navrhnite agentový prístup na riešenie právnych problémov. 
 | |
| - Zistite, aké databázy sa používajú na vyhodnotenie a na trénovanie "agentových" (function calling) jazykových modelov.
 | |
| - Pozrite si množinu https://huggingface.co/datasets/TUKE-KEMT/slovak-financial-exam , toto môžeme použiť na vyhodnotenie. 
 | |
| 
 | |
| Zásobnk úloh:
 | |
| 
 | |
| - Bude treba pripraviť množinu na vydnotenie "agentového" prístupu.
 | |
| - Zostavte množinu vzorových otázok a odpovedí a relevantných dokumentov. Na webe môžete nájsť fóra s právnymi otázkami a na ich základe zostaviť testy.
 | |
| - Dotrénovať vhodný model.
 | |
| 
 | |
| 
 | |
| Stretnutie 10.3.2025
 | |
| 
 | |
| Úlohy:
 | |
| 
 | |
| - Preštudovať - ako zostaviť RAG systém pomocou LangChain
 | |
| - Zistiť ako fungujú agentové systémy na báze LLM - React. A volanie "nástrojov" function calling pomocou LLM.
 | |
| - 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ý)
 | |
| - Vytvoriť RAG systém pre spracovanie tejto databázy. 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)
 | |
| - Vyhľadať na internete množinu vzorových právnych otázok a vyhodnotiť systém (Šarišský)
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| # Bakalárska práca 2024
 | |
| 
 | |
| 
 | |
| Názov: Dialógový systém pre potreby samosprávy
 | |
| 
 | |
| 
 | |
| Zadanie:
 | |
| 
 | |
| 1. Vypracujte teroretický úvod do modelovania dialógu a povedzte aké metódy sa aktuálne používajú.
 | |
| 2. Navrhnite a vytvorte dialógový systém v slovenskom jazyku pre úlohu komunikácie občana s mestom.
 | |
| 3. Vykonajte sadu experimentov a dialógovým systémom.
 | |
| 4. Vyhodnoťte experimenty a identifikujte miesta pre zlepšenie.
 | |
| 
 | |
| 
 | |
| Súvisiace materiály:
 | |
| 
 | |
| - [Projektová stránka](/topics/chatbot)
 | |
| 
 | |
| Spolupráca:
 | |
| 
 | |
| - [Martin Šarišský](/students/2021/martin_sarissky)
 | |
| 
 | |
| Stretnutie 23.2:
 | |
| 
 | |
| Stav:
 | |
| 
 | |
| - Práca na pravidlách aj texte
 | |
| 
 | |
| Úlohy:
 | |
| 
 | |
| - Vypracujte pravidlá pre rozpoznanie neznámeho zámeru. Cieľ je aby chatbot vedel upozorniť na agendu ktorú nemá implementovanú a vedel ponúknuť čo vie.
 | |
| 
 | |
| Stretnutie 16.2.2024
 | |
| 
 | |
| Stav:
 | |
| 
 | |
| - Pridanie "domain" pravidiel pre "bežného" používateľa
 | |
| - Pridané pravidlá pre slovenské mená a  ulice.
 | |
| - Zlepšenie rozpoznávanie IČO a rodné číslo.
 | |
| 
 | |
| Úlohy:
 | |
| 
 | |
| - Pracujte na zlepšení rozpoznávania firiem, priezvisk. Firma sa môže volač hocijak, Je tam možnosť využiť obchodný register.
 | |
| - pridajte možnosť využiť chatgpt alebo inú službu na generovanie odpoveďe.
 | |
| - Pridajte testovacie scenáre vytvorené 3. neznalým človekom a vyhodnotte chatbota. Chceme vedieť, aký dobrý je pri rozpoznávaní intentov, a ktoré intenty a entity sú problematické. Určite ako to zlepšiť.
 | |
| - Stále píšte. Zlepšite časť o rozpoznávaní intentov a pomentovaných entít.
 | |
| 
 | |
| Stretnutie 9.2.
 | |
| 
 | |
| Stav:
 | |
| 
 | |
| - Zlepšený proces "rozpoznávania" druhu formulára - chatbot sa spýta, aký formulár treba vyplniť.
 | |
| - Pri vypĺnaní nastal problém s rozpoznávaním mien a adries.
 | |
| - Pridané testovacie "stories".
 | |
| - Je problém keď pri firme sa vyplňa formulára niečo iné ako pri fyzickej osobe.
 | |
| 
 | |
| Úlohy:
 | |
| 
 | |
| - Zlepšite chatbota podľa výsledkov vyhodnotenia.
 | |
| - Pridajte zdrojáky na GIT.
 | |
| - Preskúmajte možnosti využitia ChatGPT
 | |
| - Zlepšite rozpoznávanie pomenovaných entít - mená, priezviská, názvy firiem. Najprv vyskúšajte riešenie cez RASA.
 | |
| 
 | |
| Zásobník úloh:
 | |
| 
 | |
| - Vyskúšajte trénovanie modelu pomocou spacy. spacy-skmodel na githube.
 | |
| - Vyskúšajte možnosť zlepšenia pomenovaných entít cez model Spacy. Pravidlový rozpoznávač alebo alebo rozpoznávač pomocou neurónovej siete.
 | |
| - Vedúci má niekde dáta.
 | |
| 
 | |
| 
 | |
| 
 | |
| Stretnutie 9.1
 | |
| 
 | |
| Stav:
 | |
| 
 | |
| - Rozšírenie možnosti formulárov.
 | |
| - Práca na písomnej časti.
 | |
| 
 | |
| Úlohy:
 | |
| 
 | |
| - Zlepšite Vášho chatbota pomocou ChatGPT. So službou viete komunikovať pomocou Python API a "api tokenu". LLM je možné dotrénovať na vlastných dátach. Alebo LLM vie riešiť špecifickú úlohu ktorú definujete pomocou "promptu".
 | |
| - Pokračujte v písomnej časti.
 | |
| - Pripravte testovacie scenáre pre Vašu sadu pravidiel a vyhodnotte pomocou nej chatbota. Jedna množina na vyhodnotenie bude Vaša a druhá množina kolegu Šarišského.
 | |
| - Pripravte prezentáciu a pošlite texty BP na spätnú väzbu, dajte kódy na GIT. 
 | |
| - Upravte kódy tak, aby ich vedúci vedel ľahko vyskúšať pomocou Docker.
 | |
| 
 | |
| 
 | |
| Zásobník úloh:
 | |
| 
 | |
| - Zistite čo je to LangChain a na čo sa používa. Nainštalujte si to a vyskúšajte.
 | |
| 
 | |
| 
 | |
| 
 | |
| Stretnutie 8.12.2023
 | |
| 
 | |
| Stav:
 | |
| 
 | |
| - Vyriešený problem týkajúci sa SLOTov. Bola potrebná osobnitná funkcia submit.
 | |
| - Práca na písomenj časti.
 | |
| 
 | |
| Úlohy:
 | |
| 
 | |
| - [x] Vedúci by mal finalizovať zadanie.
 | |
| - [x] Integrovať Vašu bázu pravidiel s kolegom Šarišským. Spraviť z toho jedného bota. 
 | |
| - [x] Zistite si ako pracujú veľké jazykové modely LLM a napíšte si o tom  poznámky.
 | |
| - [x] Preštudujte si, ako integrovať veľké jazykové modely s RASA. Veľké jazykové modely sú ChatGPT alebo BARD.  Na ChatGPT máte k dispozícici študentské kredity cez Azure Dev Tools for Teaching.  
 | |
| 
 | |
| Zásobník úloh:
 | |
| 
 | |
| - [ ] Zlepšite Vášho chatbota pomocou ChatGPT. So službou viete komunikovať pomocou Python API a "api tokenu". LLM je možné dotrénovať na vlastných dátach. Alebo LLM vie riešiť špecifickú úlohu ktorú definujete pomocou "promptu".
 | |
| 
 | |
| Stretnutie 14.11.
 | |
| 
 | |
| Stav:
 | |
| 
 | |
| - Vyriešený problém s Policy - problém bol asi na strane Stories.
 | |
| - Nastal problém s rozpoznávaním entít. Podarilo sa naštartovať Form, nepodarilo sa rozpoznať slot. Nevie rozpoznať typ priznania za psa.
 | |
| 
 | |
| 
 | |
| Stretnutie 3.11.
 | |
| 
 | |
| Stav:
 | |
| 
 | |
| - Práca na "Forms" v RASA. Problém s "Policy" konfiguráciou bol skonzultovaný.
 | |
| 
 | |
| Úlohy:
 | |
| 
 | |
| - Riešte problém s Policy pomocou "debug" výpisov.
 | |
| - Píšte BP. Opíšte ako funguje NLU a ako funguje rozhodovanie pomcou pravidiel v RASA. 
 | |
| 
 | |
| Zásobník úloh:
 | |
| 
 | |
| - Naštudujte si čo je to Reinforcement learning a ako to súvisí s chatbotmi. https://www.telusinternational.com/insights/ai-data/article/reinforcement-learning-primer . Napíšte si o tom aj poznámky.
 | |
| 
 | |
|  
 | |
| Stretnutie 27.10
 | |
| 
 | |
| Stav:
 | |
| 
 | |
| - Pokračuje písomná príprava a práca na kódoch chatbota.
 | |
| 
 | |
| Úlohy:
 | |
| 
 | |
| - Pokračujte v otvorených úlohách, aj zo zásobníka.
 | |
| - Študujte generatívne jazykové modely.
 | |
| 
 | |
| Zásobník:
 | |
| 
 | |
| - Integrujeme bázu pravidiel oboch chatbotov.
 | |
| 
 | |
| Stretnutie 6.10.
 | |
| 
 | |
| Stav:
 | |
| 
 | |
| - Vypracované úlohy z minulého stretnutia
 | |
| 
 | |
| Úlohy:
 | |
| 
 | |
| - Nadviažte na prácu p. Šarišského a navrhnite a implementujte chatbota na riešenie vybraných a analyzovaných  úloh. Chatbot by mal vedieť identifikovať problém, mal by vedieť či je schopný ho riešiť. Potom by mal naštartovať postup pre riešenie daného problému.   
 | |
| - Naštudujte si RASA Forms aby ste vedeli pomôcť človeku vyplniť formulár.
 | |
| - Vytvorte pomôcku pre vyplnenie formulára s pomocou chatbota a RASA Forms pre viacero problémov. Vyberte jednoduché problémy s malým počtom "slotov".
 | |
| - pravidlá pre chatbota uložte na GIT repozitár s názvom bp2023. Môžete prístup zdieľať s kolegom.
 | |
| - Prečítajte si najnovšie články o chatbotoch vo verejnej správe "chatbot citizen services". Zistite aké metódy používajú a napíšte o tom do písomnej práce.
 | |
| 
 | |
| Zásobník úloh:
 | |
| 
 | |
| - naštudujte si ako sa vyhodnocuje RASA chatbot.
 | |
| - napíšte testovacie konverzácie pre Vaše pravidlá.
 | |
| - Zistite ako pracuje generatívny jazykový model (GPT, T5, LLAMA) a ako sa dá využiť v dialógových systémoch. Sú založené na neurónových sieťach typu Transformer.
 | |
| 
 | |
| Stretnutie 28.9.2023
 | |
| 
 | |
| Stav:
 | |
| 
 | |
| - Nainštalovaná RASA
 | |
| 
 | |
| Úlohy:
 | |
| 
 | |
| - [x] Nainštalujte si Anaconda. Do Anaconda prostredia si nainštalujte RASA.
 | |
| - [-] Pokračujte v štúdiu RASA-Python. Na servri scholar si vyhľadajte termín "natural language understanding". 
 | |
| Prečítajte si niekoľko vedeckých článkov alebo kníh na túto tému a napíšte si poznámky.
 | |
| - [x] Pozrite si stránku https://www.esluzbykosice.sk/. Vyberte niekoľko vzorových problémov a ku nim implementuje asistenta na ich riešenie. Napríklad, občan chce zaplatiť za odvoz odpadu a nevie čo má robiť. Alebo občan si kúpil psa a nevie aké má povinnosti.
 | |
| 
 | |
| Zásobník úloh:
 | |
| 
 | |
| - Vytvorte pomôcku pre vyplnenie formulára s pomocou chatbota.
 | |
| 
 |