L'interface TextSplitterInterface définit comment découper de longs documents en segments plus petits (chunks) avant de les transformer en vecteurs. C'est une étape cruciale pour le RAG (Retrieval-Augmented Generation).
| Méthode | Entrée | Sortie | Rôle |
|---|---|---|---|
splitText(string $text, int $chunkSize, int $chunkOverlap) |
Texte source + réglages | string[] |
Découpe le texte en un tableau de segments. |
Synapse Core propose deux implémentations natives :
Tente de découper le texte intelligemment en utilisant une liste de séparateurs par ordre de priorité :
Cela garantit que les paragraphes restent soudés autant que possible, préservant la cohérence sémantique.
Découpe brutalement tous les X caractères. Plus rapide mais peut couper au milieu d'un mot ou d'une phrase importante.
Le splitter est piloté par le ChunkingService qui récupère les réglages (taille, overlap) depuis la configuration globale de Synapse.
// Exemple d'utilisation manuelle
$chunks = $splitter->splitText($grosFichier, 1000, 200);
How can I help you explore Laravel packages today?