Kom igångKom igång gratis

Använda extraherade entiteter

Avsnittet Dramatis Personæ i texten beskriver pjäsens karaktärer och kan ses som en fullständig källa för sanningen. Informationen innehåller också rika detaljer om de personliga relationerna mellan karaktärerna.

 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.

Komplettera koden för att extrahera karaktärerna från texten personae med hjälp av character_chain, och använd sedan listan med karaktärer för att bygga en lista med relationer från texten med relationship_chain.

Funktionen visualize_families() visar de resulterande relationerna i en graf.

Den här övningen är en del av kursen

Graph RAG med LangChain och Neo4j

Visa kurs

Övningsinstruktioner

  • Anropa character_chain och skicka in personae för att extrahera karaktärsentiteterna.
  • Anropa relationship_chain med karaktärens namn, personae och de extraherade karaktärerna i JSON-format (character_json) för att extrahera relationerna mellan de tre listade karaktärerna och de karaktärer som finns i personae.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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)
Redigera och kör kod