LlamaIndex中的转换:数据处理的魔法
在LlamaIndex的世界里,转换(Transformations)就像是一位魔法师,能够将一堆原始数据变成有用的信息。这些转换接受一列节点作为输入,然后返回一列节点。每个实现了Transformation基类的组件都有同步的__call__()定义和异步的acall()定义。
当前的转换组件
目前,以下组件是转换对象:
- TextSplitter:将文本分割成小块。
- NodeParser:解析节点。
- MetadataExtractor:提取元数据。
- Embeddingsmodel:嵌入模型(查看我们支持的嵌入模型列表)。
使用模式
虽然转换最好与摄取管道(IngestionPipeline)一起使用,但它们也可以直接使用。
from llama_index.core.node_parser import SentenceSplitter
from llama_index.core.extractors import TitleExtractor
node_parser = SentenceSplitter(chunk_size=512)
extractor = TitleExtractor()
# 直接使用转换
nodes = node_parser(documents)
# 或者异步使用转换
nodes = await extractor.