Tworzenie hierarchicznego grafu leksykalnego
Być może zauważyłeś, że poprzednie wyniki zawierały więcej niż tylko akty. Wyodrębnianie grafu wiedzy to często proces iteracyjny. Wynik działania narzędzia do podziału tekstu wymaga zwykle dodatkowego sprawdzenia i filtrowania, zanim przejdzie się do tworzenia węzłów i relacji.
W tym ćwiczeniu przefiltrujemy te dodatkowe informacje, a następnie wykorzystamy je do utworzenia węzłów Act połączonych z węzłem Play.
Zmienna play_node zawierająca obiekt Node dla sztuki została już przygotowana wraz ze zmienną graph_document, w której będziesz przechowywać nowe węzły i relacje.
To ćwiczenie jest częścią kursu
Graph RAG z LangChain i Neo4j
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
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])