Dividindo semanticamente
Todas as estratégias de divisão que você usou até agora têm a mesma desvantagem: a divisão não considera o contexto do texto ao redor, então o contexto pode ser facilmente perdido durante o processo.
Neste exercício, você vai criar e aplicar um divisor semântico de texto, que é um método experimental de ponta para dividir texto com base no significado semântico. Quando o divisor detectar que o significado do texto se desviou além de um determinado limite, será feita uma divisão.
Este exercício faz parte do curso
Retrieval Augmented Generation (RAG) com LangChain
Instruções do exercício
- Instancie o modelo de embedding
'text-embedding-3-small'da OpenAI. - Crie um divisor semântico de texto que use gradientes de vetores para determinar a similaridade semântica e use
0.8como o limite a partir do qual dividir. - Divida o
documentusando o divisor semântico.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Instantiate an OpenAI embeddings model
embedding_model = ____(api_key="", model='____')
# Create the semantic text splitter with desired parameters
semantic_splitter = ____(
embeddings=____, breakpoint_threshold_type="____", breakpoint_threshold_amount=____
)
# Split the document
chunks = ____
print(chunks[0])