ChunkText 2025.5.31.15

Pacote

com.snowflake.openflow.runtime | runtime-chunking-nar

Descrição

Divide o texto em partes com opções para divisão recursiva por delimitadores e comprimento máximo de caracteres. Cada parte recebe os seguintes atributos: fragment.identifier, fragment.index, fragment.count, segment.original.filename; esses atributos podem ser usados pelo processador MergeContent para reconstituir o FlowFile original

Tags

chunk, openflow, text

Requisito de entrada

REQUIRED

Oferece suporte a propriedades dinâmicas confidenciais

falso

Propriedades

Propriedade

Descrição

Delimitadores de partes

Especifica uma lista de sequências de caracteres separada por vírgulas. Os metacaracteres n, r e t têm seu escape removido automaticamente. Os delimitadores são aplicados de forma recursiva para dividir o texto em partes.

Sobreposição de partes

O número máximo de caracteres a serem incluídos nas partes anteriores e subsequentes.

Estratégia de fragmentação

Estratégia para dividir o texto em partes. “Recursive Delimiters” dividirá o texto em partes de acordo com o algoritmo de divisão recursiva por caractere. Nesse algoritmo, o texto de entrada é dividido pelo primeiro delimitador e mesclado novamente em partes que não excedam o “comprimento máximo de parte”. Todas as divisões que excederem o “comprimento máximo de parte” serão divididas recursivamente usando o próximo delimitador. O “Comprimento máximo de parte” fragmentará o texto criando partes com o tamanho de “Comprimento máximo de parte”.

Linguagem

Idioma a ser usado para analisar sentenças.

Comprimento máximo de parte

Número máximo de caracteres a serem incluídos na parte de saída. Definir esse número muito alto pode resultar em um erro de falta de memória.

Limite de similaridade de sentenças

Limite para determinar se duas frases são semelhantes o suficiente para ocupar a mesma parte. O valor 1,0 indica que as sentenças são idênticas. O valor 0,0 indica que as frases são completamente diferentes.

Remoção de espaço em branco

Remove os espaços em branco ao redor do bloco de texto de saída.

Relações

Nome

Descrição

original

O FlowFile de entrada é encaminhado para a relação original.

success

Os blocos de texto são encaminhados para a relação de sucesso.

Grava atributos

Nome

Descrição

segment.original.filename

Nome de arquivo original do FlowFile de entrada.

fragment.identifier

ID do FlowFile pai usado para gerar cada parte.

fragment.index

Índice da parte do FlowFile atual, começando em 0.

fragment.count

A contagem total de partes do FlowFile produzidas.

chunk.start.offsets

O atributo chunk.start.offsets é adicionado somente ao FlowFile de entrada original. É uma lista separada por vírgulas de deslocamentos iniciais para cada parte gerada. Por exemplo, se o FlowFile for dividido em 3 FlowFiles filho, poderá haver um valor de 0,183,365 indicando que a primeira parte começa no deslocamento 0, a segunda parte começa no deslocamento 183 e a terceira parte começa no deslocamento 365. Os deslocamentos são baseados no número de caracteres.

chunk.end.offsets

O atributo chunk.end.offsets é adicionado somente ao FlowFile de entrada original. É uma lista separada por vírgulas de deslocamentos finais para cada parte gerada. Por exemplo, se o FlowFile for dividido em 3 FlowFiles filho, poderá haver o valor 183,365,548 indicando que a primeira parte termina no deslocamento 183, a segunda parte termina no deslocamento 365 e a terceira parte termina no deslocamento 548. Os deslocamentos são baseados no número de caracteres.

chunk.strategy

Estratégia usada para dividir o texto em partes. Uma das opções “Max Chunk Length”, “Recursive Delimiters”, “Sentence”, “Semantic”.

chunk.semantic.threshold

Limite para determinar se duas frases são semelhantes o suficiente para ocupar a mesma parte. Esse atributo é adicionado somente quando a estratégia de fragmentação “Semântica” é usada.

chunk.language

Linguagem usada para análise de sentenças. Esse atributo é adicionado somente quando a estratégia de fragmentação “Sentença” ou “Semântica” é usada.

chunk.delimiters

Lista separada por vírgulas de delimitadores usados para dividir o texto. Esse atributo é adicionado somente quando a estratégia de fragmentação “Recursive Delimiters” é usada.

chunk.max.chars

Número máximo de caracteres a serem incluídos em cada bloco.