Découpage sémantique
Toutes les stratégies de découpage que vous avez utilisées jusqu’ici ont le même inconvénient : elles ne tiennent pas compte du contexte du texte environnant, ce qui peut entraîner une perte d’information lors du découpage.
Dans cet exercice, vous allez créer et appliquer un découpeur sémantique, une méthode expérimentale de pointe qui segmente le texte en fonction de son sens. Lorsque le découpeur détecte que le sens du texte s’écarte au-delà d’un certain seuil, il effectue une découpe.
Cet exercice fait partie du cours
Retrieval Augmented Generation (RAG) avec LangChain
Instructions
- Instanciez le modèle d’« embeddings »
'text-embedding-3-small'd’OpenAI. - Créez un découpeur sémantique qui utilise des gradients de vecteurs pour déterminer la similarité sémantique et utilise
0.8comme seuil de découpe. - Découpez
documentà l’aide du découpeur sémantique.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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])