Benut de kracht van Graph RAG: ontgrendel ongestructureerde gegevens met semantisch zoeken, embeddings en meer

Ontgrendel de kracht van Graph RAG voor semantisch zoeken, informatie-extractie en geavanceerde data-analyse. Verken dit open-source, retrieval-versterkte generatiekader dat kennis grafieken gebruikt om grote taalmodellen te verbeteren. Verbeter de nauwkeurigheid en relevantie voor complexe queries.

21 februari 2025

party-gif

Ontgrendel de kracht van semantisch zoeken, embeddings en vectorzoeken met GraphRAG - de ultieme open-source RAG-engine van Microsoft AI. Ontdek hoe deze innovatieve oplossing uw gegevensanalyse en vraag-antwoordmogelijkheden kan transformeren, waardoor u relevantere en betrouwbaardere inzichten krijgt.

Wat is RAG (Retrieval Augmented Generation)?

RAG (Retrieval Augmented Generation) is een benadering die wordt gebruikt om bestaande grote taalmodellen te verbeteren door externe kennis op te nemen. Het kernidee achter RAG is om de kracht van grote taalmodellen te combineren met de mogelijkheid om relevante informatie op te halen en te benutten uit externe bronnen, zoals kennisbases of tekstcorpora.

De belangrijkste voordelen van de RAG-benadering zijn:

  1. Verbeterde relevantie: Door het ophalen en opnemen van relevante informatie kan RAG nauwkeurigere en relevantere antwoorden geven, vooral voor vragen die specifieke kennis vereisen.

  2. Verminderde hallucinatie: Er is aangetoond dat RAG de neiging van grote taalmodellen om gefabriceerde of feitelijk onjuiste inhoud te genereren, vermindert, omdat de antwoorden worden gefundeerd op de opgehaalde informatie.

  3. Veelzijdigheid: Naast vraagbeantwoording kan RAG worden toegepast op verschillende NLP-taken zoals informatie-extractie, aanbeveling, sentimentanalyse en samenvatting.

  4. Omgang met privégegevens: RAG kan werken met privé- of gevoelige datasets, omdat de informatie lokaal wordt verwerkt en opgeslagen, zonder dat er gegevens met externe diensten hoeven te worden gedeeld.

Hoe verschilt GraphRAG van traditionele RAG-systemen?

GraphRAG is een belangrijke vooruitgang ten opzichte van traditionele RAG (Retrieval Augmented Generation)-systemen. Hier is het verschil:

  1. Extractie van kennisgrafen: In tegenstelling tot eenvoudige tekstgebaseerde opvraging, combineert GraphRAG tekstextractie met netwerkanalyse en taalmodelpromotie om een uitgebreide kennisgraaf op te bouwen uit de invoergegevens. Dit maakt een diepere, meer holistische begrip van de inhoud mogelijk.

  2. Verbeterde nauwkeurigheid en relevantie: Door gebruik te maken van de kennisgraaf kan GraphRAG nauwkeurigere en relevantere antwoorden geven, vooral voor complexe of gespecialiseerde datasets. De grafgebaseerde benadering helpt om uiteenlopende informatiestukken met elkaar te verbinden en inzichten te synthetiseren die beter presteren dan baseline RAG-technieken.

  3. Holistisch gegevensverstand: GraphRAG volgt een meer alomvattende benadering, waardoor het algehele begrip en de samenvatting van grote gegevensbestanden worden verbeterd. Dit maakt het een superieure keuze voor het benutten van grote taalmodellen in geavanceerde data-analyse- en vraagbeantwoordingstaken.

  4. Verminderde hallucinatie: GraphRAG heeft aangetoond de neiging van grote taalmodellen om "gehalluceerde" inhoud te genereren die niet is gefundeerd op de verstrekte informatie, te verminderen. De grafgebaseerde benadering helpt het model zich nauwer te houden aan de betrouwbare informatie in de context.

  5. Veelzijdigheid: Naast vraagbeantwoording kan GraphRAG worden toegepast op een verscheidenheid aan natuurlijke taalverwerkingstaken, zoals informatie-extractie, aanbevelingen, sentimentanalyse en samenvatting, allemaal binnen een privé, lokale opslagomgeving.

Aan de slag met GraphRAG

Om aan de slag te gaan met GraphRAG, volg je deze stappen:

  1. Installeer vereisten:

    • Zorg ervoor dat je Python op je systeem hebt geïnstalleerd.
    • Installeer de vereiste pakketten door in je terminal of opdrachtprompt pip install graphrag uit te voeren.
  2. Kloon de repository:

    • Open Visual Studio Code (of je favoriete IDE) en maak een nieuwe map voor het project.
    • Open in de terminal de projectmap en voer git clone https://github.com/microsoft/graph-rag.git uit om de GraphRAG-repository te klonen.
  3. Stel de omgeving in:

    • Navigeer in de terminal naar de graph-rag-map.
    • Exporteer je OpenAI API-sleutel door export GRAPHRAG_API_KEY=your_api_key_here uit te voeren.
  4. Maak een invoermap:

    • Voer in de terminal mkdir input uit om een invoermap voor je documenten aan te maken.
  5. Index de documenten:

    • Plaats je documenten (bijv. tekstbestanden, PDF's) in de input-map.
    • Voer in de terminal python dm_rag_index.py uit om de documenten te indexeren.
  6. Chat met de documenten:

    • Voer in de terminal python dm_graph_rag.py --query "your_query_here" --root_dir . --method global uit.
    • Vervang "your_query_here" door de vraag of query die je over de documenten wilt stellen.

GraphRAG zal nu de kennisgraaf die het tijdens het indexeren heeft gemaakt, gebruiken om relevante en uitgebreide antwoorden op je vragen te geven, waardoor het traditionele retrieval-augmented generation-technieken overtreft.

Indexeren en configureren van GraphRAG

Om aan de slag te gaan met GraphRAG, moet je de volgende stappen volgen:

  1. Installeer vereisten:

    • Zorg ervoor dat je Python op je systeem hebt geïnstalleerd.
    • Installeer Pip door de opgegeven opdracht in je opdrachtprompt uit te voeren.
  2. Kloon de repository:

    • Open Visual Studio Code en maak een nieuw venster.
    • Open de terminal door op de knop voor het omschakelen van het paneel te klikken.
    • Navigeer in de terminal naar de bash-omgeving en voer de opdracht pip install graphrag uit om de benodigde pakketten te installeren.
  3. Stel de omgeving in:

    • Typ in de terminal cd graphrag om naar de gekloonde repository te navigeren.
    • Exporteer je OpenAI API-sleutel door de opdracht export GRAPHRAG_API_KEY=your_api_key_here uit te voeren.
  4. Maak een invoermap:

    • Voer in de terminal de opdracht mkdir input uit om een invoermap aan te maken waar je je bestanden of documenten kunt plaatsen.
    • Open de map in VS Code door op "Bestand" > "Map openen" te klikken en de gekloonde repository te selecteren.
  5. Index het document:

    • Plaats je document (bijv. een financieel rapport) in de invoermap.
    • Voer in de terminal de opdracht python dm_rrag index uit om het huidige document te indexeren.
    • Dit zal een community-rapport over het geïndexeerde document maken, dat je nu kunt gebruiken voor het chatten.
  6. Configureer de omgeving:

    • In het env-bestand kun je de API-sleutel, modeltype en andere instellingen configureren.
    • Je kunt het gebruik van een LLAMA-model of de OpenAI-interface specificeren.
    • Sla de wijzigingen in het env-bestand op.
  7. Voer de code uit:

    • Voer in de terminal de opdracht python dm_rrag query --root_folder . --method global --query "your_query_here" uit om te beginnen met chatten met het geïndexeerde document.

Chatten met GraphRAG

Om met GraphRAG te chatten, volg je deze stappen:

  1. Nadat je het document hebt geïndexeerd met de opdracht python dm_rrag index, kun je de chat starten door de opdracht python dm_rrag query --root_folder . --method global "your query here" uit te voeren.

  2. Vervang "your query here" door de vraag of prompt die je GraphRAG wilt stellen over het geïndexeerde document.

  3. GraphRAG zal vervolgens de kennisgraaf die het tijdens het indexeren heeft gemaakt, gebruiken om een relevant en informatief antwoord te geven, waarbij het de kracht van grote taalmodellen en de gestructureerde informatie in de kennisgraaf benut.

  4. Je kunt doorgaan met chatten met GraphRAG door dezelfde opdracht uit te voeren met verschillende queries. Het systeem zal de bestaande kennisgraaf gebruiken om antwoorden op maat te geven op je vragen.

  5. Als je wilt overschakelen naar een ander taalmodel, kun je het model configureren in het .env-bestand door LLM_TYPE op te geven en het juiste API-eindpunt of het pad naar het lokale model te verstrekken.

  6. GraphRAG's holistische benadering van retrieval-augmented generation stelt het in staat om traditionele baseline RAG-technieken te overtreffen, vooral voor complexe of privégegevenssets, door uiteenlopende informatiestukken met elkaar te verbinden en gesynthetiseerde inzichten te bieden.

FAQ