시작하기무료로 시작하기

추출한 엔터티 사용하기

텍스트의 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.

character_chain을 사용해 personae 텍스트에서 등장인물을 추출하는 코드를 완성하고, 이어서 이 등장인물 목록을 사용해 relationship_chain으로 텍스트에서 관계 목록을 구축하세요.

visualize_families() 함수는 그래프에서 도출된 관계를 시각화해 보여줍니다.

이 연습은 강의의 일부입니다

LangChain과 Neo4j로 배우는 Graph RAG

강의 보기

연습 안내

  • character_chain을 호출해 personae를 전달하고 등장인물 엔터티를 추출하세요.
  • 세 등장인물 이름, personae, 그리고 JSON 형식으로 추출한 등장인물(character_json)을 사용해 relationship_chain을 호출하고, 세 등장인물과 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)
코드 편집 및 실행