НачатьНачать бесплатно

Использование извлечённых сущностей

Раздел Dramatis Personæ описывает персонажей пьесы и может служить исчерпывающим источником информации. Он также содержит богатые сведения о личных взаимоотношениях между героями.

 Dramatis Personæ

ESCALUS, Prince of Verona.
MERCUTIO, kinsman to the Prince, and friend to Romeo.
PARIS, a young Nobleman, kinsman to the Prince.
Page to Paris.

Дополните код, чтобы извлечь персонажей из текста personae с помощью character_chain, а затем используйте полученный список персонажей для построения списка взаимоотношений из текста с помощью relationship_chain.

Функция visualize_families() отобразит полученные взаимоотношения в виде графа.

Это упражнение является частью курса

Graph RAG с LangChain и Neo4j

Посмотреть курс

Инструкции к упражнению

  • Вызовите character_chain, передав ему personae, чтобы извлечь сущности персонажей.
  • Вызовите relationship_chain, передав имя персонажа, personae и извлечённых персонажей в формате JSON (character_json), чтобы извлечь взаимоотношения между тремя указанными персонажами и персонажами, перечисленными в personae.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Extract characters from the personae variable
output = character_chain.____({"personae": ____})

character_json = dumps([dict(character) for character in output.characters])

# Extract the relationships
for character_name in ["Romeo", "Juliet", "Friar Lawrence"]:
    relationship_output = relationship_chain.invoke({
        "character_name": character_name, 
        "personae": ____, 
        "characters": ____
    })
    
    for relationship in relationship_output.relationships:
        all_relationships.append(relationship)

visualize_families(all_relationships, output)
Редактировать и запускать код