Dividindo a peça em Atos
Converter texto não estruturado em grafos lexicais hierárquicos é um processo iterativo que envolve criar divisores (splitters) para cada entidade lexical e então dividir por cada uma, em sequência.
Neste exercício, você vai projetar um divisor para separar a peça Romeu e Julieta em atos. Aqui está uma prévia da estrutura da peça:
The Project Gutenberg eBook of Romeo and Juliet
This ebook is for the use of anyone anywhere in the United States...
**PROLOGUE:**
Enter Chorus.
CHORUS.
Two households, both alike in dignity...
ACT I
SCENE I. A public place.
Enter Sampson and Gregory armed with swords and bucklers.
SAMPSON.
Gregory, on my word, we’ll not carry coals...
...
Este exercicio faz parte do curso
Graph RAG com LangChain e Neo4j
Instruções do exercicio
- Atualize o argumento
splitterspara também dividir o texto no padrão\n\nACT. - Configure o
act_splitterpara tratar a listaseparatorscomo expressões regulares. - Divida
romeo_and_julietusandoact_splitter.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
act_splitter = RecursiveCharacterTextSplitter(
separators=[
r"\n\nTHE PROLOGUE.",
r"\n\n\*\*\* END",
# Split by the word ACT
r"____"
],
# Configure the patterns as regular expressions
____=True
)
# Split the play using act_splitter
acts = act_splitter.____(____)
for act in acts:
print(act.strip().split("\n")[0])