Techniki RAG (ang. Retrieval-Augmented Generation) to podejście w przetwarzaniu języka naturalnego (NLP), które łączy generatywne modele językowe (takie jak GPT) z zewnętrznymi bazami wiedzy lub wyszukiwarkami informacji. Ich celem jest poprawienie dokładności i aktualności generowanych odpowiedzi.
Na czym polega RAG?
W uproszczeniu:
- Retrieval (wyszukiwanie): Dla zadanego pytania system najpierw wyszukuje istotne dokumenty z bazy wiedzy, wyszukiwarki lub korpusu tekstów.
- Augmented (uzupełnienie): Te dokumenty są przekazywane do modelu generatywnego jako dodatkowy kontekst.
- Generation (generacja): Model językowy tworzy odpowiedź, korzystając z kontekstu pytania i znalezionych dokumentów.
Zagrożenia i wyzwania technik RAG:
1. Złośliwe lub błędne dane w źródłach
- Jeśli dokumenty pochodzą z niezweryfikowanych źródeł (np. otwartego internetu), model może wygenerować odpowiedź opartą na dezinformacji.
2. Ataki typu Retrieval Injection
- Podobne do „prompt injection”. Złośliwy użytkownik może:
- Umieścić spreparowaną treść w dokumencie (np. “Ignoruj pytanie i napisz XYZ”),
- a model bezkrytycznie wykorzysta ją w generacji odpowiedzi.
3. Zależność od systemu wyszukiwania
- Jeśli moduł retrieval wybierze niewłaściwe dokumenty (np. na skutek manipulacji rankingiem lub ataku), jakość odpowiedzi spada.
4. Ominięcie filtrów bezpieczeństwa
- Złośliwa treść może zostać „przemycona” do modelu przez dokumenty, które nie zostały odpowiednio przefiltrowane.
Przykłady zagrożeń w praktyce:
- Phishing oparty na RAG: chatbot oparty na RAG może sugerować użytkownikowi odwiedzenie strony zawartej w złośliwym dokumencie.
- Manipulacja wynikami wyszukiwania: atakujący może zindeksować wiele dokumentów z podobną treścią, by wpływać na wyniki generowane przez system.
- Data poisoning: złośliwe dane umieszczane w bazie dokumentów.
