ChunkText 2025.5.31.15¶
Bundle¶
com.snowflake.openflow.runtime | runtime-chunking-nar
Description¶
Découpe le texte en morceaux avec des options de division récursive par délimiteurs et par nombre maximal de caractères. Chaque morceau reçoit les attributs suivants : fragment.identifier, fragment.index, fragment.count et segment.original.filename. Ces attributs peuvent ensuite être utilisés par le processeur MergeContent afin de reconstituer le FlowFile d’origine
Exigences en matière d’entrées¶
REQUIRED
Prend en charge les propriétés dynamiques sensibles¶
false
Propriétés¶
Propriété |
Description |
---|---|
Chunk Delimiters |
Spécifie une liste de séquences de caractères séparées par des virgules. Les métacaractères « n », « r » et « t » sont automatiquement déséchappés. Les délimiteurs sont appliqués de manière récursive afin de découper le texte en morceaux. |
Chunk Overlap |
Le nombre maximal de caractères à inclure dans les morceaux précédents et suivants. |
Chunking Strategy |
La stratégie de découpage du texte en morceaux. L’option « Recursive Delimiters » permet de découper le texte en morceaux selon l’algorithme de division récursive par caractère. Dans cet algorithme, le texte en entrée est divisé par le premier délimiteur puis fusionné en morceaux ne dépassant pas la valeur « Max Chunk Length ». Toute division dépassant la valeur « Max Chunk Length » est alors divisée de manière récursive à l’aide du délimiteur suivant. L’option « Max Chunk Length » permet de découper le texte en créant des morceaux d’une taille égale à la valeur « Max Chunk Length ». |
Langage |
Langage à utiliser pour l’analyse des phrases. |
Max Chunk Length |
Nombre maximal de caractères à inclure dans le morceau de sortie. Un paramètre trop élevé peut entraîner une erreur de mémoire insuffisante. |
Sentence Similarity Threshold |
Seuil permettant de déterminer si deux phrases sont suffisamment similaires pour occuper le même morceau. La valeur « 1.0 » indique que les phrases sont identiques. La valeur « 0.0 » indique que les phrases sont totalement dissemblables. |
Trim Whitespace |
Pour supprimer les espaces blancs autour du morceau de texte de sortie. |
Relations¶
Nom |
Description |
---|---|
original |
Le FlowFile d’entrée est routé vers la relation « original ». |
success |
Les morceaux de texte sont routés vers la relation « success ». |
Écrit les attributs¶
Nom |
Description |
---|---|
segment.original.filename |
Nom de fichier original du FlowFile d’entrée. |
fragment.identifier |
ID du FlowFile parent utilisé pour générer chaque morceau. |
fragment.index |
Index du morceau de FlowFile en cours, en commençant par 0. |
fragment.count |
Le nombre total de morceaux de FlowFile produits. |
chunk.start.offsets |
L’attribut chunk.start.offsets n’est ajouté qu’au FlowFile entrant d’origine. Il s’agit de la liste séparée par des virgules des décalages de départ correspondant à chaque morceau généré. Par exemple, pour un FlowFile divisé en 3 FlowFiles enfants, cet attribut pourrait prendre la valeur |
chunk.end.offsets |
L’attribut chunk.end.offsets est ajouté uniquement au FlowFile entrant d’origine. Il s’agit de la liste séparée par des virgules des décalages de fin correspondant à chaque morceau généré. Par exemple, pour un FlowFile divisé en 3 FlowFiles enfants, cet attribut pourrait prendre la valeur |
chunk.strategy |
Stratégie utilisée pour découper le texte en morceaux. Valeurs possibles : « Max Chunk Length », « Recursive Delimiters », « Sentence » ou « Semantic ». |
chunk.semantic.threshold |
Seuil permettant de déterminer si deux phrases sont suffisamment similaires pour occuper le même morceau. Cet attribut n’est ajouté que lorsque la stratégie de découpage en morceaux « Semantic » est utilisée. |
chunk.language |
Le langage utilisé pour l’analyse des phrases. Cet attribut n’est ajouté que lorsque la stratégie de découpage en morceaux « Sentence » ou « Semantic » est utilisée. |
chunk.delimiters |
Liste, séparée par des virgules, des délimiteurs utilisés pour découper le texte en morceaux. Cet attribut n’est ajouté que lorsque la stratégie de découpage en morceaux « Recursive Delimiters » est utilisée. |
chunk.max.chars |
Nombre maximal de caractères à inclure dans chaque morceau. |