GraphRAG (SV)
GraphRAG — är ett avancerat paradigm för Retrieval-Augmented Generation (RAG), där en kunskapsgraf (Knowledge Graph, KG) används i stället för traditionell sökning bland fragmenterade textavsnitt (chunks)[1]. Den grafbaserade strukturen representerar explicit sambanden mellan entiteter och hierarkin av domänbegrepp, vilket gör det möjligt för LLM att utföra flerstegslogisk kunskapsutvinning och generera mer kontextmedvetna och förklarbara svar[2].
GraphRAG-metoden uppvisar en betydande fördel jämfört med klassisk RAG vid hantering av komplexa, flerstegsfrågor (multi‑hop), där svaret beror på en kombination av flera fakta spridda över olika dokument[3].
Begränsningar hos klassisk RAG och grafens fördelar
Klassisk RAG, som baseras på vektorsökning i ostrukturerad text, stöter på ett antal fundamentala begränsningar som blir kritiska i komplexa företagsscenarier:
- Avsaknad av strukturella samband: Traditionell RAG behandlar textavsnitt som isolerade enheter och ser inga explicita samband mellan dem. Detta gör den ineffektiv för multi‑hop-frågor, där svaret kräver att man följer en kedja av fakta (A→B→C), medan sökningen bara hittar de inledande och avslutande leden (A och C) och missar mellanleden[1].
- Semantisk tvetydighet: Inom specialiserade domäner (medicin, juridik, teknik) har termer specifika betydelser. Vektorsökning, som fångar det allmänna temat, kan feltolka rollen hos ett specifikt objekt, vilket leder till att irrelevant kontext hämtas.
- Begränsad förklarbarhet: Klassisk RAG tillhandahåller dokumentfragment men inga explicita bevis på hur dessa fragment hänger samman i en logisk kedja. GraphRAG gör däremot denna process transparent genom att tillhandahålla en sökväg i grafen som bevis och kräver att påståenden kopplas till källor (citering)[4].
GraphRAG löser dessa problem genom att representera kunskap som ett nätverk av sammankopplade entiteter och relationer, vilket gör det möjligt för systemet att inte bara hitta liknande text, utan att utföra logisk slutledning baserat på en formaliserad domänmodell.
Arkitektur för GraphRAG
Den generella GraphRAG-pipeline utökar klassisk RAG genom att lägga till steg för att bygga och använda en kunskapsgraf. Den är uppdelad i två huvudfaser: förberedelse offline och bearbetning av förfrågningar online.
Fas 1: Inmatning och indexering (offline)
I detta steg omvandlas källdata (dokument, databaser) till två kompletterande representationer: en grafbaserad och en vektorbaserad.
- Kunskapsutvinning: Strukturerade fakta extraheras från texter med hjälp av en NLP-pipeline:
- Named Entity Recognition (NER): Identifiering av omnämnanden av entiteter (personer, organisationer, produkter).
- Entity Linking (EL): Koppling av omnämnanden till kanoniska identifierare i grafen för att lösa tvetydigheter (till exempel blir «Ivanов I.I.» och «I. Ivanov» en och samma nod)[5].
- Relation Extraction (RE): Identifiering av relationer mellan entiteter (till exempel Företag X −förvärvade→ Startup Y).
- Modellering och lagring av grafen: De extraherade triplarna (subjekt‑predikat‑objekt) laddas in i en grafdatabas. Valet av modell (Property Graph eller RDF) beror på uppgiften. Det är avgörande att lagra ursprung (provenance) för varje faktum — en referens till källdokumentet och textavsnittet[3]. Metadata om tid (valid_from/valid_to) och tillförlitlighet (confidence) kan också läggas till i grafen.
- Hybridindexering: Parallellt med grafen skapas ett vektorindex för de ursprungliga textavsnitten. Detta möjliggör en kombination av strukturell sökning i grafen och semantisk textsökning.
Fas 2: Bearbetning av förfrågningar och svarsgenerering (online)
- Analys av förfrågningar: Användarens förfrågan analyseras för att identifiera nyckelentiteter som fungerar som «ingångspunkter» i grafen.
- Extrahering av delgraf: I stället för att söka efter enskilda avsnitt hittar GraphRAG en relevant delgraf — ett sammanhängande fragment av grafen runt «ingångspunkterna» som innehåller information för svaret. För detta används algoritmer som k‑hop-traversering eller Personalized PageRank (PPR)[6].
- Hybridsökning och sammanslagning av resultat: Parallellt med extraheringen av delgrafen utförs sökning via vektor- och/eller lexikal (BM25) index. Resultaten från grafen och texten kombineras och skickas vidare till nästa steg.
- Omrankning (Re‑ranking): Den kombinerade listan med kandidater (grafnoder och textavsnitt) omrankas med en mer precis modell (till exempel en cross-encoder) för att välja ut den mest relevanta informationen. Detta filtrerar bort brus och förbättrar precisionen[7].
- Kontextpaketering och generering: Det utvalda och omrankade kontextet (delgraf och texter) omvandlas till ett format som LLM kan förstå (till exempel en lista med påståenden med angivna källor). Denna berikade kontext matas in i prompten för att generera det slutliga svaret.
- Spårning och citering: Tack vare kopplingen «faktum ↔ källa» i grafen innehåller det genererade svaret exakta referenser till de dokument som bekräftar varje tes. Detta säkerställer hög trovärdighet och transparens.
Jämförelsetabell över komponenter
| Komponent/aspekt | Implementeringsalternativ | Fördelar | Nackdelar/risker | När det är att föredra |
|---|---|---|---|---|
| Kunskapsgrafmodell | RDF/OWL | Strikt ontologi, logisk slutledning (reasoning), kompatibilitet med Linked Open Data. | Svårt att lagra relationsattribut (tid, källa) utan extra entiteter (reification). | Semantiskt rika domäner med befintliga ontologier; deduktion krävs. |
| Property Graph (Neo4j, etc.) | Flexibilitet, godtyckliga egenskaper på noder/kanter, hög prestanda. | Kräver ett tydligt schema manuellt, annars risk för «kaos»; ingen enhetlig standard. | Snabb start med ostrukturerad data; integration med dokument (multi‑model DB). | |
| Extrahering av delgraf | k‑hop BFS / DFS | Täcker alla noder upp till djup k, enkel att implementera. | «Grafexplosion»: lavinartat ökande antal noder; kan returnera mycket brus. | Små grafer eller traversering på djup 1–2; hierarkiska strukturer. |
| Personalized PageRank (PPR) | Fokuserar på verkligt sammankopplade noder, brus filtreras bort[6]. | Kan missa en avlägsen men viktig nod (om det finns få vägar men den är kritisk). | Komplexa nätverk med många vägar (socialt nätverk, citationsgraf). | |
| Hybridsökning | Kombinerad lista (scalar fusion med vikt λ) | Justering av vikter λ möjliggör balansering av precision/recall för uppgiften[8]. | Fast λ är inte optimalt för alla typer av förfrågningar. | I prototypfasen; när det är känt att en källa är uppenbart viktigare. |
| Cross‑encoder rerank | Väsentlig precisionsökning; möjlighet att ta hänsyn till komplexa samband. | Ökar svarstiden; kräver träningsdata eller användning av färdiga modeller[7]. | High‑precision-scenarier (juridik, medicin) där maximal relevans i kontexten är viktig. | |
| Datasäkerhet | Filtrering av delgraf (RBAC/ABAC) | Granulär kontroll (ner till nodnivå) eliminerar läckor. | «Blinda fläckar»: om en viktig nod klippts bort kan svaret bli ofullständigt. | I företagsmiljöer med strikta åtkomstkrav (PII, GDPR, affärshemligheter). |
Spårning, förtroende och säkerhet
En av de främsta fördelarna med GraphRAG är möjligheten att presentera transparenta bevenskedjor. I stället för ett «svart låda»-svar kan systemet visa resonemangskedjan: «Faktum A nämns i [doc1]. Det är kopplat till faktum B [doc2], och B leder enligt [doc3] till C», — vilket ökar användarens förtroende och förenklar felsökning.
Dessutom möjliggör grafstrukturen granulär åtkomstkontroll (RBAC/ABAC). Varje nod eller kant i grafen kan ha en åtkomstetikett. Vid extrahering av delgrafen filtrerar systemet automatiskt bort data som användaren inte har behörighet till, vilket säkerställer säkerhet inom känsliga områden (ekonomi, HR, medicin).
Kvalitetsutvärdering
Utvärdering av ett GraphRAG-system är flerstegsbaserad och inkluderar mätvärden för varje komponent:
- Mätvärden för kunskapsutvinning: F1‑score för NER och RE för att bedöma kvaliteten på grafkonstruktionen.
- Mätvärden för extrahering av delgraf: Subgraph Recall@K (andelen fall där de noder/kanter som behövs för svaret ingick i den extraherade delgrafen) och Path Precision/Recall för multi‑hop-frågor.
- Mätvärden för LLM-svar:
- Faithfulness / Groundedness: i vilken utsträckning svaret strikt baseras på den tillhandahållna kontexten.
- Human evaluation: expertutvärdering utifrån kriterierna korrekthet, fullständighet och sammanhang.
För automatisering av utvärderingen används specialiserade benchmarks (till exempel WebQuestionsSP, GrailQA) och ramverk (till exempel RAGAS)[9].
Se även
- Retrieval‑Augmented Generation (RAG)
- Kunskapsgraf
- Vektordatabas
- Embedding
- AI-agent
- Utvärdering och benchmarks för LLM
Litteratur
- Zhang, Q. et al. (2025). A Survey of Graph Retrieval‑Augmented Generation for Customized Large Language Models. arXiv:2501.13958.
- Xu, Z. et al. (2024). Retrieval‑Augmented Generation with Knowledge Graphs for Customer Service Question Answering. arXiv:2404.17723.
- Hu, Y. et al. (2024). GRAG: Graph Retrieval‑Augmented Generation. arXiv:2405.16506.
- Nakano, R. et al. (2021). WebGPT: Browser‑assisted Question‑Answering with Human Feedback. arXiv:2112.09332.
- Yang, R. et al. (2025). KG‑IRAG: A Knowledge Graph‑Based Iterative Retrieval‑Augmented Generation Framework for Temporal Reasoning. arXiv:2503.14234.
- Song, Y. et al. (2023). Advancements in Complex Knowledge Graph Question Answering: A Survey. DOI:10.3390/electronics12214395.
- Nogueira, R.; Cho, K. (2019). Passage Re‑ranking with BERT. arXiv:1901.04085.
- Hsu, H.‑L.; Tzeng, J. (2025). DAT: Dynamic Alpha Tuning for Hybrid Retrieval in Retrieval‑Augmented Generation. arXiv:2503.23013.
- Lewis, P. et al. (2020). Retrieval‑Augmented Generation for Knowledge‑Intensive NLP Tasks. arXiv:2005.11401.
- Karpukhin, V. et al. (2020). Dense Passage Retrieval for Open‑Domain Question Answering. arXiv:2004.04906.
- Sun, H. et al. (2018). Open‑Domain Question Answering Using Early Fusion of Knowledge Bases and Text (GRAFT‑Net). arXiv:1809.00782.
- Sun, H.; Bedrax‑Weiss, T.; Cohen, W. W. (2019). PullNet: Open‑Domain Question Answering with Iterative Retrieval on Knowledge Bases and Text. arXiv:1904.09537.
- He, X. et al. (2024). G‑Retriever: Retrieval‑Augmented Generation for Textual Graph Understanding and Question Answering. arXiv:2402.07630.
- Es, S.; James, J.; Espinosa‑Anke, L.; Schockaert, S. (2024). RAGAs: Automated Evaluation of Retrieval Augmented Generation. ACL:2024.eacl-demo.16.
Noter
- ↑ 1.0 1.1 Zhang, Q., et al. A Survey of Graph Retrieval-Augmented Generation for Customized Large Language Models. arXiv, 2025. arXiv:2501.13958.
- ↑ Xu, Z., et al. Retrieval-Augmented Generation with Knowledge Graphs for Customer Service Question Answering. SIGIR, 2024. arXiv:2404.17723; DOI: 10.1145/3626772.3661370.
- ↑ 3.0 3.1 Hu, Y., et al. GRAG: Graph Retrieval‑Augmented Generation. arXiv, 2024. arXiv:2405.16506; также в Findings of NAACL 2025: ACL Anthology.
- ↑ Nakano, R., et al. WebGPT: Browser‑assisted question‑answering with human feedback. arXiv, 2021. arXiv:2112.09332.
- ↑ Yang, R., et al. KG‑IRAG: A Knowledge Graph‑Based Iterative Retrieval‑Augmented Generation Framework for Temporal Reasoning. arXiv, 2025. arXiv:2503.14234.
- ↑ 6.0 6.1 Song, Y., Li, W., Dai, G., Shang, X. Advancements in Complex Knowledge Graph Question Answering: A Survey. Electronics, 2023. DOI: 10.3390/electronics12214395.
- ↑ 7.0 7.1 Nogueira, R., Cho, K. Passage Re‑ranking with BERT. arXiv, 2019. arXiv:1901.04085.
- ↑ Hsu, H.‑L.; Tzeng, J. DAT: Dynamic Alpha Tuning for Hybrid Retrieval in Retrieval‑Augmented Generation. arXiv, 2025. arXiv:2503.23013.
- ↑ Es, S.; James, J.; Espinosa Anke, L.; Schockaert, S. RAGAs: Automated Evaluation of Retrieval Augmented Generation. EACL (System Demonstrations), 2024. ACL:2024.eacl-demo.16; также preprint: arXiv:2309.15217.