शुरू करेंमुफ़्त में शुरू करें

टेक्स्ट चंक्स बनाना

Romeo and Juliet का टेक्स्ट Acts और Scenes की संरचना वाले एक lexical graph में लोड किया गया है, लेकिन टेक्स्ट अब भी इतना बड़ा है कि उससे अर्थपूर्ण एम्बेडिंग्स (embedding — वेक्टर रूप में निरूपण) बनाना मुश्किल है. Act I, Scene I के टेक्स्ट को हर पंक्ति के लिए छोटे-छोटे चंक्स में बाँटने के लिए कोड पूरा करें.

visualize_graph() फंक्शन ग्राफ डॉक्युमेंट में मौजूद nodes और relationships को दिखाएगा.

यह अभ्यास पाठ्यक्रम का हिस्सा है

LangChain और Neo4j के साथ Graph RAG

पाठ्यक्रम देखें

अभ्यास निर्देश

  • हर line_node को graph_document ऑब्जेक्ट में append करें.
  • प्रत्येक scene और line_node के बीच HAS_LINE, तथा line_node और character के बीच SPOKEN_BY relationships बनाएँ और उन्हें graph_document में जोड़ें.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

graph_document = GraphDocument(nodes=[scene], relationships=[])
characters = {}

for i, line in enumerate(lines[20:40]): 
    character, text = get_character_and_line(line)

    line_node = Node(type="Line", id=f"{scene.id}-line-{i}", properties={"raw": line,"character": character, "text": text, "caption": f"{text[:15]}..."})

    if character not in characters:
        character_node = Node(type="Character", id=character, properties={"name": character})
        characters[character] = character_node
        graph_document.nodes.append(character_node)

    # Add nodes to the array
    graph_document.____.append(____)

    # Add relationship to the array
    graph_document.____.extend(
        [Relationship(source=scene, target=line_node, type="____"),
        Relationship(source=line_node, target=characters[character], type="SPOKEN_BY")]
    )

visualize_graph(graph_document)
कोड संपादित करें और चलाएँ