dmytro_ushatenko/pages/students/2022/oleh_poiasnik/README.md

140 lines
5.9 KiB
Markdown

---
title: Oleh Poiasnik
published: true
taxonomy:
category: [bp2025]
tag: [rag,nlp]
author: Daniel Hladek
---
rok začiatku štúdia: 2022
# Bakalárska práca 2025
Nové zadanie:
Chceme vytvoriť asistenta pre farmaceuta alebo zákazníka lekárne pre vyhľadávanie v príbalových letákoch.
Staré zadanie:
Vyhľadávanie právnych informácií pomocou neurónových sietí
- Oboznámte sa s existujúcimi modelmi pre vyhľadávanie v texte.
- Vytvorte systém pre vyhľadávanie v zákonoch a vyhláškach.
- Vyhľadajte súvisiace paragrafy so zadanou otázkou
- Vyhodnotte či je zadané tvrdenie v súlade s legislatívou alebo nie.
RAG: Generovanie jazyka s pomocou vyhľadávania - Retrieval augmented generation
8.11.2024
Stav:
- Modifikovaný frontend (Tailwind)
- Vytvorený Docker Images, Elasticsearch databáza aj index.
- Je aj skript na indexovanie.
- Vyskúšaný Mistral Small a Mistral Large cez API-
Úlohy:
- Pracujte na texte, pošlite mi draft.
- Pripojte sa na server quadro.kemt.fei.tuke.sk (cez ssh z tuke siete). Použite prostredie Anaconda.
- Na inferenciu (beh modelu) vyskúšajte vllm. Alebo ollama alebo localai. Dobrý model pre slovenčinu je Qwen2.5 alebo slovak-t5-base.
17.10.20204
Stav:
- Funguje web rozhranie aj vyhľadávanie.
- Kódy sú na gite. Využíva sa Flask, Mistral API pre Mistral-Small (nebeží lokálne). Na vektory MiniLM2
- Napísané poznámky o praktickej časti.
Úlohy
- Otázka: Je to hybridné vyhľadávanie?
- Začnite písať teoretickú časť práce.
- Pokračujte v práci na frontende aj backende, tak aby to dobre vyzeralo aj dobre fungovalo - aby sa to dalo použiť ako demo. Treba dávať pozor na právnu zodpovednosť.
- Vyskúšajte rôzne spôsoby vyhľadávania - aj sparse (riedke vyhľadávanie).
- Kódy dávajte na git.
Zásobník úloh:
- Pripravte modely na lokálne nasadenie pomocou inferenčného servra (vllm, ctranslate2). Chceme aby modely bežali cez (OpenAI) API na našej infraštruktúre.
- Vyskúšajte Váš systém s lepšími modelmi (Slovak Mistral, iný väčší model, na vektory me5 alebo slovakbert-mnlr).
- pripravte nasadenie aplikácie pomocou systému Docker Compose.
- Urobte číslelné vyhodnotenie vyhľadávania. Toto má na starosti Yevhenii Leonov.
27.9.2024
Stav:
- Vyskúšané generatívne modely - OpenAI aj HuggingFace Prakticky sú nepoužiteľné, kvôli tomu, že chybné požiadavky míňajú kredit. Kreditu je málo na deň.
- Výskúšaný Slovenský Mistral "slovak-nlp/mistral-sk-7b". Výskúšané cez API skript.
- Nainštalovaný PrivateGPT. Zaindexovaná databáza liekov cez ElasticSearch a implementovaný RAG s modelom Slovak Mistral. Funguje to celkom dobre na dopyt o bolesti hlavy.
Úlohy:
- Pokračujte v štúdiu LangChain. Prejdite si tutoriály.
- Čítajte články a robte si poznámky. Pozrite si článok o modeli Mistral, o sentence transformeroch, aj o "retrieval augmented generation". Na vyhľadanie článku použite google scholar.
- Vytvorte skript pre indexovanie a prípravu dát, dajte ho na git.
- Konfiguračné skripty na Privategpt a skripty pre prípravu dát dajte na git repozitár. Na kemt.git.fei.tuke.sk. Skripty by mali byť opakovateľné.
Zásobník úloh:
- Lepšie pripraviť dáta. Bude treba vyradiť lieky pre zvieratá. Texty bude treba predpripraviť. O lieku bude treba zistiť metainformácie. Bude treba vyznačiť, či je liek na lekársky predpis alebo nie.
- Model bude treba dotrénovať na inštrukcie, použiť databázu Slovak Alpaca.
- Pripraviť "inteligentného agenta" pre vyhľadávanie, aby sa vedel spýtať dolnňujúce otázky. Prečítajte si článok o ReACT.
- Pripraviť vlastné webové rozhranie a backend LangChain.
Stretnutie 18.9.2024
Stav:
- Vyskúšaný model bioBERT, cez Transformers, Anaconda na malom datasete na notebooku
- ElasticSearch Python API
- vlastný skript na indexovanie pomocou SBERT
Úlohy:
- vhodné modely pre slovenský jazyk: me5-base pre vektorové vyhľadávanie. Ale ako použijete ES, tak nie je potrebný. Pre generovanie: je možné použiť OpenAI API alebo HuggingfaceAPI, má obmedzenie. Otvorené modely: LLama3, RWKV, Sovenský Mistral 7B TBA.
- Na začiatok skúste rozbehať postup s PrivateGPT, OpenAI API a vyhľadávaním (pomocou ES alebo me5-base alebo OpenAI API - ADA embedding).
- Urobte si lokálnu inštaláciu PrivateGPT na Vašom notebooku. Zmente konfiguráciu - modely a prompty
- Dáta dodá Kristián Sopkovič - cez Teams sa spojte.
- Pokračujte v štúdiu Python, Transformers. Oboznámte sa s LangChain.
- Prečítajte si tento článok https://arxiv.org/abs/1908.10084 o sentence transformers a urobte si poznámky.
Zásobník úloh:
- Urobte množinu na vyhdnotenie. Vytvoríte množinu vzorových otázok a odpovedí. Vyhodnotte celý proces.
- Modely by mali bežať na našej infraštruktúre. Treba pripravť vhodný inferenčný server na našom HW, vybrať a dotrénovať vhodný model.
- Preskúmať využitie Knowledge Graph pre spracovanie medicínskych dát.
Stretnutie 26.4.2024
Úlohy:
- Zistite čo je to Retrieval Augmented Generation a napíšte o tom správu.
- Naučte sa základy jazyka Python.
- Podrobne si prejdite minimálne dva tutoriály.
- Napíšte krátky report na 2 strany kde napíšete čo ste urobili a čo ste sa dozvedeli.
- Nainštalujte si a vyskúšajte softvér PrivateGPT
- Nainštalujte si prostredie Anaconda. Prejdite si knihu Dive Deep into Python 3.
- Nainštalujte si PrivateGPT. Zistite ako funguje RAG. Zistite ako funguje ChatGPT. Zistite ako funguje vyhľadávanie pomocou SentenceTranformers. Napíšte o tom poznámky.
- Prečítajte si knihu https://d2l.ai/ a napíšte si poznámky.
Zásobník úloh:
- Spracujte a indexujte slovenské zákony a vyhlášky.
- Získajte zoznam právnych tvrdení ktoré je možné overiť.
- Existuje množina zmlúv o prenájme v slovenskom jazyku. https://huggingface.co/datasets/mtarasovic/ner-rent-sk-dataset