Creare un grafo lessicale gerarchico
Avrai notato che il risultato precedente conteneva non solo gli atti. L’estrazione di un knowledge graph è spesso un processo iterativo. L’output di un text splitter richiede spesso esami e filtraggi aggiuntivi prima di creare nodi e relazioni.
In questo esercizio, filtrerai queste informazioni aggiuntive e poi le userai per creare nodi Act collegati a un nodo Play.
La variabile play_node, che contiene un oggetto Node per l’opera, è già stata creata per te, insieme a una variabile graph_document per contenere i nuovi nodi e le relazioni che creerai.
Questo esercizio fa parte del corso
Graph RAG con LangChain e Neo4j
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
acts = act_splitter.split_text(romeo_and_juliet)
for i, act in enumerate(acts):
lines = act.strip().split("\n")
# Only include text relating to an act
if lines[0].startswith(____):
print(i, act.strip().split("\n")[0])