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

Balises

chunk, openflow, text

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 0,183,365, indiquant que le premier morceau commence au décalage 0, le deuxième, au décalage 183 et le troisième, au décalage 365. Les décalages sont basés sur le nombre de caractères.

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 183,365,548, indiquant que le premier morceau se termine au décalage 183, le deuxième, au décalage 365 et le troisième, au décalage 548. Les décalages sont basés sur le nombre de caractères.

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.