Utnyttja kraften i Graph RAG: Lås upp ostrukturerade data med semantisk sökning, inbäddningar och mer

Lås upp kraften i Graph RAG för semantisk sökning, informationsutvinning och avancerad dataanalys. Utforska denna öppen källkod, hämtningsförstärkt generationsram som utnyttjar kunskapsgrafer för att förbättra stora språkmodeller. Förbättra noggrannhet och relevans för komplexa frågor.

15 februari 2025

party-gif

Lås upp kraften i semantisk sökning, inbäddningar och vektorsökning med GraphRAG - den ultimata öppna källkods-RAG-motorn från Microsoft AI. Upptäck hur denna innovativa lösning kan transformera din dataanalys och frågebesvarande förmåga, och leverera mer relevanta och tillförlitliga insikter.

Vad är RAG (Retrieval Augmented Generation)?

RAG (Retrieval Augmented Generation) är en metod som används för att förbättra befintliga stora språkmodeller genom att införliva extern kunskap. Huvudidén bakom RAG är att kombinera styrkan hos stora språkmodeller med förmågan att hämta och utnyttja relevant information från externa källor, såsom kunskapsbanker eller textkorpusar.

De viktigaste fördelarna med RAG-metoden är:

  1. Förbättrad relevans: Genom att hämta och införliva relevant information kan RAG ge mer exakta och relevanta svar, särskilt för frågor som kräver specifik kunskap.

  2. Minskad hallucination: RAG har visat sig minska tendensen hos stora språkmodeller att generera hallucinerade eller faktiskt felaktigt innehåll, eftersom svaren är grundade i den hämtade informationen.

  3. Mångsidighet: Förutom frågebesvarande kan RAG tillämpas på olika NLP-uppgifter som informationsextraktion, rekommendation, sentimentanalys och sammanfattning.

  4. Hantering av privata data: RAG kan arbeta med privata eller känsliga datamängder, eftersom informationen bearbetas och lagras lokalt, utan behov av att dela data med externa tjänster.

Hur skiljer sig GraphRAG från traditionella RAG-system?

GraphRAG är ett betydande framsteg jämfört med traditionella baslinje-RAG-system. Här är hur det skiljer sig:

  1. Kunskapsgrafsextraktion: Till skillnad från enkel textbaserad hämtning kombinerar GraphRAG textextraktion med nätverksanalys och språkmodellsprompting för att konstruera en omfattande kunskapsgraf från inmatningsdata. Detta möjliggör en djupare, mer holistisk förståelse av innehållet.

  2. Förbättrad noggrannhet och relevans: Genom att utnyttja kunskapsgrafen kan GraphRAG ge mer exakta och relevanta svar, särskilt för komplexa eller specialiserade datamängder. Den grafbaserade metoden hjälper till att koppla samman olika informationsbitar och syntetisera insikter som överträffar baslinje-RAG-tekniker.

  3. Holistisk dataförståelse: GraphRAG följer en mer omfattande metod, vilket förbättrar den övergripande förståelsen och sammanfattningen av stora datamängder. Detta gör den till ett överlägset val för att utnyttja stora språkmodeller i avancerade dataanalys- och frågebesvarandeuppgifter.

  4. Minskad hallucination: GraphRAG har visat sig minska tendenserna hos stora språkmodeller att generera "hallucinerat" innehåll som inte är grundat i den tillhandahållna informationen. Den grafbaserade metoden hjälper modellen att hålla sig närmare den tillförlitliga informationen i sammanhanget.

  5. Mångsidighet: Förutom frågebesvarande kan GraphRAG tillämpas på en mängd olika naturliga språkbearbetningsuppgifter, såsom informationsextraktion, rekommendationer, sentimentanalys och sammanfattning, allt inom en privat, lokal lagringsmiljö.

Komma igång med GraphRAG

För att komma igång med GraphRAG, följ dessa steg:

  1. Installera förutsättningar:

    • Se till att du har Python installerat på ditt system.
    • Installera de nödvändiga paketen genom att köra pip install graphrag i din terminal eller kommandotolk.
  2. Klona databasen:

    • Öppna Visual Studio Code (eller din föredragna IDE) och skapa en ny mapp för projektet.
    • I terminalen, navigera till projektmappen och kör git clone https://github.com/microsoft/graph-rag.git för att klona GraphRAG-databasen.
  3. Konfigurera miljön:

    • I terminalen, navigera till graph-rag-katalogen.
    • Exportera din OpenAI API-nyckel genom att köra export GRAPHRAG_API_KEY=your_api_key_here.
  4. Skapa en indatamapp:

    • I terminalen, kör mkdir input för att skapa en indatamapp för dina dokument.
  5. Indexera dokumenten:

    • Placera dina dokument (t.ex. textfiler, PDF:er) i input-mappen.
    • I terminalen, kör python dm_rag_index.py för att indexera dokumenten.
  6. Chatta med dokumenten:

    • I terminalen, kör python dm_graph_rag.py --query "your_query_here" --root_dir . --method global.
    • Ersätt "your_query_here" med den fråga eller förfrågan du vill ställa om dokumenten.

GraphRAG kommer nu att använda den kunskapsgraf som den skapade under indexeringsprocessen för att ge relevanta och omfattande svar på dina förfrågningar, vilket överträffar traditionella hämtnings-förstärkta genereringsmetoder.

Indexering och konfiguration av GraphRAG

För att komma igång med GraphRAG, behöver du följa dessa steg:

  1. Installera förutsättningar:

    • Se till att du har Python installerat på ditt system.
    • Installera Pip genom att köra det angivna kommandot i din kommandotolk.
  2. Klona databasen:

    • Öppna Visual Studio Code och skapa ett nytt fönster.
    • Öppna terminalen genom att klicka på knappen för att växla panelen.
    • I terminalen, navigera till bash-miljön och kör kommandot pip install graphrag för att installera de nödvändiga paketen.
  3. Konfigurera miljön:

    • I terminalen, skriv cd graphrag för att navigera till den klonade databasen.
    • Exportera din OpenAI API-nyckel genom att köra kommandot export GRAPHRAG_API_KEY=your_api_key_here.
  4. Skapa en indatamapp:

    • I terminalen, kör kommandot mkdir input för att skapa en indatamapp där du kommer att placera dina filer eller dokument.
    • Öppna mappen i VS Code genom att klicka på "Arkiv" > "Öppna mapp" och välja den klonade databasen.
  5. Indexera dokumentet:

    • Placera ditt dokument (t.ex. en finansiell rapport) i indatamappen.
    • I terminalen, kör kommandot python dm_rrag index för att indexera det aktuella dokumentet.
    • Detta kommer att skapa en gemenskapsrapport om det indexerade dokumentet, som du nu kan använda för att chatta.
  6. Konfigurera miljön:

    • I env-filen kan du konfigurera API-nyckeln, modelltypen och andra inställningar.
    • Du kan ange användningen av en LLAMA-modell eller OpenAI-gränssnittet.
    • Spara ändringarna i env-filen.
  7. Kör koden:

    • I terminalen, kör kommandot python dm_rrag query --root_folder . --method global --query "your_query_here" för att börja chatta med det indexerade dokumentet.

Chatta med GraphRAG

För att chatta med GraphRAG, följ dessa steg:

  1. Efter att ha indexerat dokumentet med hjälp av kommandot python dm_rrag index, kan du initiera chatten genom att köra kommandot python dm_rrag query --root_folder . --method global "your query here".

  2. Ersätt "your query here" med den fråga eller det meddelande du vill ställa till GraphRAG om det indexerade dokumentet.

  3. GraphRAG kommer sedan att använda den kunskapsgraf som den skapade under indexeringsprocessen för att ge ett relevant och informativt svar, genom att utnyttja styrkan hos stora språkmodeller och den strukturerade informationen i kunskapsgrafen.

  4. Du kan fortsätta att chatta med GraphRAG genom att köra samma kommando med olika förfrågningar. Systemet kommer att använda den befintliga kunskapsgrafen för att ge svar anpassade efter dina frågor.

  5. Om du vill byta till en annan språkmodell, kan du konfigurera modellen i .env-filen genom att ange LLM_TYPE och tillhandahålla lämplig API-slutpunkt eller sökväg till den lokala modellen.

  6. GraphRAGs holistiska metod för hämtnings-förstärkt generering gör att den överträffar traditionella baslinje-RAG-tekniker, särskilt för komplexa eller privata datamängder, genom att koppla samman olika informationsbitar och tillhandahålla syntetiserade insikter.

FAQ