CommencezCommencez gratuitement

Découpage par caractère

Un processus clé pour mettre en place la Retrieval Augmented Generation (RAG) consiste à découper les documents en segments afin de les stocker dans une base de données vectorielle.

Plusieurs stratégies de découpage sont offertes dans LangChain, certaines plus complexes que d'autres. Dans cet exercice, vous allez mettre en œuvre un character text splitter, qui segmente les documents en fonction des caractères et mesure la longueur des segments par le nombre de caractères.

Rappelez-vous qu'il n'existe pas de stratégie de découpage idéale ; vous devrez peut-être en essayer quelques-unes pour trouver celle qui convient à votre cas d'usage.

Cette activité fait partie du cours

Développer des applications LLM avec LangChain

Voir le cours

Instructions de l’exercice

  • Importez la classe CharacterTextSplitter depuis langchain_text_splitters.
  • Créez une instance de CharacterTextSplitter avec separator="\n", chunk_size=24 et chunk_overlap=10.
  • Utilisez la méthode .split_text() pour découper quote, puis affichez les segments et leur longueur.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Import the character splitter
from langchain_text_splitters import ____

quote = 'Words are flowing out like endless rain into a paper cup,\nthey slither while they pass,\nthey slip away across the universe.'
chunk_size = 24
chunk_overlap = 10

# Create an instance of the splitter class
splitter = CharacterTextSplitter(
    separator=____,
    chunk_size=____,
    chunk_overlap=____)

# Split the string and print the chunks
docs = splitter.____(quote)
print(docs)
print([len(doc) for doc in docs])
Modifier et exécuter le code