跳至主要内容

分块节点

概述

Chunk节点用于根据令牌计数将字符串拆分为字符串数组。

将字符串分块处理有助于避免触及LLMs的token数量限制。您可以将一个字符串分割成多个块,然后将每个块输入到单独的Chat节点中,最后将这些聊天节点的输出结果重新组合起来,从而有效回答关于超出LLM处理能力的文本字符串的问题。

Chunk节点还可以通过使用firstlast输出来将字符串截断到特定的标记数量,从开头或结尾开始。

如果指定了重叠百分比,那么分块之间将按照指定的百分比(相对于最大token数)进行重叠。例如,如果最大token数为100且重叠率为50%,那么分块之间将重叠50个token。这有助于避免分块间丢失上下文信息,但可能会导致总的分块数量增加。

Chunk Node Screenshot

输入项

标题数据类型描述默认值备注
InputstringThe string that should be chunked.(Required)None

示例1:将字符串分割成多个块

  1. 创建一个包含较长数据的文本节点,例如Lorem ipsum占位文本。
  2. 创建一个Chunk节点并将文本节点连接到输入。将最大令牌数设置为较小的值,例如100。
  3. 运行图形。注意块节点的输出如何将文本(视觉上显示为新行)分割成多个块。

错误处理

chunk节点没有显著的错误处理行为。如果输入不是字符串,那么它将被强制转换为字符串。

常见问题

另请参阅