notizia

GraphRAG open source di Microsoft esplode in popolarità, l'intelligenza artificiale generativa è entrata nell'era dei grafici della conoscenza?

2024-07-15

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Rapporto sul cuore della macchina

Editore: Panda W

Il grafico della conoscenza non si ritira mai dall'ambiente!

LLM è molto potente, ma presenta anche alcuni evidenti limiti, come problemi di allucinazioni, scarsa interpretabilità, incapacità di cogliere il focus del problema, problemi di privacy e sicurezza, ecc. La generazione aumentata di recupero (RAG) può migliorare significativamente la qualità della generazione e l'utilità dei risultati di LLM.

All'inizio di questo mese, Microsoft ha rilasciato GraphRAG, la più potente soluzione di knowledge base RAG open source. Il progetto è diventato popolare subito dopo essere andato online e ora il numero di stelle ha raggiunto 10,5k.



  • Indirizzo del progetto: https://github.com/microsoft/graphrag
  • Documentazione ufficiale: https://microsoft.github.io/graphrag/

Alcune persone dicono che è più potente del normale RAG:



GraphRAG utilizza LLM per generare grafici della conoscenza, che possono migliorare significativamente le prestazioni di domande e risposte quando si esegue l'analisi di documenti su informazioni complesse, soprattutto quando si tratta di dati privati.



Risultati del confronto tra GraphRAG e RAG tradizionale

Oggi, RAG è una tecnica che utilizza informazioni del mondo reale per migliorare l'output LLM ed è una parte importante della maggior parte degli strumenti basati su LLM. In generale, RAG utilizza la somiglianza vettoriale come ricerca, denominata Baseline RAG. Ma Baseline RAG non funziona perfettamente in alcune situazioni. Per esempio:

  • Il RAG di base fatica a collegare i punti. Ciò si verifica quando per rispondere a una domanda è necessario attraversare diverse informazioni attraverso attributi condivisi per fornire nuove intuizioni combinate;
  • Il RAG di base ha prestazioni scarse quando viene richiesto di comprendere in modo completo i concetti semantici riepilogati in set di dati di grandi dimensioni o anche in un unico documento di grandi dimensioni.

GraphRAG proposto da Microsoft utilizza LLM per creare un grafico della conoscenza basato sulla libreria di testi di input. Questo grafico combina i riepiloghi della community e l'output del machine learning del grafico per migliorare i suggerimenti in fase di query. GraphRAG mostra miglioramenti significativi nel rispondere a entrambi i tipi di domande, dimostrando prestazioni superiori rispetto ai metodi precedenti sui set di dati privati.

Tuttavia, man mano che tutti acquisivano una comprensione più approfondita di GraphRAG, scoprivano che i suoi principi e i suoi contenuti erano davvero difficili da comprendere.



Recentemente, Philip Rathle, CTO della Neo4j Company, ha pubblicato un articolo sul blog intitolato "GraphRAG Manifesto: Adding Knowledge to Generative AI". Rathle ha introdotto in dettaglio i principi di GraphRAG e la differenza rispetto al RAG tradizionale in un linguaggio di facile comprensione GraphRAG e altro ancora.

Ha detto: "La tua prossima applicazione di intelligenza artificiale generativa probabilmente utilizzerà un grafico della conoscenza".



Philip Rathle, direttore tecnico di Neo4j

Leggi questo articolo qui sotto.

Stiamo arrivando a capirlo: per fare qualcosa di veramente significativo con l'intelligenza artificiale generativa, non puoi semplicemente fare affidamento su LLM autoregressivi per prendere decisioni per te.

So cosa stai pensando: "Usa RAG". Oppure ottimizza o attendi GPT-5.

SÌ. Tecniche come la generazione di aumento del recupero basato su vettori (RAG) e la messa a punto possono aiutarti. E risolvono abbastanza bene alcuni casi d'uso. Ma esiste un tipo di caso d’uso che fermerà tutte queste tecnologie.

Per molti problemi, la soluzione al RAG basato su vettori (e alla messa a punto) è essenzialmente quella di aumentare la probabilità della risposta corretta. Ma nessuna delle due tecniche fornisce un livello di certezza sulla risposta corretta. Spesso mancano di contesto e rendono difficile connettersi a qualcosa che già conosci. Inoltre, questi strumenti non forniscono indizi sul motivo per cui è stata presa una particolare decisione.

Riportiamo la nostra attenzione al 2012, quando Google lanciò il suo motore di ricerca di seconda generazione e pubblicò un iconico post sul blog "Introdurre il Knowledge Graph: cose, non stringhe". Hanno scoperto che se, oltre a eseguire varie elaborazioni di stringhe, utilizzassero un knowledge graph per organizzare tutte le cose rappresentate come stringhe in una pagina web, ciò potrebbe portare a un enorme miglioramento nella ricerca.

Ora, un modello simile sta emergendo nel campo dell’intelligenza artificiale generativa. Molti progetti di intelligenza artificiale generativa si scontrano con un muro, in cui la qualità dei risultati è limitata dal fatto che la soluzione si occupa di stringhe, non di cose.

Avanti veloce fino ad oggi, ingegneri AI e ricercatori accademici all’avanguardia hanno riscoperto ciò che Google aveva scoperto una volta: il segreto per superare questo collo di bottiglia è il grafico della conoscenza. In altre parole, si tratta di introdurre la conoscenza delle cose nella tecnologia testuale basata sulle statistiche. Il modo in cui funziona è simile a quello degli altri RAG, tranne per il fatto che oltre all'indicizzazione dei vettori richiama anche il grafico della conoscenza. Cioè: GraphRAG! (GraphRAG = Grafico della conoscenza + RAG)

L'obiettivo di questo articolo è fornire un'introduzione completa e comprensibile a GraphRAG. La ricerca mostra che l'inserimento dei dati in un grafico della conoscenza e il loro utilizzo tramite RAG possono offrire numerosi vantaggi importanti. Esistono molte ricerche che dimostrano che GraphRAG può rispondere alla maggior parte o a tutte le domande poste a LLM meglio di RAG utilizzando solo vettori ordinari.

Questo vantaggio da solo è sufficiente per promuovere notevolmente l’adozione di GraphRAG.

Ma non finisce qui; poiché i dati sono visibili durante la creazione di un'app, è anche più semplice da sviluppare.

Un terzo vantaggio di GraphRAG è che sia gli esseri umani che le macchine possono comprendere bene i grafici ed eseguire inferenze basate su di essi. Di conseguenza, la creazione di applicazioni utilizzando GraphRAG è più semplice e produce risultati migliori, oltre ad essere più facile da interpretare e controllare (fondamentale per molti settori).

Credo che GraphRAG sostituirà RAG solo vettoriale come architettura RAG predefinita per la maggior parte dei casi d'uso. Questo articolo spiega perché.

Cos'è una mappa?

Innanzitutto dobbiamo chiarire cos’è un grafico.

Grafico, detto anche grafico, viene spesso tradotto con “grafico”, ma viene quindi facilmente confuso con concetti come immagine e quadro. Per facilitare la distinzione, questo articolo utilizza solo il metodo di traduzione "图图".

Il grafico probabilmente assomiglia a questo:



Esempio di mappa

Anche se questa immagine viene spesso utilizzata come esempio di grafico della conoscenza, la sua fonte e il suo autore non sono più noti.

o questo:



Mappa delle relazioni tra i personaggi di "Il Trono di Spade", di William Lyon

o questo:



Mappa della metropolitana di Londra. Fatto curioso: Transport for London ha recentemente implementato un’applicazione di gemello digitale basata su grafici per migliorare le capacità di risposta agli incidenti e ridurre la congestione.

In altre parole, una mappa non è un diagramma.

Qui non ci soffermeremo troppo sui problemi di definizione, partendo dal presupposto che tu abbia già capito cos’è una mappa.

Se comprendi le immagini sopra, probabilmente puoi vedere come i dati del knowledge graph sottostante (memorizzati nel database del grafico) possono essere interrogati e utilizzati come parte di un flusso di lavoro RAG. Questo è GraphRAG.

Due forme di presentazione della conoscenza: vettori e grafici

Il nucleo di un tipico RAG è la ricerca vettoriale, che consiste nel trovare e restituire testi concettualmente simili dai materiali scritti dei candidati sulla base di blocchi di testo di input. Questo tipo di automazione funziona alla grande e anche le ricerche di base sono utili.

Ma ogni volta che esegui una ricerca, potresti non aver pensato a cosa sia un vettore o a come viene implementato il calcolo della somiglianza. Poi diamo un'occhiata ad Apple. Presenta diverse forme dalla prospettiva umana, dalla prospettiva vettoriale e dalla prospettiva del grafico:



Apple dal punto di vista umano, dal punto di vista vettoriale e dal punto di vista della mappa

Per gli esseri umani, la rappresentazione di una mela è complessa e multidimensionale e le sue caratteristiche non possono essere completamente descritte su carta. Ecco che possiamo poeticamente immaginare che questa foto rossa possa rappresentare percettivamente e concettualmente una mela.

La rappresentazione vettoriale di questa mela è un array. La magia dei vettori è che ciascuno di essi cattura l'essenza del testo corrispondente in forma codificata. Ma nel contesto RAG, i vettori sono necessari solo quando è necessario determinare quanto una parte di testo è simile a un'altra parte di testo. Per fare ciò, esegui semplicemente un calcolo di somiglianza e verifica la corrispondenza. Ma se vuoi comprendere il significato all'interno di un vettore, capire cosa è rappresentato nel testo e ottenere informazioni sulla sua relazione con un contesto più ampio, allora usare la rappresentazione vettoriale non risolverà il problema.

Al contrario, i grafici della conoscenza rappresentano il mondo in forma dichiarativa, nella terminologia del campo dell'intelligenza artificiale, cioè simbolica. Pertanto, sia gli esseri umani che le macchine possono comprendere il grafo della conoscenza ed eseguire ragionamenti basati su di esso. Questo è importante e verrà menzionato più avanti.

Inoltre, puoi interrogare, visualizzare, annotare, modificare ed estendere il grafico della conoscenza. Un grafico della conoscenza è un modello mondiale in grado di rappresentare il mondo nel tuo attuale campo di lavoro.

GraficoRAG e RAG

I due non sono in competizione. Per RAG sono utili sia le query vettoriali che quelle su grafo. Come sottolinea Jerry Liu, fondatore di LlamaIndex: Quando si pensa a GraphRAG, è utile includere i vettori. Questo è diverso dal "RAG solo vettoriale", basato interamente sulla somiglianza tra gli incorporamenti di testo.

Fondamentalmente GraphRAG è una sorta di RAG, tranne per il fatto che il suo percorso di ricerca include il grafico della conoscenza. Come vedrai di seguito, lo schema principale di GraphRAG è molto semplice. La sua architettura è la stessa di RAG che utilizza i vettori, ma include un livello di grafico della conoscenza.

Modalità GraphRAG

Un modello comune per GraphRAG



Come puoi vedere, è stata attivata una query sul grafico nell'immagine sopra. Facoltativamente può includere un componente di somiglianza vettoriale. Puoi scegliere di archiviare il grafico e i vettori in due database diversi oppure utilizzare un database grafico come Neo4j che supporta la ricerca vettoriale.

Di seguito è riportato uno schema comune per l'utilizzo di GraphRAG:

1. Eseguire una ricerca vettoriale o una ricerca per parola chiave per trovare un insieme di nodi iniziali;

2. Attraversare il grafico e riportare informazioni sui nodi rilevanti;

3. (Facoltativo) Utilizzare algoritmi di classificazione basati su grafici come PageRank per riclassificare i documenti

Casi d’uso diversi porteranno a modelli di utilizzo diversi. Come tutte le direzioni di ricerca nel campo dell'intelligenza artificiale di oggi, anche GraphRAG è un campo ricco di ricerca, con nuove scoperte che emergono ogni settimana.

Ciclo di vita di GraphRAG

Anche l'intelligenza artificiale generativa che utilizza GraphRAG segue lo schema di qualsiasi altra applicazione RAG. All'inizio è presente un passaggio "crea grafico":



Ciclo di vita di GraphRAG

Creare un grafico è simile a suddividere un documento in blocchi e caricarlo in un database vettoriale. I progressi negli strumenti hanno reso la creazione delle mappe abbastanza semplice. Ecco tre buone notizie:

1. Le mappe sono molto iterative: puoi iniziare con una "mappa minima praticabile" e poi espandere in base ad essa.

2. Una volta aggiunti i dati al grafico della conoscenza, questi possono essere facilmente evoluti. È possibile aggiungere più tipi di dati per ottenere e sfruttare gli effetti della rete dati. Puoi anche migliorare la qualità dei tuoi dati per aumentare il valore della tua applicazione.

3. Il settore si sta evolvendo rapidamente, il che significa che man mano che gli strumenti diventano più sofisticati, la creazione di mappe diventerà sempre più semplice.

L'aggiunta dei passaggi di creazione della mappa all'immagine precedente risulterà in un flusso di lavoro come mostrato di seguito:



Aggiungi passaggi per la creazione della mappa

Diamo un'occhiata ai vantaggi che GraphRAG può offrire.

Perché utilizzare GraphRAG?

Rispetto al RAG solo vettoriale, i vantaggi di GraphRAG sono principalmente suddivisi in tre categorie:

1. Maggiore precisione e risposte più complete (vantaggio di runtime/produzione)

2. Una volta creato il grafo della conoscenza, sarà più semplice creare e mantenere applicazioni RAG (vantaggio in termini di tempo di sviluppo)

3. Migliore spiegabilità, tracciabilità e controllo degli accessi (vantaggi in termini di governance)

Ecco uno sguardo approfondito a questi vantaggi.

1. Maggiore precisione e risposte più utili

Il primo vantaggio di GraphRAG (e il più immediatamente visibile) è la maggiore qualità delle sue risposte. Sia nel mondo accademico che nell’industria, possiamo vedere molte prove a sostegno di questa osservazione.

Come questo esempio della società di cataloghi dati Data.world. Alla fine del 2023, hanno pubblicato un rapporto di ricerca che mostrava che GraphRAG poteva migliorare l'accuratezza delle risposte LLM in media di 3 volte su 43 domande aziendali. Questo studio di riferimento fornisce la prova che i grafici della conoscenza possono migliorare significativamente l'accuratezza della risposta.



Il grafico della conoscenza migliora la precisione della risposta LLM di 54,2 punti percentuali, ovvero circa 3 volte.

Microsoft ha inoltre fornito una serie di prove, tra cui un blog di ricerca del febbraio 2024 "GraphRAG: Unlocking LLM discovery on narrative private data" e un documento di ricerca correlato "From Local to Global: A Graph RAG Approach to Query-Focused Summarization" 》E software: https://github.com/microsoft/graphrag (il GraphRAG menzionato all'inizio sopra).

Tra questi, hanno osservato i seguenti due problemi con il RAG di base utilizzando i vettori:

  • Il RAG di base rende difficile unire i punti. Per sintetizzare informazioni diverse per ottenere nuove intuizioni, è necessario attraversare diversi frammenti di informazioni attraverso attributi condivisi. In questo momento, è difficile per il RAG di base collegare diversi frammenti di informazioni.
  • Il RAG di base funziona male quando viene chiesto di comprendere in modo completo concetti semantici riepilogati induttivamente su grandi raccolte di dati o anche su singoli documenti di grandi dimensioni.

Microsoft ha scoperto: “Utilizzando il grafico della conoscenza generato da LLM, GraphRAG può migliorare significativamente la parte di “recupero” di RAG, inserendo contenuti più rilevanti per la finestra di contesto, ottenendo così risposte migliori e ottenendo fonti di prova. " Hanno anche scoperto che rispetto ad altri metodi alternativi, GraphRAG richiede dal 26% al 97% in meno di token, quindi non solo fornisce risposte migliori, ma ha anche costi inferiori e una migliore scalabilità.

Scavando un po’ più a fondo nel campo della precisione, sappiamo che, sebbene sia importante che la risposta sia corretta, deve anche essere utile. È stato scoperto che GraphRAG non solo rende le risposte più accurate, ma anche più ricche, più complete e più utili.

Il recente articolo di LinkedIn "Retrieval-Augmented Generation with Knowledge Graphs for Customer Service Question Answering" è un eccellente esempio dell'impatto di GraphRAG sulle sue applicazioni di servizio clienti. GraphRAG ha migliorato l'accuratezza e la completezza delle risposte del servizio clienti, rendendole più utili, e ha ridotto del 28,6% il tempo medio impiegato dal team del servizio clienti per risolvere ciascun problema.

Il workshop sull'intelligenza artificiale generativa di Neo4j ha un esempio simile. Come mostrato di seguito, questa è la risposta ottenuta con i metodi "vettore + GraphRAG" e "solo vettore" per una serie di documenti depositati alla SEC:



Confronto tra i metodi "solo vettore" e "vettore + GraphRAG".

Si prega di notare la differenza tra "descrivere le caratteristiche delle aziende che potrebbero essere colpite dalla carenza di litio" ed "elencare le società specifiche che potrebbero essere colpite". Se sei un investitore che cerca di riequilibrare un portafoglio in risposta ai cambiamenti del mercato, o un'azienda che cerca di riallineare la propria catena di fornitura in risposta a un disastro naturale, le informazioni sul lato destro del grafico sopra sono sicuramente molto più importanti delle informazioni sulla sinistra. Qui entrambe le risposte sono accurate. Ma la risposta a destra è chiaramente più utile.

Going Meta Episode 23 di Jesus Barrasa fornisce un altro ottimo esempio: iniziare con una mappa di parole per lavorare con documenti legali.

Di tanto in tanto vediamo anche nuovi esempi dal mondo accademico e industriale. Ad esempio, Charles Borderie di Lettria ha fornito un esempio comparativo dei metodi "solo vettore" e "vettore + GraphRAG" GraphRAG si basa su un flusso di lavoro da testo a grafico basato su LLM per organizzare 10.000 articoli finanziari in un grafico della conoscenza:



Metodi solo di ricerca e metodi di ricerca di grafici

Si può vedere che rispetto all'utilizzo del RAG ordinario, l'utilizzo di GraphRAG non solo può migliorare la qualità delle risposte, ma anche ridurre di un terzo il numero di token nelle risposte.

Prendiamo un altro esempio da Writer. Recentemente hanno pubblicato un rapporto di benchmark RAG basato sul framework RobustQA, che ha confrontato il loro metodo basato su GraphRAG con altri strumenti simili. Il punteggio ottenuto da GraphRAG è dell'86%, che è significativamente migliore rispetto ad altri metodi (che vanno dal 33% al 76%), pur avendo prestazioni di latenza simili o migliori.



Risultati della valutazione dell'accuratezza e del tempo di risposta del metodo RAG

GraphRAG supporta una varietà di applicazioni di intelligenza artificiale generativa. I grafici della conoscenza aprono la strada per rendere i risultati dell’intelligenza artificiale generativa più accurati e utili.

2. Migliore comprensione dei dati e iterazione più rapida

I grafici della conoscenza sono intuitivi, sia concettualmente che visivamente. L’esplorazione dei grafici della conoscenza spesso porta a nuove intuizioni.

Molti utenti del knowledge graph hanno condiviso questo risultato inaspettato: una volta che investono nel completamento del proprio knowledge graph, possono aiutarli a creare ed eseguire il debug delle proprie applicazioni di intelligenza artificiale generativa in un modo inaspettato. Parte del motivo è che se si osservano i dati sotto forma di grafico, è possibile vedere che i dati alla base di queste applicazioni presentano un'immagine vivida dei dati.

I grafici ti consentono di tracciare risposte, trovare dati e tracciare la catena causale lungo il percorso.

Diamo un’occhiata all’esempio sopra riguardante la carenza di litio. Se visualizzi il suo vettore, otterrai qualcosa di simile all'immagine qui sotto, ma con più righe e colonne.



Visualizzazione vettoriale

E se converti i dati in un grafico, puoi capirli in un modo che una rappresentazione vettoriale non può fare.

Quello che segue è un esempio tratto da un recente webinar LlamaIndex, che mostra come utilizzano la relazione "MENTIONS" per estrarre blocchi di parole vettorizzate (grafico del vocabolario) e LLM per estrarre un grafico di entità (grafico del dominio) e connettere le due Abilità:



Estrai la mappa del vocabolario e la mappa del dominio

(Ci sono anche molti esempi che utilizzano strumenti come Langchain, Haystack e SpringAI.)

Puoi vedere la ricca struttura dei dati in questo diagramma e immaginare le nuove possibilità di sviluppo e debug che consente. Ogni dato ha il proprio valore e la struttura stessa memorizza e trasmette significati aggiuntivi che puoi utilizzare per rendere la tua applicazione più intelligente.

Non è solo visualizzazione. Si tratta anche di consentire alle strutture dati di trasmettere e memorizzare significato. Ecco la reazione di uno sviluppatore di una nota azienda fintech, appena una settimana dopo aver introdotto i grafici della conoscenza nel flusso di lavoro RAG:



Reazione dello sviluppatore a GraphRAG

La reazione di questo sviluppatore è molto coerente con l'ipotesi dello "sviluppo test-driven", che consiste nel verificare (ma non fidarsi) se la risposta è corretta. Personalmente, inorridirei se mi chiedessero di dare il 100% della mia autonomia a un’intelligenza artificiale il cui processo decisionale è completamente opaco. Più specificamente, anche se non sei un credente del giorno del giudizio universale sull'intelligenza artificiale, sarai d'accordo: se non riesci a mappare le parole o i documenti relativi a "Apple, Inc." alla società "Apple Corps" (che sono due cose completamente diverse), avrà davvero un grande valore. Poiché in definitiva sono i dati a guidare le decisioni relative all’intelligenza artificiale generativa, è probabilmente più importante valutare e garantire la correttezza dei dati.

3. Governance: spiegabilità, sicurezza e altro ancora

Quanto maggiore è l’impatto di una decisione basata sull’intelligenza artificiale generativa, tanto più è necessario convincere le persone che sono in ultima analisi responsabili se la decisione va male. Ciò di solito comporta la verifica di ogni decisione. Ciò richiede una registrazione affidabile e ripetibile di buone decisioni. Ma questo non basta. Quando si adotta o si abbandona una decisione è necessario spiegarne anche le ragioni.

Lo stesso LLM non lo fa bene. Sì, puoi fare riferimento alla documentazione utilizzata per arrivare a questa decisione. Ma questi documenti non spiegano la decisione in sé, per non parlare del fatto che LLM ha inventato le fonti. I grafici della conoscenza si collocano su un livello completamente diverso, rendendo più chiara la logica del ragionamento dell’intelligenza artificiale generativa e facilitando l’interpretazione degli input.

Continuiamo con l'esempio sopra: Charles di Lettria ha caricato entità estratte da 10.000 articoli finanziari in un knowledge graph e ha utilizzato un LLM per eseguire GraphRAG. Vediamo che questo fornisce risposte migliori. Diamo un’occhiata ai dati:



Carica le entità estratte da 10.000 articoli finanziari nel grafico della conoscenza

Innanzitutto, pensa ai tuoi dati come a un grafico. Inoltre, possiamo navigare ed interrogare i dati, nonché rivederli e aggiornarli in qualsiasi momento. Il vantaggio in termini di governance è che diventa molto più semplice visualizzare e verificare il "modello mondiale" di questi dati. Utilizzando un grafico è più probabile che la persona responsabile in ultima analisi comprenda il ragionamento alla base della decisione rispetto all’utilizzo di una versione vettoriale degli stessi dati.

Quando si tratta di garantire la qualità, se puoi inserire i tuoi dati in un grafico della conoscenza, sarà più facile trovare errori e sorprese e risalire alla loro fonte. È inoltre possibile ottenere informazioni sulla provenienza e sulla confidenza nel grafico, che possono poi essere utilizzate nei calcoli e nelle interpretazioni. Semplicemente non è possibile farlo con una versione solo vettoriale degli stessi dati e, come abbiamo discusso in precedenza, i dati vettoriali sono difficili da comprendere per le persone medie (e anche non medie).

I grafici della conoscenza possono anche migliorare significativamente la sicurezza e la privacy.

La sicurezza e la privacy spesso non sono molto importanti quando si costruisce un prototipo, ma sono fondamentali se deve essere integrato in un prodotto. Nei settori regolamentati come quello bancario o sanitario, l'accesso ai dati di qualsiasi dipendente dipende dalla sua qualifica lavorativa.

Che si tratti di LLM o di un database vettoriale, non esiste un buon modo per limitare l'ambito dell'accesso ai dati. I grafici della conoscenza possono fornire una buona soluzione, utilizzando il controllo dei permessi per regolare l’ambito dei database a cui i partecipanti possono accedere, impedendo loro di vedere dati che non sono autorizzati a vedere. Quella che segue è una semplice policy di sicurezza che può implementare un controllo granulare delle autorizzazioni nel grafo della conoscenza:



Una semplice strategia di sicurezza che può essere implementata nei grafici della conoscenza

Creare un grafico della conoscenza

Cosa è necessario per costruire un grafico della conoscenza? Il primo passo è comprendere i due grafici più rilevanti per le applicazioni di intelligenza artificiale generativa.

Il grafico del dominio rappresenta il modello mondiale rilevante per l'applicazione corrente. Ecco un semplice esempio:



Mappa del dominio

Un grafico lessicale è un grafico della struttura del documento. Il grafico del vocabolario più elementare è costituito da nodi composti da blocchi di parole:



mappa del vocabolario

Le persone spesso lo estendono per includere relazioni tra blocchi, oggetti di documenti (come tabelle), capitoli, paragrafi, numeri di pagina, nomi o numeri di documenti, raccolte, fonti, ecc. Puoi anche combinare insieme mappe di dominio e mappe di vocabolario, come mostrato di seguito:



Combina il livello del dominio e il livello del vocabolario

Creare una mappa del vocabolario è molto semplice, si tratta principalmente di semplici analisi e suddivisioni. Per quanto riguarda la mappa del dominio, esistono diversi percorsi di creazione a seconda della fonte dei dati (da fonti dati strutturate, fonti dati non strutturate o entrambe). Fortunatamente, gli strumenti per creare grafici della conoscenza da fonti di dati non strutturati si stanno sviluppando rapidamente.

Ad esempio, il nuovo Neo4j Knowledge Graph Builder può creare automaticamente grafici della conoscenza utilizzando documenti PDF, pagine web, video di YouTube e articoli di Wikipedia. L'intero processo è semplice: bastano pochi clic su un pulsante e puoi visualizzare e interrogare le mappe di dominio e vocabolario del testo che inserisci. Questo strumento è molto potente e interessante e può abbassare notevolmente la soglia per la creazione di grafici della conoscenza.

Per quanto riguarda i dati strutturati (come i dati strutturati archiviati dalla tua azienda su clienti, prodotti, posizioni geografiche, ecc.), possono essere mappati direttamente in un grafico della conoscenza. Ad esempio, per i dati strutturati, che vengono comunemente archiviati in database relazionali, è possibile utilizzare alcuni strumenti standard per mappare le relazioni in grafici basati su regole comprovate e affidabili.

Utilizza il grafico della conoscenza

Una volta che hai un grafico della conoscenza, puoi creare GraphRAG. Ci sono molti framework tra cui scegliere, come LlamaIndex Property Graph Index, Neo4j integrato in Langchain e la versione integrata di Haystack. Questo campo si sta sviluppando rapidamente, ma ora il metodo di programmazione sta diventando molto semplice.

Lo stesso vale per la creazione di grafici. Sono ora comparsi strumenti come Neo4j Importer (che può importare e mappare dati tabulari in grafici attraverso un'interfaccia grafica) e il già citato Neo4j Knowledge Graph Builder. La figura seguente riassume i passaggi per la costruzione di un grafico della conoscenza.



Crea automaticamente grafici della conoscenza per l'intelligenza artificiale generativa

L'utilizzo dei grafici della conoscenza può anche mappare le domande sul linguaggio umano nelle query del database dei grafici. Neo4j ha rilasciato uno strumento open source, NeoConverse, che aiuta a utilizzare il linguaggio naturale per interrogare i grafici della conoscenza: https://neo4j.com/labs/genai-ecosystem/neoconverse/

Anche se è necessario imparare a usare i grafici, la buona notizia è che man mano che gli strumenti si evolvono, tutto diventa più semplice.

Riepilogo: GraphRAG è l'inevitabile futuro di RAG

Le competenze informatiche e linguistiche basate su parole intrinseche di LLM combinate con RAG basato su vettori possono portare a ottimi risultati. Per ottenere buoni risultati in modo stabile, è necessario andare oltre il livello delle stringhe e costruire un modello mondiale al di sopra del modello verbale. Allo stesso modo, Google ha scoperto che per padroneggiare la ricerca era necessario andare oltre la semplice analisi del testo e mappare le relazioni tra le cose rappresentate dalle stringhe. Stiamo iniziando a vedere emergere lo stesso modello nel mondo dell’intelligenza artificiale. Questa modalità è GraphRAG.

La curva di sviluppo della tecnologia è a forma di S: dopo che una tecnologia ha raggiunto il suo apice, un’altra tecnologia promuoverà il progresso e supererà la prima. Con lo sviluppo dell’intelligenza artificiale generativa, aumenteranno anche i requisiti per le relative applicazioni: dalle risposte di alta qualità alla spiegabilità al controllo minuzioso delle autorizzazioni di accesso ai dati, della privacy e della sicurezza, aumenterà anche il valore dei grafici della conoscenza.



L’evoluzione dell’intelligenza artificiale generativa

La tua prossima applicazione di intelligenza artificiale generativa utilizzerà probabilmente un grafico della conoscenza.

Link di riferimento: https://neo4j.com/blog/graphrag-manifesto/