Prosty RAG
Prosty RAG to otwarto藕r贸d艂owy asystent AI oparty na polskim modelu j臋zykowym Bielik-4.5B-v3.0-Instruct, kt贸ry odpowiada na pytania z prywatnej bazy wiedzy u偶ytkownika, wykorzystuj膮c technik臋 RAG (Retrieval-Augmented Generation). Asystent dzia艂a w pe艂ni lokalnie, jako dwa pliki wykonywalne na Windows/Linux/MacOS, wykorzystuj膮ce technologi臋 llamafile i embedfile. Aplikacja jest przeno艣na, nie wymaga 艣rodowiska Python z mn贸stwem pakiet贸w (np. LangChain, LangGraph, LlamaIndex i podobne), automatycznie wykrywa zainstalowane biblioteki GPU (CUDA/ROCm), a w przypadku ich braku wykorzystuje CPU.
Zasada dzia艂ania:
- Umieszczamy pliki bazy wiedzy PDF, TXT, MD (Markdown) lub CSV w folderze
baza
, - Pliki s膮 indeksowane (PDF konwertowane na TXT za pomoc膮 pdftotext), dzielone na fragmenty (po 200 s艂贸w, 10 s艂贸w nak艂ada si臋) i osadzane w wektorowej bazie danych sqlite-vec,
- Dla danego zapytania pobierane s膮 najbardziej trafne fragmenty z bazy danych, kt贸re uzupe艂niaj膮 kontekst pytania,
- Model j臋zykowy generuje odpowied藕 na pytanie wykorzystuj膮c wzbogacone dane z bazy wiedzy.
Uruchamianie
Wystarczy pobra膰 plik prosty-rag.cmd (klikaj膮c prawym przyciskiem -> zapisz link jako...) i uruchomi膰 go (klikaj膮c dwukrotnie mysz膮 lub wpisuj膮c w wierszu polece艅 ./prosty-rag.cmd
). Skrypt sam pobierze pliki: prosty-rag.llamafile
i prosty-rag.embedfile
(je艣li nie zosta艂y wcze艣niej pobrane), uruchomi indeksator (je艣li nie zosta艂 jeszcze uruchomiony), za艂aduje serwer z modelem osadzania (embedfile), serwer z modelem j臋zykowym (llamafile) i otworzy stron臋 http://localhost:8080 w przegl膮darce internetowej. Asystent dzia艂a off-line, a wszelkie dane pozostaj膮 lokalnie na urz膮dzeniu.
W folderze baza
nale偶y umie艣ci膰 wszystkie pliki PDF, TXT, MD i CSV do stworzenia bazy wiedzy. Nast臋pnie nale偶y uruchomi膰 skrypt indeksator.cmd
, kt贸ry skonwertuje pliki PDF do TXT i zaindeksuje pliki tesktowe w wektorowej bazie danych SQLite prosty-rag.db
, korzystaj膮c z modelu osadzania BGE-M3. Indeksator nale偶y uruchomi膰 po ka偶dej zmianie plik贸w w folderze baza
.
Aby zadawa膰 pytania dotycz膮ce zaindeksowanej bazy wiedzy, nale偶y uruchomi膰 skrypt prosty-rag.cmd
i wpisa膰 pytanie w aplikacji czatu na http://localhost:8080. Najbardziej trafne fragmenty zostan膮 wyszukane w bazie danych prosty-rag.db
, a nast臋pnie zostanie za艂adowany model j臋zykowy Bielik 4.5B v3.0, kt贸ry wygeneruje odpowied藕 w oparciu o kontekst z bazy wiedzy.
Budowanie
Aby zbudowa膰 w艂asn膮 wersj臋 asystenta AI, nale偶y 艣ci膮gn膮膰 skrypt build.cmd
i uruchomi膰 go pod Windows/Linux/MacOS. Po udanym zbudowaniu powinien pojawi膰 si臋 nowy plik prosty-rag.llamafile
.
Podgl膮d
Lista zmian
- 0.1 - pierwsza wersja wieloplatformowa
- 0.2 - dodanie serwera embedfile z modelem osadzania BGE-M3
- 0.3 - dodanie obs艂ugi CSV, logowania do pliku
prosty-rag.log
- 0.4 - wyszukiwanie hybrydowe za pomoc膮 FTS (BM25) i wektor贸w, oddzielne pobieranie modeli GGUF
- 0.5 - zmiana modelu osadzania na multilingual-e5-large-instruct
Licencja
漏 2025 Jerzy G艂owacki na licencji Apache 2.0.
- Downloads last month
- 49
Model tree for jglowa/prosty-rag
Base model
speakleash/Bielik-4.5B-v3