Microsoft ogłasza aktualizację GraphRAG, która poprawia skuteczność modułów AI w wyszukiwarce do generowania konkretnych i prawidłowych informacji. Nowa iteracja technologii wpływa na ograniczenie zużycia zasobów podczas generowania odpowiedzi, przyspiesza przetwarzanie LLM i zwiększa dokładność. Chociaż oficjalnie Microsoft nie nadaje iteracji nowego numeru, media branżowe szybko określiły ją jako GraphRAG 2.0. I trudno się temu dziwić, bo zmiany faktycznie są spore. W tym materiale przyjrzymy się nie tylko temu, jakie zmiany wprowadza GraphRAG 2.0, ale także sprawdzimy, do czego służy i jak faktycznie działa ta technologia.
Microsoft aktualizacje GraphRAG 2.0 – usprawnienia dla AI
Aktualizacja systemu GraphRAG przynosi wzrost skuteczności w udzielanych odpowiedziach przez moduł AI w wyszukiwarce. Towarzyszy temu ograniczenie zużycia zasobów – mocy obliczeniowej. GraphRAG 2.0 Już teraz Microsoft wykorzystuje GraphRAG w ramach zaawansowanych modeli Microsoft Azure OpenAI. Modele te wykorzystywane są głównie przez klientów korporacyjnych, m.in. do przetwarzania dużych wolumenów nieustrukturyzowanych danych i tworzenia dynamicznych raportów. GraphRAG wykorzystywany jest także w usłudze Bing Chat w wersji Enterprise. System ten umożliwia chatbotowi generowanie efektywniejszych odpowiedzi kontekstowych na pytania użytkowników, bazując na danych korporacyjnych i otwartych źródłach.
Na czym polega architektura GraphRAG?
GraphRAG to odmiana wywodząca się w z RAG (Retrieval-Augmented Generation), czyli metody łączącej modele językowe (LLM) z wyszukiwaniem informacji w bazach danych. System polega na wyszukiwaniu aktualnych, istotnych danych w zewnętrznych źródłach, a następnie wykorzystywaniu ich do generowania odpowiedzi na prompt użytkownika. RAGi powszechnie stosowane są w różnych modelach językowych. Ich skuteczność wpływa m.in. na to, jak często dany model będzie generował tzw. halucynacje.
Klasyczny model RAG bazuje w dużym stopniu na semantyce. Analizowane jest przede wszystkim znaczeniowe podobieństwo treści, przez co informacje na tematy niszowe, specjalistyczne często podatne są na wyższe ryzyko błędów. Rozwiązaniem tego problemu są właśnie systemy GraphRAG, które bazują na grafach wiedzy. Przypomnijmy w tym momencie, że graf wiedzy to coś na kształt architektury, w której różne dane przedstawiane są jako węzły (nods). Węzły powiązane są systemem relacji. Dzięki takiemu przedstawieniu informacji mamy do czynienia ze wstępną hierarchizacją, tzn. możliwe jest przedstawienie danych w ciągu przyczynowo-skutkowym oraz pogrupowanie ich w różne grupy tematyczne, semantyczne itd. O ile więc standardowy RAG bazuje na danych z jakiegoś indeksu wyszukiwarki, o tyle GraphRAG tworzy graf wiedzy, który hierarchicznie organizuje informacje na podstawie ich tematycznego podobieństwa.
Jak działa GraphRAG 2.0? Etapy przetwarzania danych z użyciem grafów wiedzy
GraphRAG 2.0 umiejętnie łączy generowanie odpowiedzi przez modele językowe z procesem wyszukiwania informacji w danych. Dodanie grafów wiedzy umożliwia lepsze organizowanie i przetwarzanie informacji. W świeżo zaktualizowanej wersji, znanej jako 2.0, GraphRAG zyskuje dodatkowe usprawnienia. Pierwszym z nich jest dynamiczny wybór kontekstowy (dynamic community selection), który sprawia, że system analizuje, które grupy danych są istotne dla danego zapytania i odrzuca niepotrzebne informacje.
Proces przetwarzania informacji przez GraphRAG 2.0 składa się z 2 nadrzędnych etapów: budowie grafu wiedzy i przetwarzaniu zapytań użytkownika. Dokładny opis tego procesu możemy sprawdzić m.in. w opublikowanym pod koniec września 2024 r. artykule naukowym pt. Enhancing Structured-Data Retrieval with GraphRAG: Soccer Data Case Study. Artykuł przedstawia wyniki skuteczności GraphRAG na przykładzie analizy danych z meczów piłkarskich. Najważniejsze jest jednak to, że potwierdza efektywność grafów wiedzy.
Pierwszy etap, czyli sama budowa grafu wiedzy, polega na segmentacji danych wejściowych na szereg grup i tematycznych. Następnie są one ze sobą łączone w oparciu o zależności, które mogą między nimi występować (np. osoby, miejsca, znaczenia). Każda grupa otrzymuje “podsumowanie” (report), które zawiera zindeksowany spis hierarchicznych powiązań między elementami.
Drugim krokiem jest obsługa zapytań użytkownika. Gdy użytkownik wprowadza prompt, GraphRAG 2.0 analizuje wpierw graf wiedzy w poszukiwaniu najistotniejszych grup tematycznych. W tym celu analizuje pokrewieństwo tematyczne i semantyczne między kontekstami z promptu użytkownika a najbardziej dopasowanymi elementami grafów wiedzy.
GraphRAG 2.0 wprowadza w cały proces szereg usprawnień. Dzięki zastosowaniu języka Cypher deweloperom z Microsoftu udało się zoptymalizować czas odpowiedzi i precyzję. System przetwarza grafy wiedzy w specjalnych, dostosowanych do tego bazach danych (Neo4j). Proces ten obejmuje tłumaczenie zapytań użytkownika na zapytania Cypher, które dalej umożliwiają precyzyjnie dopasowywanie do poszczególnych węzłów w grafie wiedzy. We wspomnianym już badaniu udowodniono, że dzięki tak zoperacjonalizowanym grafom wiedzy rozwiązywanie zadań przebiega znacznie szybciej bez utraty skuteczności, np. w konsekwencji błędnych interpretacji lub halucynacji modelu.
GraphRAG 2.0 w modułach AI wyszukiwarek
GraphRAG 2.0 z pewnością lada moment będzie implementowany w moduły AI wyszukiwarek internetowych. To zresztą jeden z głównych celów inżynierów Microsoftu. Obecnie najnowsze wersje systemu dostępne są w pakietach Enterprise dla usług specjalistycznych, takich jak np. wspomniane wcześniej Microsoft Azure OpenAI. Z reguły jest tak, że ta technologia, która jest bardziej przełomowa, wpierw trafia do klientów korporacyjnych. Tylko kwestią czasu jest to, kiedy pojawi się ona np. w modułach AI Microsoft Bing.
Wprowadzenie GraphRAG 2.0 do wyszukiwarek może zresztą nieco namieszać. Jeśli dalsze testy potwierdzą dotychczasowe obserwacje, technologia ta nie tylko znacznie poprawi jakość generowanych treści, ale także umożliwi bardziej trafne odpowiadanie na zapytania użytkowników. A to właśnie jest kluczową piętą Achillesową wszystkich modeli AI w wyszukiwarkach, włącznie z AI Overviews Google, które wciąż potrafi generować zupełnie nieprawdziwe, a wręcz niebezpieczne informacje.
Badania Microsoftu wskazują, że nowa wersja GraphRAG pozwala na zmniejszenie zużycia tokenów nawet o 77%, co przekłada się na niższe koszty operacyjne. To kluczowe, jeśli chodzi o dalszy rozwój modułów AI w wyszukiwarkach. Pomimo zaskakująco dobrych wyników finansowych Microsoftu i Alphabetu za 3 kwartał 2024 r., jasne jest, że rozwój technologii AI generuje coraz większe koszty. Redukcja zużycia zasobów obliczeniowych może pozytywnie wpływać na dalszy rozwój tych technologii.
Nowa wersja GraphRAG 2.0 – podsumowanie
Bezapelacyjnie GraphRAG 2.0 to przełomowa aktualizacja, która usprawnia proces wyszukiwania informacji i generowania odpowiedzi przez modele językowe. Nowa wersja wykorzystująca grafy wiedzy pozwala na znaczną oszczędność mocy obliczeniowej (do 70% niższe zużycie tokenów dla tych samych operacji), dzięki czemu w praktyce generowanie odpowiedzi jest po prostu tańsze. Przede wszystkim jednak aktualizacja pokazuje dobitnie, że integracja systemu grafów wiedzy z klasycznym modelem Retrieval-Augmented Generation (RAG) to właściwy kierunek dla rozwoju modeli językowych.
Dzięki wprowadzeniu dynamicznego sortowania grup tematycznych wersja GraphRAG 2.0 eliminuje niepotrzebne dane już na etapie przetwarzania zapytań. Aktualizacja wprowadza również większą elastyczność w integracji z różnorodnymi typami danych. Dzięki najnowszej aktualizacji wersja 2.0 sprawdzi się zarówno w modelach językowych wykorzystywanych przez usługi chmurowe, w zaawansowanych narzędziach analizy danych, jak i ma potencjał do implementacji w obrębie modułów AI wyszukiwarek internetowych. Jedynym mankamentem tej technologii jest konieczność zaawansowanego projektowania grafów wiedzy i sposobu ich operacjonalizowania. I na to jednak z pewnością prędzej czy później znajdziemy rozwiązanie!