Przejdź do treści

Słownik

Czym jest retrieval-augmented generation (RAG)?

Retrieval-augmented generation, czyli RAG, sprawia, że AI odpowiada na podstawie Waszych własnych treści: najpierw wyszukuje w dokumentach odpowiednie fragmenty, a potem model pisze na ich podstawie odpowiedź i je cytuje.

Napisane i sprawdzone przez Solorai

W skrócie

Sam model językowy odpowiada na podstawie tego, czego nauczył się w trakcie trenowania, a to nie obejmuje Waszych polityk, umów ani zgłoszeń. RAG dodaje krok wyszukiwania: system znajduje fragmenty pasujące do pytania i przekazuje je modelowi razem z pytaniem, dzięki czemu odpowiedź odzwierciedla Wasze aktualne treści i może pokazać źródła.

Termin pochodzi z publikacji Patricka Lewisa i współpracowników z Facebook AI Research, University College London i New York University z 2020 r., przedstawionej na NeurIPS 2020.

Jak działa RAG

System RAG ma dwie części.

Zanim ktokolwiek zapyta: indeksowanie

Dokumenty są zbierane z miejsc, w których się znajdują, takich jak repozytorium dokumentów, wiki lub system zgłoszeń. Są dzielone na fragmenty, zwykle nie dłuższe niż kilkaset tokenów. Każdy fragment jest zamieniany w embedding, czyli listę liczb oddającą jego znaczenie, i zapisywany w indeksie wyszukiwania, często obok indeksu słów kluczowych.

Gdy ktoś pyta: wyszukiwanie i generowanie

Pytanie jest wyszukiwane w indeksie. Najlepiej pasujące fragmenty są pobierane, często ponownie szeregowane przez drugi model, i umieszczane w prompcie razem z pytaniem i instrukcjami takimi jak "odpowiadaj wyłącznie na podstawie tych fragmentów i je cytuj". Model pisze odpowiedź, a aplikacja pokazuje obok niej źródła.

Opcje architektury RAG

OpcjaJak to działaGdzie pasuje
Wyszukiwanie wektoroweZnajduje fragmenty bliskie znaczeniowo pytaniu, za pomocą embeddingówPytania sformułowane inaczej niż dokumenty. Może pomijać dokładne terminy, takie jak kody i nazwy
Wyszukiwanie hybrydoweŁączy wyszukiwanie po słowach kluczowych (BM25) z wyszukiwaniem wektorowym i scala wynikiDobry wybór domyślny dla treści firmowych, które łączą prozę z kodami, nazwami i liczbami
Ponowne szeregowanieDrugi model zmienia kolejność najlepszych wyników według trafnościDuże zbiory, w których pierwsze wyszukiwanie zwraca wiele wyników niemal trafnych
Wyszukiwanie kontekstowePrzed indeksowaniem dodaje do każdego fragmentu krótki opis jego dokumentuFragmenty, które tracą znaczenie poza kontekstem, takie jak klauzula lub wiersz tabeli
Długi kontekstZamiast wyszukiwać, umieszcza całe dokumenty w oknie kontekstowym modeluMałe, stabilne zbiory dokumentów. Kosztuje więcej za pytanie

W testach Anthropic embeddingi kontekstowe połączone z wyszukiwaniem po słowach kluczowych BM25 i ponownym szeregowaniem zmniejszyły o 67% odsetek przypadków, w których właściwego fragmentu brakowało w 20 najlepszych wynikach. Na przykład Azure AI Search uruchamia zapytania po słowach kluczowych i wektorowe równolegle i scala je metodą Reciprocal Rank Fusion, częstym sposobem budowania wyszukiwania hybrydowego.

Zanim zbudujecie indeks, sprawdźcie, co już oferuje Wasza platforma AI. Na przykład Claude może pracować z połączonymi źródłami, takimi jak Google Drive lub Microsoft 365, przez konektory, co często wystarcza na pierwszy krok.

Ograniczenia RAG i jak sobie z nimi radzić

  • Pominięte fragmenty. Dzielenie dokumentów może odciąć fragment od kontekstu, który nadaje mu znaczenie, a embeddingi mogą pominąć dokładne dopasowania, które znajduje wyszukiwanie po słowach kluczowych. Wyszukiwanie hybrydowe i kontekstowe ograniczają oba problemy.
  • Nieaktualne treści. Indeks jest kopią. Gdy dokumenty się zmieniają, trzeba zaktualizować je i ich embeddingi, najlepiej automatycznie i w tle.
  • Uprawnienia. Indeks musi respektować to, kto co może zobaczyć, tak aby człowiek pobierał tylko fragmenty, które wolno mu czytać.
  • Odpowiedzi wykraczające poza źródła. RAG ogranicza zmyślone odpowiedzi, ale ich nie eliminuje. Instrukcje, by odpowiadać wyłącznie na podstawie fragmentów, cytaty, które ludzie mogą sprawdzić, i zwykłe "nie wiem", gdy nie znaleziono nic istotnego, utrzymują odpowiedzi w zgodzie z prawdą.
  • Za dużo kontekstu. Modele mogą gubić informacje umieszczone w środku długiego promptu, więc mniej lepszych fragmentów często wygrywa z większą ich liczbą.

Sposobem, by sprawdzić, czy system RAG działa, jest test: zestaw prawdziwych pytań ze znanymi odpowiedziami i źródłami, mierzony pod kątem jakości wyszukiwania i odpowiedzi, przed każdą zmianą i po niej.

RAG, fine-tuning i długi kontekst

PodejścieCo zmieniaDo czego używać
RAGTo, co model widzi, gdy odpowiadaWiedza, która się zmienia, jest obszerna lub wymaga cytatów
Fine-tuningTo, jak model się zachowuje, przez dodatkowe trenowanieSpójny styl, format lub zadanie, a nie fakty, które się zmieniają
Długi kontekstTo, ile model czyta w jednym żądaniuKilka dokumentów naraz, na przykład jedna umowa lub jeden raport

Dobrze się łączą: model można dostroić do formatu, wiedzę czerpać z RAG, a cały dokument czytać, gdy zostanie załączony.

Gdzie firmy korzystają z RAG

  • Polityki i HR: odpowiedzi o urlopach, wydatkach lub zasadach bezpieczeństwa, z linkiem do polityki.
  • Obsługa klienta: odpowiedzi przygotowane na podstawie bazy wiedzy i dawnych zgłoszeń, do wysłania przez człowieka.
  • Dział prawny i compliance: research w umowach, klauzulach i przepisach, z każdym fragmentem zacytowanym.
  • Dokumentacja techniczna: odpowiedzi dla inżynierów i zespołów terenowych na podstawie instrukcji i specyfikacji.
  • Sprzedaż: fakty o produktach i teksty z dawnych ofert, pod konkretną szansę sprzedaży.

Źródła

FAQ

Pytania o RAG

Co oznacza skrót RAG w AI?

Retrieval-augmented generation: system wyszukuje odpowiednie fragmenty w Waszych treściach, a model generuje na ich podstawie odpowiedź i cytuje źródła.

Czym różni się RAG od fine-tuningu?

RAG zmienia to, co model widzi, gdy odpowiada, więc pasuje do wiedzy, która się zmienia i wymaga cytatów. Fine-tuning zmienia zachowanie modelu przez dodatkowe trenowanie, więc pasuje do spójnego stylu lub formatu.

Czy RAG eliminuje halucynacje AI?

Ogranicza je, ale ich nie eliminuje. Odpowiadanie wyłącznie na podstawie pobranych fragmentów, pokazywanie cytatów i informowanie, gdy nie znaleziono nic istotnego, sprawiają, że pozostałe błędy łatwo zauważyć.

Czy do RAG potrzebujemy wektorowej bazy danych?

Nie zawsze. Wyszukiwanie hybrydowe może działać na wyszukiwarkach, które łączą wyszukiwanie po słowach kluczowych z wektorowym, a na pierwszy krok mogą wystarczyć konektory platformy AI.

Czy RAG jest nadal potrzebny przy długich oknach kontekstowych?

Przy dużych lub zmieniających się zbiorach tak. Długi kontekst pasuje do kilku dokumentów naraz. RAG obniża koszty, respektuje uprawnienia i wskazuje źródła, a modele mogą pominąć informacje ukryte w środku długiego promptu.

Niech AI odpowiada na podstawie Waszych dokumentów. Zacznijcie od 30-minutowego briefingu.

Napiszcie, jakie treści i pytania macie na myśli. Odpowiemy, proponując konkretny następny krok.