ETL 管道
ETL(Extract(提取), Transform(转换) and Load(加载)) 是检索增强生成 RAG(Retrieval-Augmented Generation)数据处理的核心。
ETL 管道三大核心组成部分
DocumentReader
DocumentTransformer
DocumentWriter
ETL 接口
ETL 管道以下接口和实现组成。
DocumentReader
将一个文档内容读取转为一个 List<Document>
。
java
public interface DocumentReader extends Supplier<List<Document>> {
default List<Document> read() {
return get();
}
}
目前Spring AI支持以下文档读取:
文档类型 | 实现 | 说明 |
---|---|---|
JSON | JsonReader |
DocumentTransformer
java
public interface DocumentTransformer extends Function<List<Document>, List<Document>> {
default List<Document> transform(List<Document> transform) {
return apply(transform);
}
}
DocumentWriter
java
public interface DocumentWriter extends Consumer<List<Document>> {
default void write(List<Document> documents) {
accept(documents);
}
}