Створення ієрархічного лексичного графа
Можливо, ви помітили, що в попередніх результатах було не лише переліки дій (acts). Побудова графа знань часто є ітеративним процесом. Вивід текстового розбивача зазвичай потребує додаткової перевірки та фільтрації перед створенням вузлів і зв'язків.
У цій вправі ви відфільтруєте додаткову інформацію, а потім використаєте її, щоб створити вузли Act, які з'єднаються з вузлом Play.
Змінну play_node, що містить об'єкт Node для п'єси, уже створено для вас, так само як і змінну graph_document для збереження нових вузлів і зв'язків, які ви створите.
Ця вправа є частиною курсу
Graph RAG з LangChain і Neo4j
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
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])