Skip to content

Simple RAG system for answering questions enchanced by the knowledge inserted into /docs. It speaks polish only.

Notifications You must be signed in to change notification settings

Gizmon99/RAG_QA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RAG Project – Recruitment Task

Sposób uruchomienia

  1. Utwórz środowisko do pracy (polecana Conda lub Venv) z wersją Python=3.12.11, albo otwórz Google Colab
  2. Upewnij się, że masz niezbędne sterowniki do użytku platformy CUDA
  3. Zainstaluj niezbędne biblioteki z requirements.txt
  4. Upewnij się, że masz niezbędne zbiory danych umieszczone w katalogu ./docs
  5. Uruchom wszystkie komórki z rozdziałów Sepcyfikacja, Obsługa bazy danych i Obsługa modelu z notebooka

Technologie użyte

  • Python 3.12.11
  • CUDA 12.5.82
  • HerBERT ("allegro/herbert-large-cased")
  • Bielik ("speakleash/Bielik-7B-Instruct-v0.1")

Pytania

  • Jakie modele LLaMa są dostępne?:

Dostępne modele LLaMA (Large Language Model) to:

1. LLaMA 1.5 (1 Billion tokenów) - Dla urządzeń mobilnych i wbudowanych. 2. LLaMA 2.0 (3 Billion tokenów) - Bardziej zaawansowany model, ale wymaga większej mocy obliczeniowej. 3. LLaMA 3.0 (76 Billion tokenów) - Wsparcie dla wielu języków. 4. LLaMA 3.1 (76 Billion tokenów) - Z dodatkową klauzulą ograniczającą dla Europejczyków. 5. LLaMA 3.2 (76 Billion tokenów) - Z dodatkową klauzulą ograniczającą dla Europejczyków. 6. LLaMA 4.0 (144 Billion tokenów) - Wprowadza architekturę MoE (Mixture of Experts) i jest w stanie obsługiwać kontekst do milionów tokenów.

Modele te różnią się ilością tokenów i specyfikacjami, a wybór konkretnego modelu zależy od zasobów sprzętowych i potrzeb użytkownika.

  • Kto stworzył PLLuM?:

PLLuM (Polish Linguistic Model) to projekt opracowany przez polską firmę technologiczną Cyfry.go.

  • Jaki model najlepiej działa na GPU z 24 GB VRAM? W kontekście GPU z 24 GB VRAM, dobrym modelem do użycia jest Llama 8 B. Model ten jest zaprojektowany do pracy na pojedynczej karcie graficznej z 16 GB VRAM i powinien działać zadowalająco na Twoim GPU. Model ten zapewnia dobrą jakość i niskie opóźnienia, co jest przydatne w wielu zastosowaniach, takich jak generowanie tekstu, tłumaczenia, asystentów głosowych czy systemy RAG.

  • Jakie jest podsumowanie tekstu o gpt? Podsumowanie:

Tekst o gpt opisuje różne wersje modeli GPT i ich parametry. Modele te są wykorzystywane w wielu zastosowaniach, takich jak generacja i analiza tekstu, systemy pytanie-odpowiedź, chat, administracja publiczna, i badania. Wersje "chat" są specjalnie zaprojektowane do interakcji z użytkownikami. Tekst omawia również kluczowe wnioski i zalecenia dla RAG (Regulated Answer Generator).

1. Parametry i kontekst: Wersje GPT mają rosnącą liczbę parametrów i dłuższe okna kontekstowe, co umożliwia analizę długich dokumentów lub wielu fragmentów jednocześnie.

2. Wymagania sprzętowe: Komercyjne modele GPT wymagają dużej mocy obliczeniowej i są dostępne jako usługi chmurowe.

3. Zastosowania: Różne wersje GPT są wykorzystywane w wielu obszarach, od generacji i analizy tekstu po systemy pytanie-odpowiedź i administrację publiczną.

4. RAG: RAG to systemy, które generują odpowiedzi regulowane przez instytucje lub prawne wymagania. Obejmuje to RAG specjalizujące się w procedurach administracyjnych i ustawach.

Tekst zaleca śledzenie aktualizacji licencji i nowych wersji modeli GPT, ponieważ Meta często wprowadza nowe modele lub zmienia warunki użytkowania.

  • Jaki jest przepis na pizzę hawajską?

Składniki: - 350 g mąki pszennej - 25 g świeżych drożdży - 250 ml lekko ciepłej wody - szczypta cukru - 1 łyżeczka soli - 2 łyżki oleju - 200 g szynki - 300 g odsączonego ananasa - 200 g startego sera żółtego - sos pomidorowy - suszone oregano i bazylia

Sposób przygotowania:

1. Przygotować zaczyn drożdżowy: wymieszać drożdże z ciepłą wodą i cukrem, odstawić na 10 minut.

2. Wymieszać resztę mąki z solą. Dodać zaczyn i olej, wyrabiać do gładkości.

3. Odstawić ciasto

  • Która rodzina modeli pomiędzy mistal a pllum jest lepsza?

Mixtral 8×7B wykorzystuje architekturę typu mixture-of-experts, aktywując jedynie część swoich parametrów, co umożliwia wydajne przetwarzanie sekwencji o długości do 32k tokenów, jednak pełna precyzja wymaga znacznej pojemności pamięci VRAM. Mistral NeMo implementuje tokenizer Tekken, pozwalający na efektywną kompresję danych w wielu językach i ułatwiający przetwarzanie długich kontekstów do 128k tokenów. Voxtral Small umożliwia analizę i transkrypcję nagrań audio o długości około 30 minut, natomiast Pixtral 12B integruje moduły wizualne i tekstowe w jednym modelu multimodalnym, zachowując spójność kontekstu.

Obserwacje

  • Na początku próbowałem użyć globalnych modeli ("google/mt5-small", "sentence-transformers/distiluse-base-multilingual-cased-v2", "google/flan-t5-small"), szybko pożałowałem swojej decyzji, zdania były "poszarpane", znaki pozastępowane znakiem "%", polskie modele są konieczne do dobrej pracy
  • Próbowałem "Lajonbot/LaMini-GPT-774M-19000-steps-polish", działało słabo, wiele słów było przeinaczonych, często brakowało polskich znaków (typu "ą", "ę", "ż"), potrzebny jest rozsądnie duży model
  • Potrzebny jest dobry sprzęt (przynajmniej 16GB GDDR6 karta graficzna), czas oczekiwania na odpowiedź jest stosunkowo wysoki zależnie od jakości sprzętu, niestety nawet zabawa z kwantyzacją nie pomogła, jakość odpowiedzi za bardzo na tym cierpiała
  • Niestety ograniczenie sprzętowe nie pozwoliło mi na wypróbowanie lepszych i ciekawszych modeli, takich jak najnowszy bielik lub sam pllum, co widać po jakości odpowiedzi - nawet model ze sredniej półki nie jest wystarczająco dobry.

About

Simple RAG system for answering questions enchanced by the knowledge inserted into /docs. It speaks polish only.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published