> Discover all available pages from the documentation index: https://mastra.zisheng.pro/fr/llms.txt # createDocumentChunkerTool() La fonction `createDocumentChunkerTool()` crée un Tool qui divise les documents en fragments plus petits afin d'optimiser leur traitement et leur récupération. Elle prend en charge différentes stratégies de découpage ainsi que des paramètres configurables. ## Utilisation de base ```typescript import { createDocumentChunkerTool, MDocument } from '@mastra/rag' const document = new MDocument({ text: 'Your document content here...', metadata: { source: 'user-manual' }, }) const chunker = createDocumentChunkerTool({ doc: document, params: { strategy: 'recursive', size: 512, overlap: 50, separator: '\n', }, }) const { chunks } = await chunker.execute() ``` ## Paramètres **doc** (`MDocument`): Document à découper **params** (`ChunkParams`): Paramètres de configuration du découpage (Default: `Paramètres de découpage par défaut`) ### `ChunkParams` **strategy** (`'recursive'`): Stratégie de découpage à utiliser (Default: `'recursive'`) **size** (`number`): Taille cible de chaque fragment en tokens ou caractères (Default: `512`) **overlap** (`number`): Nombre de tokens ou de caractères qui se chevauchent entre les fragments (Default: `50`) **separator** (`string`): Caractère ou caractères à utiliser comme séparateur de fragments (Default: `'\n'`) ## Valeur de retour **chunks** (`DocumentChunk[]`): Tableau de fragments du document, avec leur contenu et leurs métadonnées ## Exemple avec des paramètres personnalisés ```typescript const technicalDoc = new MDocument({ text: longDocumentContent, metadata: { type: 'technical', version: '1.0', }, }) const chunker = createDocumentChunkerTool({ doc: technicalDoc, params: { strategy: 'recursive', size: 1024, // Larger chunks overlap: 100, // More overlap separator: '\n\n', // Split on double newlines }, }) const { chunks } = await chunker.execute() // Process the chunks chunks.forEach((chunk, index) => { console.log(`Chunk ${index + 1} length: ${chunk.content.length}`) }) ``` ## Détails du Tool Le chunker est créé sous forme de Tool Mastra avec les propriétés suivantes : - **ID du Tool** : `Document Chunker {strategy} {size}` - **Description** : `Chunks document using {strategy} strategy with size {size} and {overlap} overlap` - **Schéma d'entrée** : objet vide, aucune entrée supplémentaire requise - **Schéma de sortie** : objet contenant le tableau de fragments ## Ressources associées - [MDocument](https://mastra.zisheng.pro/fr/reference/rag/document) - [createVectorQueryTool](https://mastra.zisheng.pro/fr/reference/tools/vector-query-tool)