Comece agoraComece grátis

Usando entidades extraídas

A seção Dramatis Personæ do texto descreve os personagens da peça e pode ser considerada uma fonte abrangente e confiável. Ela também traz informações ricas sobre os relacionamentos pessoais entre os personagens.

 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.

Complete o código para extrair os personagens do texto personae usando o character_chain e, em seguida, use a lista de personagens para construir uma lista de relacionamentos a partir do texto usando o relationship_chain.

A função visualize_families() exibirá os relacionamentos resultantes em um grafo.

Este exercicio faz parte do curso

Graph RAG com LangChain e Neo4j

Ver curso

Instruções do exercicio

  • Invoque character_chain, passando personae para extrair as entidades de personagens.
  • Invoque relationship_chain usando o nome do personagem, personae e os personagens extraídos em formato JSON (character_json) para extrair os relacionamentos entre os três personagens listados e os personagens listados em personae.

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

# 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)
Editar e Executar Código